# 4.0.0 (2022-??-??)

## :boom: Breaking Changes
## :seedling: Enhancements
## :skull: Bugfixes
## :wrench: Other

* fdc2adf - Dependency and roadmap housecleaning (2022-02-27)
* e13927d - Make reference dumping easier during testing (2022-02-27)
* b928cbd - Implement a simple autobind (2022-02-27)
* d23bd71 - Support orient/rotate towards other points (2022-02-27)
* 6dc6b5d - Anchor recursivization (2022-02-27)
* b8c71be - Improve readme (2022-01-24)
* cff15dd - Add missing bbox test (2022-01-23)
* d512983 - More flexible semver handling (2022-01-23)
* e0f5c91 - Fix rollup build warning (2022-01-23)
* 06d2ae4 - Switch to handrolled semver implementation (2022-01-23)
* 2b98b50 - Support string templating for key-level attributes (2022-01-22)
* 6225013 - Indicate dev version in package.json (2022-01-20)
* 7f5e5e7 - Roadmap update (2022-01-18)
* 28d076e - Remove accidentally added folder (2022-01-16)
* d6f8323 - Outlines rewrite actually done (2022-01-16)
* 4844a04 - Outlines rewrite theoretically done (2022-01-11)
* df7b76c - Outlines rewrite, part 2 (2022-01-10)
* 6504b2b - Outlines rewrite in progress (2022-01-09)
* bd6b5a0 - Add filter tests (2022-01-08)
* a7f333c - Filter implementation progress (2022-01-03)
* 534ac4b - Filter implementation started (2021-12-26)
* e48631f - Add key-level orient (2021-12-25)
* f2bd0d2 - Roadmap update (2021-12-18)
* 2c18902 - Simplify the names in individual point "zones" (2021-12-18)
* 9ee099b - Minor test adjustments (2021-12-18)
* 0ed29e7 - Place rectangles by their centers (2021-12-18)
* 73045e4 - Move column-level attributes to key-level (2021-12-18)







# 3.1.2 (2022-01-20)

* 86c00eb - (tag: v3.1.2, origin/master, backup/master, master) Bump patch version (2022-01-20)
* 3570be2 - Delete old docs (2022-01-20)
* f326594 - De-dupe readme, point usage to docs (2022-01-20)



# 3.1.1 (2022-01-14)

* 47d15c0 - (tag: v3.1.1) Hotfix parameterization (2022-01-14)


# 3.1.0 (2021-12-15)

* 488fba0 - (tag: v3.1.0) 3.1.0 (2021-12-15)
* f16ccd4 - Refresh roadmap (2021-12-15)
* 21cfc1f - Allow glue opt-out, even when bound (2021-12-15)
* c46a0bc - Add U for 19.05 spacing, closes #48 (2021-12-15)
* 3745cf3 - Parameterize PCB component reference hiding (2021-12-15)
* 13052cd - PCB metadata propagation (2021-12-15)
* 90db02f - Roadmap update (2021-12-15)
* 3e0dc84 - Support semver checks (2021-12-15)


# 3.0.3 (2021-12-13)

* d5ebd70 - (tag: v3.0.3) 3.0.3 (2021-12-13)
* e45e563 - Further dependency restructure (2021-12-13)



# 3.0.2 (2021-12-13)

* 96c7caa - (tag: v3.0.2) 3.0.2 (2021-12-13)
* 16c9243 - Move custom dependencies to ergogen org + fix metadata (2021-12-13)
* 5046667 - Suppress npm warnings (2021-12-13)
* e2535da - Update dependencies (2021-12-13)
* d193af6 - Add fresh TODO items, change to gitflow (2021-12-12)

# 3.0.1 (2021-12-12)

* 9a1f9ec - (tag: v3.0.1) 3.0.1 (2021-12-12)
* 16f6b81 - Fillet all outline chains, closes #34 (2021-12-12)
* 8490f14 - Add const in scrollwheel footprint (2021-08-16) <Michael van Eerd>
* 21e173e - Make spread: 0 possible (2021-08-13) <Michael van Eerd>
* 38a8fc5 - Anchor affect bugfix, partially fixes #33 (2021-12-12)
* 483f214 - Array unnest bugfix, fixes #50 (2021-12-12)
* e58b80c - Redirect readme links to new domain (2021-11-27)
* e29613d - Dump accumulated TODOs (2021-11-27)
* 0ec16db - Minor fix for mirrored anchor rotations (2021-11-27)
* a593f61 - Fixed rotary encoder footprint (2021-11-07) <Albert Engelbrecht>
* 68102e8 - Fix ReferenceError: *_unit is not defined (2021-09-03) <Michael van Eerd>
* bf2dee6 - docs(readme): fix typo in web ui url link (2021-08-08) <Michael van Eerd>
* ad5ac9c - Visualization fix (2021-07-25)

# 3.0.0 (2021-07-21)

* 0658057 - (tag: v3.0.0) 3.0.0 (2021-07-21)
* fa850a6 - YAML-ification and minor output restructure (2021-07-21)
* 282e117 - Web release prep (2021-07-21)
* 67e01ed - Base key-level defaults around `u` (2021-07-18)
* 9bdcd36 - Some outline testing (2021-07-18)
* 26128f8 - Support full anchors in outline shapes (2021-07-18)
* 677fae0 - Add roadmap (2021-07-18)
* b159cfa - Further testing (2021-07-18)
* 4105718 - Complete CLI testing (2021-07-17)
* 4d88dac - End-to-end CLI tests (2021-07-17)
* 1f3ecb5 - Improved interface testing (2021-07-16)
* 7d841b2 - Dependency updates (2021-07-16)
* 98d7f66 - Make old jscad stuff audit friendly (2021-07-16)
* 58cadde - Minor case fix + test (2021-07-16)
* f955aac - Support KLE to PCB metadata and nets (2021-07-16)
* cd0ae6d - Smarter dump test switch (2021-07-16)
* b43b719 - Auto-debug when output would be empty (2021-07-16)
* bc75781 - Adjust tests for async interface (2021-07-15)
* 1cb9fdc - Basic KLE support (2021-07-15)
* d09b3fd - Smarter dump switch for the test runner, reference adjustments (2021-07-14)
* 42a3e2d - CLI and output restructure, SVG/DXF/STL integration (2021-07-14)
* c49881c - Remove leftover debug statements (2021-07-11)
* c12e8d2 - Update footprints to match new structure (2021-07-11)
* fe30b91 - PCB net and parameter overhaul (2021-07-11)
* 452d7c1 - Units separated to their own block, and properly tested (2021-07-11)
* 71efdbe - Test switch overhaul (2021-07-11)
* ea12df2 - Fix typo (2021-07-11)
* 2425b06 - Package audit (2021-07-06)
* 2f6b9ab - Added new footprints for OLEDs, jumpers, and Omron B3F-4055 switches (2021-07-06) <tapioki>
* a431bc4 - Added documentation for switch footprints (2021-07-06) <tapioki>
* ee43a93 - Added keycaps option to display mx or choc keycaps on Dwgs.User, and fixed mx footprint (2021-06-12) <tapioki>
* 1ff7e07 - Added new switch footprints, updated reversibility functionality, integrated hotswap footprints, added orientation to promicro, alphabetized index, and added net and paramter documentation (2021-05-23) <tapioki>
* 3e78e6e - Add files via upload (2021-04-26) <tapioki>
* 5a8a66b - Add files via upload (2021-04-26) <tapioki>
* 9baae15 - Add unit test for assertions (2021-05-22)
* c7b86c7 - Add unit test for anchors (2021-05-22)
* 76bb071 - Add footprints to coverage, streamline coverage script call (2021-05-22)
* 7f8b1c4 - Add basic interface tests (2021-05-16)
* 5cd8985 - Add unit test for operation parsing (2021-05-16)
* 2cae521 - Add unit test for utils (2021-05-16)
* 2d6ad02 - Add unit test for point class (2021-05-16)
* 806a7ec - Package audit (2021-05-16)
* de0f61b - Filleting, bevel fix, poly mirroring (2021-04-18)
* 18a76e5 - Added p.rot param to pads (#20) (2021-04-18) <adt>
* 5754824 - fixed net ref to pad (2021-03-22) <adt>
* c0eea2a - Fix makerjs dep and audit (2021-04-01)





# 2.0.0 (2021-03-15)

## :boom: Breaking Changes

- Change indirection and preprocessing symbols
- Rename `reset` footprint to `button`

## :seedling: Enhancements

- Added support for variables and/or units
    - String typed math formulas can now be used anywhere numbers are expected
    - For example, `spread: 19` is the same as `spread: u`
- Added support for nested (a.k.a. deep) key notations
    - So `zones: {columns: {key: {flag: true}}}` can now be simplified to `zones.columns.key.flag: true`
- Added support for parametric declarations
    - ...
- Added MX and choc hotswap footprints
- Added rotary encoder footprint - [**@adt**](https://github.com/adt)

## :skull: Bugfixes

- Various footprint fixes - [**@adt**](https://github.com/adt)
- Documentation typos, fixes, examples - [**@Albert-IV**](https://github.com/Albert-IV) , [**@FanchGadjo**](https://github.com/FanchGadjo)

## :wrench: Other

- Lots and lots of structural refactoring, housecleaning, etc.
- Testing infrastructure improvements
- Better glue-related error messages
- Propagate point visualization to the webui
- Output SVG alongside DXF in debug mode - [**@brow**](https://github.com/brow)
- Added part no. and updated URL for `reset` footprint - [**@brow**](https://github.com/brow)







# 1.0.0 (2020-10-18)

## :sunglasses: Initial release!

- Ergogen declares its independence from the [Absolem](https://github.com/mrzealot/absolem) project
- Thanks to [**Merlin04**](https://github.com/Merlin04) for an initial JSON schema