Orrery v0.4.1

  • 2 min read
  • Tags: 
  • release

Orrery v0.4.1 moves arrow routing into layout engines, fixes several rendering bugs, and simplifies internal APIs.

What changed

Changed

  • Arrow routing moved from SVG export into layout engines — Engines now compute path geometry and produce control points; the core draw layer only renders them. A new SmartArrowPlacer routes each relation by its style. (#137)
  • Simplified qualified import paths across workspace — Replaced verbose module::Type qualified paths with direct imports, reordered module declarations before use statements per style conventions. (#129)
  • Simplified calculate_message_endpoint_x signature — Removed the redundant participant_id parameter; the function now derives it internally from the participant component. (#130)
  • Sequence message endpoints use activation snapshots — Messages capture each side's active ActivationTiming at event time and compute endpoint X from the snapshot, replacing the Y-range scan over activation boxes. (#132)

Fixed

  • Text label background no longer double-padded — The configured padding was applied twice, leaving the background visibly larger than the text it wraps. (#133)
  • Narrow shape labels now correctly identified as having no inner content — Previously they were treated as embedded content, pushing the text to the top of the shape instead of its center. (#134)
  • Font sizes now rendered in points — Glyphs were drawn about 25% smaller than the configured size, leaving label backgrounds visibly larger than the rendered text. Default sizes were lowered to preserve the previous visual sizing. (#135)

Update

cargo install orrery-cli