Repository navigation
etchy v0.1.0
What's Changed
- docs: record the history rewrite + drop a banned word by @Cimos in #286
- deps: clear three RUSTSEC advisories blocking the deny job by @Cimos in #288
- site: describe the tool that shipped, and make every example run by @Cimos in #289
- deps: bump webbrowser to 1.2.4 for RUSTSEC-2026-0257 by @Cimos in #351
- deploy: block private files by resolved path and refuse directory listings by @Cimos in #356
- cli: reject a --gate-layers spec that is only separators by @Cimos in #353
- pdf: cap the total raster budget across both documents before rendering by @Cimos in #364
- cli: make the deprecated --json flag conflict with --format by @Cimos in #372
- action: find the sticky comment by marker instead of --edit-last by @Cimos in #373
- action: fail closed on any etchy exit code other than 0 or 1 by @Cimos in #352
- ci: gate the Pages deploy on a PAGES_ENABLED repository variable by @Cimos in #355
- report: emit Markdown warnings as inert code spans by @Cimos in #363
- cli: exit with the real verdict on a broken stdout pipe by @Cimos in #370
- gui: restore the previous source when a re-diff fails by @Cimos in #379
- core: fail loud on an unterminated Gerber command before '%' or at EOF by @Cimos in #381
- core: fail loud on incremental coordinate notation (%FS…I) by @Cimos in #354
- core: cap, range-check and unwind-guard the Excellon front-end by @Cimos in #359
- deploy: make setup.ps1 parse on Windows PowerShell 5.1 by @Cimos in #360
- core: honour the declared placement unit (mil / inch) instead of assuming mm by @Cimos in #362
- gui: point Help -> website at the project Pages URL by @Cimos in #365
- site: describe kind-based layer pairing instead of same-filename pairing by @Cimos in #367
- core: fail loud on a polygon aperture with a hole by @Cimos in #368
- gui: cap aggregate decompressed bytes and entry count for multi-file input by @Cimos in #371
- deploy: stop telling contributors to commit the feedback log by @Cimos in #374
- gui: count focus-hidden layers correctly when the selected layer's eye is off by @Cimos in #376
- gui: draw every layer's base before any layer's diff in Overlay by @Cimos in #357
- docs: replace personal names with roles across the tracked tree by @Cimos in #358
- ci: run cargo-deny weekly on a schedule by @Cimos in #361
- core: seed a region contour from the current point; refuse nested G36 and stray G37 by @Cimos in #377
- core: pair leftover same-kind layers by best overlap, not encounter order by @Cimos in #378
- gui: load two dropped fab packs as old and new; refuse ambiguous drops by @Cimos in #380
- test: assert on the real page-1 row shape in the PDF CLI test by @Cimos in #383
- docs: retire the billing-blocked and no-release-binary story by @Cimos in #375
- cli: reject a non-finite or negative --fail-on-area threshold by @Cimos in #369
- deploy: bind the demo server to loopback by default and honour ETCHY_BIND by @Cimos in #366
- cli, gui: fail loud when a directory entry cannot be read by @Cimos in #384
- core: fail loud on an arc drawn before any G74/G75 declaration by @Cimos in #382
- gui: restore per-board visibility and colour overrides only for the same board by @Cimos in #385
- Fix CSV export and zoom overflow by @Cimos in #291
- core: macro exposure-off cuts the aperture image; honour %TF.FilePolarity,Negative by @Cimos in #386
- Prepare repo for public release by @Cimos in #387
Full Changelog: v0.1.0-rc1...v0.1.0