Releases: hasanxdev/DispatchR
v2.1.1 - Fix async pipeline awaitable type comparison
What's Changed
Full Changelog: v2.1.0...v2.1.1
Support multiple handlers per class
Support non-generic notifications
What's Changed
- Add PublishObject method to support non-generic notifications by @hasanxdev in #38
Full Changelog: v2.0.0...v2.0.1
v2.0.0 – Mediator: Abstractions / Implementation
What's Changed
- Split mediator into two packages: abstractions & full implementation by @hasanxdev in #37
This Version adds an icon to DispatchR and addresses the request raised in Issue #17 by introducing a separation of concerns in the Mediator package structure:
- DispatchR.Mediator.Abstractions: Contains only the core contracts and types (IRequest, INotification, IStreamRequest)
- DispatchR.Mediator: Contains the complete mediator implementation
Motivation:
This allows consumers to reference only the abstractions when needed; for example, defining request/notification types in a shared class library that both frontend and backend projects can consume.
The frontend can depend solely on the lightweight abstractions without pulling in the full mediator logic, while the backend can leverage the complete implementation.
Changes:
- Extracted interfaces and base contracts into a new DispatchR.Mediator.Abstractions package
- Updated project structure and references accordingly
- Adjusted namespaces and documentation to reflect the split
Benefits:
- Reduces unnecessary dependencies in projects that only require the contracts
- Improves modularity and flexibility in multi‑tier architectures
- Makes it easier to share request/notification models across services and clients
Breck Changes:
Change the namespaces of the following interfaces:
- INotification
- INotificationHandler
- IPipelineBehavior
- IRequest
- IRequestHandler
- IStreamPipelineBehavior
- IStreamRequest
- IStreamRequestHandler
- IMediator
Full Changelog: v1.3.3...v2.0.0
v1.3.3 - Add Unit and Integration Tests
v1.3.2 - Support .NET8
What's Changed
- update README.md by @hasanxdev in #28
- ✨ Add .NET 8 Support by @AmBplus in #30
- update version in README.md by @hasanxdev in #32
New Contributors
Full Changelog: v1.3.1...v1.3.2
v1.3.1 - Handler Include/Exclude Options
What's Changed
- [ImgBot] Optimize images by @imgbot in #12
- feature: Injected Handlers Filtering by @MatheusReichert in #25
- Update README.md for v1.3.1 by @hasanxdev in #26
New Contributors
- @imgbot made their first contribution in #12
- @MatheusReichert made their first contribution in #25
Full Changelog: v1.3.0...v1.3.1
v1.3.0 - Enhanced Flexibility and Configurability
What's Changed
- Update launch settings and add new HTTP requests by @mixedHans in #19
- Remove 'new()' constraint from generic type parameters by @mixedHans in #18
- full .gitignore, extensions folder, configuration, support for multiple assemblies by @bclementfidx in #20
- feature: extended ConfigurationOptions to pass specific PipelineOrder. by @cluidold in #21
- add change log file by @hasanxdev in #22
New Contributors
- @mixedHans made their first contribution in #19
- @bclementfidx made their first contribution in #20
- @cluidold made their first contribution in #21
Full Changelog: v1.2.1...v1.3.0
Support generic pipelines
This pull request introduces support for async generic pipelines in DispatchR. Prior to this change, generic pipelines could only be registered and resolved synchronously, which limited extensibility for request handlers returning Task or ValueTask.
With this update:
DispatchR can now resolve and execute generic pipelines asynchronously, allowing full compatibility with async request/response flows.
There's no longer a need to define separate pipelines for every request type; a single GenericPipeline<TRequest, TResponse> now supports async methods.
The system gracefully handles all common return types including Task, ValueTask, and synchronous results.
This change improves scalability and aligns DispatchR with modern asynchronous programming practices in .NET.
Add notification with zero allocation
add notification (#11) * add notification * wip * wip * wip * wip * wip * wip