Skip to content

Release v16.3.1

Choose a tag to compare

@github-actions github-actions released this 19 Jul 14:09
232b09d

Summary

The Projection Declaration Language is now part of the Cratis Screenplay language, and Screenplay owns its grammar, parsing and syntax tree. Chronicle consumes the published Cratis.Screenplay package and supplies a visitor that turns projection syntax into its existing ProjectionDefinition object graph - the runtime projection engine is unchanged, only how the object graph is produced.

Changed

  • The projection declaration compiler now uses the Cratis Screenplay compiler for parsing; ILanguageService.Compile, code generation and PDL round tripping behave as before
  • $causedBy identity property references are camelCase (subject, name, userName), consistent with the well known expressions
  • Namespace qualified projection names round trip through compile and generate
  • The projection language reference moved to the Screenplay documentation; Chronicle's pages and the Workbench help panel link there

Removed

  • The internal PDL tokenizer, parser and AST - replaced by the Cratis.Screenplay syntax tree and visitor contracts