What's Changed
- #708: the placement candidate snap is absolute, and should be a whole number of the board's own grid by @edgehero in #825
- #713: the wall clock stops deciding which placement wins, and an instrument that could not answer stops reading as a clean verdict by @edgehero in #827
- #830: an unreadable route summary is a non-verdict, not a crash by @edgehero in #832
- #826: the portfolio's basin-escape destroys the lattice before the quench sees it by @edgehero in #833
- #726: a footprint block stops being lost because another one shares its name, and one placement moves one block by @edgehero in #838
- #834/#835: a placement instrument stops charging copper it does not share by @edgehero in #843
- qfn underpad escape: test the pad->via stub against the copper nets_to_route erases -- vias, segments AND pads (#619, #845) by @edgehero in #844
- #829: a footprint that draws the board outline is not the placer's to move by @edgehero in #839
- #620/#618: manage_vias stops being blind to the vias it is placing right now by @edgehero in #852
- #841: one obstruction rectangle for both placement lane ledgers by @edgehero in #851
- #849: the lane ledger's whole-board geometry, resolved once per board by @edgehero in #853
- #847: the escape band was not what decided the starved-face gate by @edgehero in #855
- #530: KiCad-standard design rules -- sizes as asked, rules and classes honoured, escalation disclosed (v0.22.0) by @drandyhaas in #866
Full Changelog: v0.21.5...v0.22.0