v0.9.0
What's Changed
Improvements
- Adds Policy, PolicyStorage, and IdentityStorage projects, all of which are packaged into a new ReactiveDomain.Policy nuget package. These support Role-Based Access Control using OIDC identity tokens from an external identity provider. Policies can be applied on a dispatcher for fine-grained access control at the level of individual Commands.
- Adds PolicyTool for configuring RBAC policies in ReactiveDomain from the command line. This is included in the ReactiveDomain.Policy nuget package.
- Adds a ConfiguredConnection to wrap all information about an ESDB connection into a single object. This simplifies getting readers, listeners, and repositories, and helps ensure consistent stream naming.
- Adds support for ChildEntities. These are aggregates that are children of other aggregates, i.e. related domain entities whose Events use the same stream as the parent aggregate.
- Fixes an issue in TestQueue related to #101 that could cause WaitFor to fail in some circumstances.
- Updates from to ESDB 5.0 to 21.10.2.
- Adds support for .NET Framework 4.8 and .NET 5.
Breaking changes
- Supported .NET versions are .NET Standard 2.0, .NET Framework 4.8, and .NET 5.0.
- Replaces EventStoreLoader with EventStoreLauncher, and removes the StreamStoreConnectionSettings in favor of using connection strings.
- Removes the PrivateLedger projects.
- StreamReader now has a handler injected into its constructor, and its Read method takes a Func to indicate when processing of the Events has completed.
- By default, streams created using the MockRepositorySpecification have a schema (prefix) of "Test". This can be overridden.
Full Changelog: v0.8.23...v0.9.0