Skip to content

Release v3.73.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 22:18
deafe5f

cratis run now uses Stage's semantic engine by default, and cratis render gives new applications the self-reducing read models Chronicle's documentation teaches.

Added

  • cratis render renders a new application's reducers as self-reducing read models: the read-model record holds its static Reduce methods, with no separate IReducerFor<T> class. A destination without a render ownership manifest is a new application; the choice is saved in the managed .cratis/stage/rendering.json and kept on every later render, including --scope, --workspace and --check. Existing applications keep separate reducer classes and unchanged output. An edited, missing or unreadable reducer configuration is refused (CLI-RENDER-021, CLI-RENDER-022, CLI-RENDER-023) and nothing is written; changing the convention of an existing application is not supported. See Reducer rendering convention. (#376)

Changed

  • cratis run runs models on Stage's semantic engine when --engine is omitted, for files and folders. To keep the previous behavior, run with --engine eventmodel; it stays available as an explicit fallback. See Runtime engines. (#324)

Removed

  • The one-time automatic restart from eventmodel to semantic in cratis run, and the engineFallback member of its JSON output. A refusal now stops the container and exits with 5 on the engine that was selected. (part of #324)