Skip to content

Release 1.21.0

Choose a tag to compare

@reid-spencer reid-spencer released this 10 Apr 01:06
· 12 commits to main since this release

What's New

Features

  • Microservice option — Added a new option microservice that can be applied to Context, Entity, Projector, Repository, and Saga definitions. This option marks a definition as being deployed as a microservice, enabling tooling and generators to make architecture-aware decisions.

  • Reply statement scoping — The reply statement is now restricted to handlers within Context, Entity, or Repository definitions only. Previously it could appear in any handler, but replies are only meaningful in definitions that can receive and respond to messages. Models using reply in other scopes (e.g., Projectors, Adaptors) will now receive a parse error.

Bug Fixes

  • Release notification blog encoding — Fixed the notify-blog GitHub workflow to properly JSON-encode the release body when posting notifications, preventing malformed requests when release notes contain special characters.
  • Release notification blog API — Fixed the notify-blog workflow to fetch the release body from the GitHub API rather than relying on the event payload, which could be empty for auto-generated releases.

Internal

  • Scala 3.8.3 upgrade — Upgraded from Scala 3.7.4 to 3.8.3 via sbt-ossuminc 1.4.0. Fixed minor syntax issues flagged by the new compiler and unified MiMa binary compatibility check versions.
  • Entity Id type test — Added test coverage for entity Id type resolution when the type is defined in an included context file.
  • CLAUDE.md — Added BAST FORMAT_REVISION increment rule to project documentation.