d2/ci/release/changelogs/next.md
Alexander Wang cd9b0272d5
save
2023-02-12 17:03:56 -08:00

3.6 KiB

Diagrams are now much more legible.

Here's what a D2 diagram looks like in 0.2 vs 0.1:

Features 🚀

  • double-border keyword implemented. #565
  • The Dockerfile now supports rendering PNGs #594
    • There was a minor breaking change as part of this where the default working directory of the Dockerfile is now /home/debian/src instead of /root/src to allow UID remapping with fixuid.
  • d2 fmt accepts multiple files to be formatted #718
  • font-size works for sql_table and class shapes #769
  • You can now use the reserved keywords layers/scenarios/steps to define diagrams with multiple levels of abstractions. #714 Docs to come soon
    • Many other minor compiler bugs were fixed.

Improvements 🧹

  • Code snippets use bold and italic font styles as determined by highlighter #710, #741
  • Reduces default padding of shapes. #702
  • Ensures labels fit inside shapes with shape-specific inner bounding boxes. #702
  • dagre container labels changed positions to outside the shape. Many previously obscured container labels are now legible. #788
  • Improves package shape dimensions with short height. #702
  • Sequence diagrams are rendered more compacted, both vertically and horizontally. #796
  • Keeps person shape from becoming too distorted. #702
  • Ensures shapes with icons have enough padding for their labels. #702
  • --force-appendix flag adds an appendix to SVG outputs with tooltips or links. #761
  • d2 themes subcommand to list themes. #760
  • sql_table header left-aligned with column #769
  • Sequence diagram edge group labels are clearer #782

Bugfixes ⛑️

  • Fixes groups overlapping in sequence diagrams when they end in a self loop. #728
  • Fixes dimensions of unlabeled squares or circles with only a set width or height. #702
  • Fixes scaling of actor shapes in sequence diagrams. #702
  • Sequence diagram note ordering was sometimes wrong. #796
  • Images can now be set to sizes smaller than 128x128. #702
  • Tooltips with ampersand would result in invalid SVGs. #798
  • Fixes class height when there are no rows. #756
  • Border radius was not firefox-compatible. #799

Breaking changes

  • You can no longer use keywords intended for use under style outside and vice versa. e.g. obj.style.shape and obj.double-border are now illegal. The correct usages have always been obj.shape and obj.style.double-border; it just wasn't enforced until now.