RIDDL 1.30.0 Released
RIDDL 1.30.0 is now available.
RIDDL 1.30.0 is now available. This release of the RIDDL compiler and language tooling includes the following changes:
What’s New
What’s New
Features
-
protocoloption is now recognized — Pin the transport for a bounded context withoption protocol("kafka"), consumed by riddl-generator’s AsyncAPI 3.0 generator. Takes one argument; valid on contexts and streamlets. -
event_catalog_versionoption is now recognized — Pin the version EventCatalog displays for a domain, context, or message type viaoption event_catalog_version("2.1.0"). EventCatalog versions every catalog entity while RIDDL has no native version concept, so this metadata bridges the gap. Takes one argument and is valid on any definition. -
sql_dialectandsql_tableoptions are now recognized — Drive SQL DDL generation from model metadata.option sql_dialect("mysql")selects the dialect per definition, resolved by walking up the parent chain, so different entities in one model can target different RDBMS flavors.option sql_table("orders")overrides the generated table name. Each takes one argument.
All four option names already parsed correctly, but were absent from RecognizedOptions.registry, so any model using them collected a spurious StyleWarning — “Option ‘sql_dialect’ in Entity ‘Order’ is not a recognized RIDDL option”. Those warnings are gone. Matching KnownOption constants were added and are exported to JavaScript through KnownOptions.
These are additive changes only: no public API was removed and no signature changed.
Internal
- Repository-wide code format rectification — 227 source files (123 main, 104 test) brought into conformance with
.scalafmt.conf. This is formatting-only: the configuration defines norewriterules, so scalafmt performed layout and line-breaking changes exclusively and preserved the AST. Bothsbt scalafmtCheckandsbt test:scalafmtChecknow report success, so genuine formatting regressions will be visible rather than buried in pre-existing drift.