|
| 1 | +#### Features 🚀 |
| 2 | + |
| 3 | +- Icons: |
| 4 | + - connections can include icons [#12](https://github.com/terrastruct/d2/issues/12) |
| 5 | +- Syntax: |
| 6 | + - `suspend`/`unsuspend` to define models and instantiate them [#2394](https://github.com/terrastruct/d2/pull/2394) |
| 7 | +- Globs: |
| 8 | + - support for filtering edges based on properties of endpoint nodes (e.g., `&src.style.fill: blue`) [#2395](https://github.com/terrastruct/d2/pull/2395) |
| 9 | + - `level` filter implemented [#2473](https://github.com/terrastruct/d2/pull/2473) |
| 10 | +- Render: |
| 11 | + - markdown, latex, and code can be used as object labels [#2204](https://github.com/terrastruct/d2/pull/2204) |
| 12 | + - `shape: c4-person` to render a person shape like what the C4 model prescribes [#2397](https://github.com/terrastruct/d2/pull/2397) |
| 13 | +- Icons: |
| 14 | + - border-radius should work on icon [#2409](https://github.com/terrastruct/d2/issues/2409) |
| 15 | +- Misc: |
| 16 | + - Diagram legends are implemented [#2416](https://github.com/terrastruct/d2/pull/2416) |
| 17 | + |
| 18 | +#### Improvements 🧹 |
| 19 | + |
| 20 | +- CLI: |
| 21 | + - Support `validate` command. [#2415](https://github.com/terrastruct/d2/pull/2415) |
| 22 | + - Watch mode ignores backup files (e.g. files created by certain editors like Helix). [#2131](https://github.com/terrastruct/d2/issues/2131) |
| 23 | + - Support for `--omit-version` flag. [#2377](https://github.com/terrastruct/d2/issues/2377) |
| 24 | + - Casing is ignored for plugin names [#2486](https://github.com/terrastruct/d2/pull/2486) |
| 25 | +- Compiler: |
| 26 | + - `link`s can be set to root path, e.g. `/xyz`. [#2357](https://github.com/terrastruct/d2/issues/2357) |
| 27 | + - When importing a file, attempt resolving substitutions at the imported file scope first [#2482](https://github.com/terrastruct/d2/pull/2482) |
| 28 | + - validate gradient color stops. [#2492](https://github.com/terrastruct/d2/pull/2492) |
| 29 | +- Parser: |
| 30 | + - impose max key length. It's almost certainly a mistake if an ID gets too long, e.g. missing quotes [#2465](https://github.com/terrastruct/d2/pull/2465) |
| 31 | +- Render: |
| 32 | + - horizontal padding added for connection labels [#2461](https://github.com/terrastruct/d2/pull/2461) |
| 33 | + |
| 34 | +#### Bugfixes ⛑️ |
| 35 | + |
| 36 | +- Compiler: |
| 37 | + - fixes panic when `sql_shape` shape value had mixed casing [#2349](https://github.com/terrastruct/d2/pull/2349) |
| 38 | + - fixes panic when importing from a file with spread substitutions in `vars` [#2427](https://github.com/terrastruct/d2/pull/2427) |
| 39 | + - fixes support for `center` in `d2-config` [#2360](https://github.com/terrastruct/d2/pull/2360) |
| 40 | + - fixes panic when comment lines appear in arrays [#2378](https://github.com/terrastruct/d2/pull/2378) |
| 41 | + - fixes inconsistencies when objects were double quoted [#2390](https://github.com/terrastruct/d2/pull/2390) |
| 42 | + - fixes globs not applying to spread substitutions [#2426](https://github.com/terrastruct/d2/issues/2426) |
| 43 | + - fixes panic when classes were mixed with layers incorrectly [#2448](https://github.com/terrastruct/d2/pull/2448) |
| 44 | + - fixes panic when gradient colors are used in sketch mode [#2481](https://github.com/terrastruct/d2/pull/2487) |
| 45 | + - fixes panic using glob ampersand filters with composite values [#2489](https://github.com/terrastruct/d2/pull/2489) |
| 46 | + - fixes leaf ampersand filter when used with imports [#2494](https://github.com/terrastruct/d2/pull/2494) |
| 47 | +- Formatter: |
| 48 | + - fixes substitutions in quotes surrounded by text [#2462](https://github.com/terrastruct/d2/pull/2462) |
| 49 | +- CLI: |
| 50 | + - fetch and render remote images of mimetype octet-stream correctly [#2370](https://github.com/terrastruct/d2/pull/2370) |
| 51 | +- Composition: |
| 52 | + - spread importing scenarios/steps was not inheriting correctly [#2460](https://github.com/terrastruct/d2/pull/2460) |
| 53 | + - imported fields were not merging with current fields/edges [#2464](https://github.com/terrastruct/d2/pull/2464) |
| 54 | +- Markdown: |
| 55 | + - fixes nested var substitutions not working [#2456](https://github.com/terrastruct/d2/pull/2456) |
| 56 | + |
| 57 | +--- |
| 58 | + |
| 59 | +For the latest d2.js changes, see separate [changelog](https://github.com/terrastruct/d2/blob/master/d2js/js/CHANGELOG.md). |
0 commit comments