Releases: AlanBarber/ResultR
v1.0.2
Added Match() Method for Functional Result Handling
The Result and Result<T> types now include a Match() method that provides a functional approach to handling success and failure cases. This enables cleaner, more expressive code when transforming results into other types.
// Result<T> - success callback receives the value
return result.Match(
user => Ok(user),
error => NotFound(new { error })
);
// Result (non-generic) - success callback takes no parameters
return result.Match(
() => NoContent(),
error => BadRequest(new { error })
);Full Changelog: v1.0.1...v1.0.2
Full Changelog: v1.0.1...v1.0.2
v1.0.1
Latest release of ResultR core library
Full Changelog: v1.0.0...v1.0.1
What's Changed
- First build out of ResultR.Valdiation companion library by @AlanBarber in #2
New Contributors
- @AlanBarber made their first contribution in #2
Full Changelog: v1.0.0...v1.0.1
validation-v1.0.1
Full Changelog: validation-v1.0.0...validation-v1.0.1
validation-v1.0.0
What's Changed
- First build out of ResultR.Valdiation companion library by @AlanBarber in #2
Full Changelog: v1.0.0...validation-v1.0.0
v1.0.0
Last release looks solid enough we're going to rebuild and release as our first proper v1.0.0!
Full Changelog: v1.0.0-beta.5...v1.0.0
v1.0.0-beta.5
Full Changelog: v1.0.0-beta.4...v1.0.0-beta.5
- Added new unit tests for improved test coverage including handler failure results, pipeline behavior verification, and void handler registration
- Reorganized test suite into subfolders by functionality (DispatcherTests, ResultTests, ServiceCollectionExtensionsTests)
- Fixed README documentation - corrected void request example, updated interface descriptions, simplified logger injection pattern, and reordered sections for better readability
- Removed inaccurate feature claim about built-in logging support from README
- Updated wiki documentation to consistently reference both IRequest / IRequest and IRequestHandler / IRequestHandler<TRequest, TResponse> interfaces
Full Changelog: v1.0.0-beta.4...v1.0.0-beta.5
v1.0.0-beta.4
Full Changelog: v1.0.0-beta.3...v1.0.0-beta.4
Bug Fixes
- Fixed memory allocation in Result.Metadata - Cached a static empty dictionary to avoid allocating a new Dictionary on every access when no metadata is set
- Improved error message for invalid request types - Changed .First() to .FirstOrDefault() with a clear error message when a type doesn't implement IRequest
- Preserved validation exceptions - Validation failures now retain the exception if one was attached to the Result
Test Coverage
- Added test for CancellationToken passthrough - Verifies the token reaches the handler
- Added test for validation exception preservation - Verifies exceptions from ValidateAsync are preserved in the failure result
Full Changelog: v1.0.0-beta.3...v1.0.0-beta.4
v1.0.0-beta.3
Full Changelog: v1.0.0-beta.2...v1.0.0-beta.3
- Decided to make a major refactor and rename Mediator to Dispatcher since it's more accurate
- Made a few performance enhancements
- Fixed the benchmarks and updated results
Full Changelog: v1.0.0-beta.2...v1.0.0-beta.3
v1.0.0-beta.2
Full Changelog: v1.0.0-beta.1...v1.0.0-beta.2
Working on getting release process up and running
Full Changelog: v1.0.0-beta.1...v1.0.0-beta.2