What's Changed
- docs: document security limits and regression guarantees by @skylartaylor in #1963
- chore(deps): bump the cargo-dependencies group across 1 directory with 17 updates by @dependabot[bot] in #1957
- web: allow browser zoom in the viewport meta (SonarCloud Web:S7926) by @dylanmtaylor in #1974
- packaging: use [[ ]] tests, named locals and explicit returns in shell scripts (SonarCloud S7688/S7679/S7682) by @dylanmtaylor in #1972
- Build main again after the #1957 dependency bump by @marcoarnulfo in #1991
- CI: one test binary per crate, nextest, line tables only by @aiongg in #1989
- CI: shared gate workflow; FreeBSD nightly and on release by @aiongg in #1987
- Missing translations never fail a test; cargo xtask i18n lists them by @aiongg in #2013
- Xrefs and data links: resolve stored paths with craft-docpath's resolve_absolute by @aiongg in #1750
- ci(sonar): stop cancelling main-branch runs so coverage is published by @dylanmtaylor in #2018
- security: write the release from the release job only (SonarCloud) by @dylanmtaylor in #2021
- i18n(it): translate the 99 strings added in 0.7.0 and 0.8.0 by @bottelliemanuele-maker in #1617
- INSERT from a file brings the file's multiline styles by @viniau in #1639
- Docs: broken / malicious link in README.MD by @khorezm0 in #1640
- i18n(pt-BR): native-speaker terminology review by @ffishman in #1665
- Show surveyor's angles as degrees/minutes/seconds (#1643) by @MarekSpodBiedry in #1676
- Save a dimangular made from two lines as a 2-line angular dimension (#1652) by @MarekSpodBiedry in #1681
- Export to a browser download on the web instead of failing on a path (#1655) by @MarekSpodBiedry in #1682
- DXF/DWG: keep a file's own arrowhead blocks with standard names (_Dot, _DotSmall) by @ffishman in #1694
- i18n : Add new translations to zh.tsv by @mayloglog in #1695
- fix(snap): keep an arc's sweep for TAN and PER snaps by @william-wwh in #1698
- Reject doubled minus sign in parse_distance by @Silvertree2010 in #1707
- i18n(sv): translate 52 new strings, use the agreed terms in 19 by @kler in #1721
- Read SVG arc flags as single characters in path data by @Silvertree2010 in #1726
- Use AutoCAD value steps in the ACI index palette by @Silvertree2010 in #1732
- Fix cursor contrast over layout paper by @WillPastor in #1733
- Report DWGPREFIX, DWGTITLED, FILEDIA, CMDECHO and more from GETVAR (#1715) by @MarekSpodBiedry in #1742
- Make properties.set apply thickness and properties report it (#1722) by @MarekSpodBiedry in #1744
- Reject repeated leading '#' in Rgb::parse_hex by @Silvertree2010 in #1746
- Convert px/unitless SVG root size to mm when a viewBox is present by @Silvertree2010 in #1749
- Fall back to decimal for huge architectural/fractional distances by @Silvertree2010 in #1762
- AutoLISP: entmake defines blocks with BLOCK … ENDBLK (fixes #1662) by @SBaksa in #1765
- Interface Language dialog: list the languages alphabetically by their own name by @nikolainyegaard in #1787
- Apply a block reference's linetype scale to the objects inside the block by @philipp-tch in #1830
- Spline extents: evaluate on the stack and sample relative to the spline (#1076) by @mbolling in #1834
- Autosave: a new autosave folder is owner-only on Unix by @oracola91 in #1868
- web: report the open drawing in the viewport title by @nicholasgower in #1869
- OFFSET uses a single preselected object by @nicholasgower in #1870
- CLI: a --cmd can act on a handle an earlier --cmd returned ({last}) by @nicholasgower in #1871
- fix(canvas): keep the OS cursor visible over menus and panels by @nicholasgower in #1879
- Fix LISP getangle subtracting ANGBASE in degrees from radians by @Silvertree2010 in #1883
- RECTANG: add a Center Rectangle construction mode by @nicholasgower in #1895
- loops: implied closed loops from loose LINE and ARC chains by @nicholasgower in #1906
- File tabs: stop the close button from flickering by @onlykshitij in #1914
- Make LISP angtof honour its units argument by @Silvertree2010 in #1949
- List binary fractions in the Units precision drop-down for Architectural and Fractional (#1861) by @MarekSpodBiedry in #1952
- Let getkword return arbitrary input when initget bit 128 is set (#1945) by @MarekSpodBiedry in #1953
- Distinguish polyline midpoint grips from vertices (#1950) by @C00kieMonsta in #1958
- Bound combined constraint expression and parameter depth (#1936) by @C00kieMonsta in #1959
- fix(ui): toggle QuickCalc with Ctrl/Cmd+8 by @jonascloud in #2001
- hatch: list patternFile/patternText in the catalog and point to them from the unknown-pattern error (#2000) by @MarekSpodBiedry in #2007
- SETVAR CECOLOR takes the colour names and indexes the color command takes by @marcoarnulfo in #2014
- Dimensions: text that does not fit follows DIMTMOVE, over the dimension line (with a leader for 1) instead of past the second extension line by @marcoarnulfo in #2015
- Reject surveyor bearing angles outside 0-90 degrees by @Silvertree2010 in #2024
- Render: Match AutoCAD clearance for DIMTAD 1 text (#2004) by @SusieeTheLinuxUser in #2027
- HATCH treats rooms enclosed by multilines as islands by @viniau in #1642
- Fix angular dimensions ignoring DIMDSEP by @WillPastor in #1670
- Diameter dimensions: the *D block's text keeps the sign as %%c, so SHX styles plot it (fixes #1645) by @SBaksa in #1696
- Keep the active layout when saving DWG/DXF by @ffishman in #1735
- Close hatch boundaries where a line ends just short of a flattened ellipse (#1690) by @MarekSpodBiedry in #1738
- STRETCH moves only the multiline vertices inside the area (#1712) by @MarekSpodBiedry in #1739
- Write a layout's paper-space viewport (id 1) first, so DWG keeps the viewport ids by @philipp-tch in #1782
- MEASUREINIT: choose the units of new drawings, kept in the profile by @aussieboer61 in #1792
- DXF: proxy objects and entities keep their class through a save (#1812) by @tyrel in #1858
- DWG read: keep a polyline's vertex order when handles are not ascending by @nicholasgower in #1863
- DXF/DWG: angular, diametric and radial dimensions get DIMASSOC (#1651) by @nicholasgower in #1874
- MCP: the open tool description names DWG as well as DXF by @nicholasgower in #1887
- analysis: report found/analysed/skipped counts, caps and implausibility by @nicholasgower in #1890
- appload: load a .lsp file from a path or the file picker by @nicholasgower in #1903
- DWG: write AutoCAD's drawing variable dictionary (AC1018 output) by @nicholasgower in #1872
- Reject a leading '+' in ACI indices and RGB triples in Color::parse by @Silvertree2010 in #1878
- Reject bare or signed second token in mixed distances by @Silvertree2010 in #2011
- usage: a read-only cross-reference of layers, blocks, styles and linetypes by @nicholasgower in #1889
- chore: resolve SonarCloud maintainability issues by @dylanmtaylor in #2025
- refactor: replace wildcard imports in two test modules (S2208) by @dylanmtaylor in #2036
- PDF: plot with craft-pdf's krilla writer by @aiongg in #2029
- Keep rectangle opposite corners free of ortho (STRETCH window and friends) by @silaghis in #1556
- Panels: use craft-ui's shared docking by @aiongg in #2093
- Merge 11 open PRs (tested batch) by @aiongg in #2112
- CUTBASE: cut objects to the clipboard with a base point by @dotCooCoo in #2054
- THICKNESS: Format > Thickness, and new 2D objects take the current thickness by @dotCooCoo in #2056
- BLOCKREPLACE: Tools > Express Tools > Replace Block replaces every reference of one block with another by @dotCooCoo in #2065
- ATTDISP: View > Attribute Display > Normal, On and Off, and 'ATTDISP inside another command by @dotCooCoo in #2071
- MEASUREGEOM: a Volume option, and Tools > Inquiry > Volume by @dotCooCoo in #2079
- MEASUREGEOM: add an Angle option, and Tools > Inquiry > Angle asks for the objects by @dotCooCoo in #2085
- MEASUREGEOM: Tools > Inquiry > Radius asks for the object, and Radius measures polyline arcs by @dotCooCoo in #2089
- DIMTFILL: dimension text gets a background in the drawing's background color or in DIMTFILLCLR by @dotCooCoo in #2101
- SETVAR refuses DIM* values the dimension style refuses by @dotCooCoo in #2105
- Refuse negative values for whole-number DIM* variables by @dotCooCoo in #2106
- Batch follow-ups: #2049's later commits, CUT on locked layers, BLOCKREPLACE, THICKNESS and Volume prompts by @aiongg in #2115
- COMPAREEXPORT: export a drawing comparison to a new drawing by @dotCooCoo in #2049
New Contributors
- @dependabot[bot] made their first contribution in #1957
- @aiongg made their first contribution in #1989
- @viniau made their first contribution in #1639
- @khorezm0 made their first contribution in #1640
- @ffishman made their first contribution in #1665
- @WillPastor made their first contribution in #1733
- @nikolainyegaard made their first contribution in #1787
- @mbolling made their first contribution in #1834
- @nicholasgower made their first contribution in #1869
- @onlykshitij made their first contribution in #1914
- @jonascloud made their first contribution in #2001
- @SusieeTheLinuxUser made their first contribution in #2027
- @aussieboer61 made their first contribution in #1792
- @tyrel made their first contribution in #1858
- @silaghis made their first contribution in #1556
- @dotCooCoo made their first contribution in #2054
Full Changelog: v0.12.0...v0.13.0