Releases: I-RzR-I/AggregatedGenericResultMessage
Releases · I-RzR-I/AggregatedGenericResultMessage
v2.0.0.4127
What's Changed
Major release — contains breaking changes. See migration-guide.md for full before/after porting steps.
Breaking changes
- [DEV] - (RzR) -> Change namespace from
AggregatedGenericResultMessagetoRzR.ResultMessage. - [FIX] - (RzR) -> Implicit
Exception -> Result/Result<T>operators now throwArgumentNullExceptiononnull(was: silent empty failure). - [FIX] - (RzR) ->
Result<T>(Exception)constructor now adds oneMessageType.Exceptionmessage (was: two: empty info + trace). - [FIX] - (RzR) ->
JoinErrors(IEnumerable<Result>)now derivesIsSuccessfrom the joined collection (was: inherited from caller). - [FIX] - (RzR) ->
Success<T>(T, params RelatedObjectModel[])no longer adds a ghostMessageType.Nonemessage whenrelatedObjectsis empty/null. - [DEV] - (RzR) ->
ExceptionHelper.PreserveStackTracesignature changed:void->ExceptionDispatchInfo - [DEV] - (RzR) ->
GetFirstMessage/GetFirstErrornow fall back to the first exception message when no plain message exists (was: empty string).
Obsoletions (compile warnings; will fail with TreatWarningsAsErrors)
- [DEV] - (RzR) ->
Result<T>.Instance-> useResult<T>.Create(). - [DEV] - (RzR) ->
ActionOnSuccess/ActionOnFailure/ActionOn(4 overloads) -> useTap/Match. - [DEV] - (RzR) -> All 7
FunctionOn*/ExecuteFunctionoverloads takingFunc<Task<TResult>>-> useFunctionExtensionsAsync.*Async(avoids sync-over-async deadlock).
- [DEV] - (RzR) ->
Map<TOut>(Func<T,TOut>),Bind<TOut>(Func<T,Result<TOut>>),Match<TOut>(Func<T,TOut>, Func<Result<T>,TOut>),Tap(Action<T>). - [DEV] - (RzR) ->
MapAsync,BindAsync,TapAsync,MatchAsync, overloads on bothResult<T>andTask<Result<T>>, accepting sync and async delegates. AllConfigureAwait(false). - [DEV] - (RzR) ->
Tap(this Task<Result<T>>, Action<T>)for sync side-effect on awaited results. - [DEV] - (RzR) -> New static class
FunctionExtensionsAsyncexposingFunctionOnSuccessAsync,FunctionOnFailureAsync,FunctionOnAsync(4 overloads),ExecuteFunctionAsync. - [DEV] - (RzR) ->
Validate(Func<T,bool>, error)- accumulates every violation in one chain pass; overloads for(predicate, key, error)and(predicate, MessageDataModel). - [DEV] - (RzR) ->
Ensure(Func<T,bool>, error)— short-circuits onceIsSuccess == false. - [DEV] - (RzR) ->
ValidateAsync— async predicate on bothResult<T>andTask<Result<T>>. - [DEV] - (RzR) -> Match(Func<IResult,TOut>, Func<IResult,TOut>)
and parameterless /Action`-based overloads. - [DEV] - (RzR) ->
MatchAsync<TOut>(Func<IResult,Task<TOut>>, Func<IResult,Task<TOut>>). - [FIX] - (RzR) ->
RelatedObjectModel.ToString()is now null-safe whenInDataSourceNamesisnull
Full Changelog: v1.4.1.8497...v2.0.0.4127
v1.4.1.8497
What's Changed
Full Changelog: v1.4.0.7788...v1.4.1.8497
v1.4.0.7788
What's Changed
- Add failure boolean value by @I-RzR-I in #29
- Add
IsFailurein result. - Add new extension methods:
WithMessages,ReturnAutoSuccessOrFailure.
Full Changelog: v1.3.5.4696...v1.4.0.7788
v1.3.5.4696
Merge pull request #25 from I-RzR-I/feature/UpgradeCleanUn Upgrade version for the 'CodeSource' package.
v1.3.4.6865
Merge pull request #24 from I-RzR-I/fix/CVE-2024-43485 Fix CVE-2024-43485
v1.3.3.6068
What's Changed
Full Changelog: v1.3.2.469...v1.3.3.6068
v1.3.2.469
What's Changed
Full Changelog: v1.3.1.6141...v1.3.2.469
v1.3.1.6141
Merge pull request #21 from I-RzR-I/fix/FixCliPackMultiAggregatedGene…
v1.3.0.5142
Merge pull request #20 from I-RzR-I/feature/AddExtensionSetObjectMessage Add extension result with input MessageDataModel, adjsut shell script.