Repository navigation
Releases
Releases · datapoint-software/mediator
4.0.0-beta.8
4.0.0-beta.8 - 2026-11-08
Changed
- model-context-protocol: Require ModelContextProtocol 2.4.0 or later, which matches protocol property names case-sensitively (0232fac)
4.0.0-beta.7
4.0.0-beta.7 - 2026-11-04
Fixed
- Breaking: model-context-protocol: Check host-provided names on the dispatched arguments (570eeb4)
- Breaking: entity-framework-core: Discard what a failed read-only query changed (4db1540)
- Breaking: command-line: Keep every failure inside the adapter's error mapping (4443893)
- Breaking: model-context-protocol: Never rethrow an exception to the MCP SDK (b85d4cd)
- Breaking: command-line: Name the expected format in parse errors, not the value (c956936)
- samples: Bound invoice lists, and warn about roles taken from the environment (dd65da2)
- Breaking: Check an ActionDescriptor's kind against its action type (990d9e2)
- Breaking: command-line: Build options from the serializer's contract (7c0ccc0)
- Breaking: Treat an exception as cancellation only when the caller cancelled (cbb8a24)
- dependency-injection: Name the type parameter in the generic Add* overloads' exceptions (d601233)
- aspnetcore: Call MapException in the catch block, and ignore its exceptions (ca0186c)
- authorization: Keep a read-only copy of AuthorizationResult's decisions (b9631c9)
- Dispose asynchronously with ConfigureAwait(false) (36df67d)
- Check the public behaviours' arguments for null (2a5dca5)
- Name the property, the valid values and the fix in error messages (d907ea1)
- abstractions: Check the arguments of IBehavior's default methods (e1b30f6)
Documentation
- Add a release-candidate stage before 4.0.0 (3874d71)
- Add coding guidelines based on Microsoft's .NET guidance (b33021b)
- Complete the exception lists, and drop the hidden-action wording (4f7d5cd)
- Record the catch-all hooks as a deviation, and the samples' and AsyncLocal exceptions (c4579c3)
Refactor
- Breaking: Name CancellationToken parameters cancellationToken (730a7f1)
- Breaking: authorization: Rename IAuthorizationContext.For to GetResultFor (91c6248)
- Breaking: Rename the Mediator class to ServiceProviderMediator (2f16d03)
- Breaking: Replace the dispatcher's optional options with overloads (5e77240)
- Breaking: Replace optional parameters with overloads (8d35ba1)
- Breaking: Remove InvalidActionArgumentsException's four-argument constructor (20f28ee)
4.0.0-beta.6
4.0.0-beta.5
4.0.0-beta.5 - 2026-11-03
Added
- Breaking: abstractions: Require a description for every action (4468664)
- Breaking: abstractions: Declare the adapters that offer an action (f6bc4a5)
- Breaking: aspnetcore: Offer only actions marked [Api] (b026b68)
- Breaking: model-context-protocol: Offer only actions marked [ModelContextProtocol] (5c3ac54)
- Breaking: command-line: Offer only actions marked [CommandLine] (26cc402)
Documentation
- command-line: Remove an outdated copy of the guide's sections (bcf180d)
4.0.0-beta.4
4.0.0-beta.4 - 2026-11-03
Added
- abstractions: Add ActionName and Field to InvalidActionArgumentsException (c76684c)
- mediator: Name the failing argument and add ActionArguments (8fc008c)
- Breaking: aspnetcore: Report argument errors as validation problems and pass them to MapException (a9b7fbb)
- Breaking: model-context-protocol: Name the failing argument and pass argument errors to ErrorMessage (8e1deea)
- Breaking: command-line: Name the failing argument and pass argument errors to ErrorMessage (2a61d5e)
Documentation
- Record that argument errors name the field, and that hooks write their own text (a7b1d29)
Refactor
- Breaking: Prefix host registration methods with Mediator (cb865ff)
4.0.0-beta.3
4.0.0-beta.3 - 2026-11-02
Added
- abstractions: Add HostProvidedAttribute (b490ebe)
- command-line: Hide and refuse host-provided properties (00149ca)
- model-context-protocol: Hide and refuse host-provided properties (d2f94d4)
Documentation
4.0.0-beta.2
4.0.0-beta.2 - 2026-11-01
Added
- Breaking: authorization: Return decisions with details from authorizers (723713c)
- authorization: Expose decisions to the dispatch and observe them (063bccb)
- dependency-injection: Register behaviours created by a factory (288f0ba)
- Breaking: authorization: Bind decisions to their request and hide them from messages (d0d4ec4)
- Breaking: dependency-injection: Refuse conflicting behaviour registrations and add startup checks (8a918b0)
- abstractions: Add ITransactionContext (a23946d)
- Breaking: entity-framework-core: Add transaction options, initializers and read-only query transactions (269042d)
- authorization: Add AuthenticationBehavior and RequireTransaction (d154ff2)
4.0.0-beta.1
4.0.0-beta.1 - 2026-11-01
Added
- Breaking: Add stream queries (7d25acb)
- dependency-injection: Register stream query handlers (439c7f7)
- fluent-validation: Validate stream queries (765aec1)
- mediator: Add tracing and metrics (91f8e79)
- authorization: Add AuthorizationBehavior (4ffeb5d)
- authorization: Add AddAuthorizationBehavior and authorizer scanning (abad703)
- entity-framework-core: Add TransactionBehavior (479d094)
- entity-framework-core: Add AddTransactionBehavior (9047def)
- abstractions: Add action naming and catalog contracts (1c6abe4)
- mediator: Add action catalog and dispatcher (c1bbc6b)
- dependency-injection: Build the action catalog from registered handlers (fa24aba)
- mediator: Restrict action names to dots and hyphens (ed64d2d)
- model-context-protocol: Offer actions as MCP tools (e2669ee)
- aspnetcore: Map actions as HTTP endpoints (515472f)
- command-line: Add actions as CLI commands (5e33020)
- authorization: Add FixedPrincipalAccessor (2f3f186)
- authorization: Add AddFixedPrincipalAccessor (7760535)
- authorization-aspnetcore: Add HttpPrincipalAccessor (4e2336e)
- command-line: Add ActionExitCodes.InvalidCommandLine (e83c47e)
Fixed
- command-line: Parse numbers and dates with the invariant culture (c406a99)
Documentation
- Document stream queries and telemetry (229c074)
- Document new packages and behaviour order (5a7264b)
- Add README badges (9c45401)
- Add coverage badge and policy (08b4a5e)
- Add security policy (aeac45f)
- authorization: Warn against publishing messages from user input (5ec7fbd)
- Document actions (4f3c183)
- Document the MCP adapter (b3f8381)
- Document the ASP.NET Core and CLI adapters (52b8a2a)
- entity-framework-core: Document retry and nesting caveats (99ab3b9)
- Add a changelog generated with git-cliff (cf6c74c)
- Document the ready-made principal accessors (3cd42bb)
- Add architecture decision records (ecf0500)
- Add the architecture overview (ecadbc1)
- Add the contributing guide (26f48e9)
- samples: Add invoicing samples for API, CLI and MCP (8ff3ca6)
- Add the getting started, concepts and pipeline guides (9cd7560)
- Add the feature guides (1584379)
- Add the host guides (7d91822)
- Add the telemetry, testing, security and use case guides (98d70b0)
- Shorten package READMEs and link to the manual (824b2a2)
- Add maintenance rules to CLAUDE.md (1a981c6)
- Record and document invariant culture parsing in the CLI (9d566a1)
4.0.0-alpha.1
4.0.0-alpha.1 - 2026-10-31
Initial public release.
Added
Datapoint.Mediator.Abstractions: commands, queries, messages, their handlers, behaviours andIMediator.Datapoint.Mediator: the mediator implementation.Datapoint.Mediator.DependencyInjection:AddMediator, with handler and behaviour registration and assembly scanning.Datapoint.Mediator.FluentValidation: a behaviour that validates commands and queries with FluentValidation.Datapoint.Mediator.FluentValidation.DependencyInjection:AddValidationBehavior.