Skip to content

Release v19.42.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 07:54
8c0b6de

Added

  • ReadModelScenario and ReactorScenario honour artifacts registered through ChronicleOptions.ExplicitArtifacts. Pass the options to the new Defaults(clientArtifactsProvider, serviceProvider, options) constructor, and specify a reactor registered with RegisterReactor through the new ReactorScenario(reactorId, defaults). (#4736)
  • InMemoryClientArtifactsProvider lets a specification state exactly which artifact types a scenario sees. (#4736)
  • Analyzer CHR0057 warns when a class implements more than one IProjectionFor<> or more than one IReducerFor<>. (#4734)

Fixed

  • A class implementing two IProjectionFor<> or two IReducerFor<> interfaces, directly or through a base class, is no longer silently skipped at startup. Discovery now fails with TypeImplementsMultipleProjectionInterfaces or TypeMustImplementOnlyOneReducer, naming the class, so split it into one projection or reducer per read model. (#4734)
  • ContainerName() on a fluent projection now sets the container (collection or table) the read model is stored in. It used to replace the read model identifier, so the projection pointed at a read model that did not exist. The read model keeps its identifier, and two projections that give one read model different container names are reported as a conflict. (#4735)