Releases: jamil7/FSharp.Prelude
Releases · jamil7/FSharp.Prelude
Try source link
What's Changed
- One namespace to rule them all! by @jamil7 in #13
- Add
Task
extensions by @jamil7 in #14 - Clean up some duplicate functions and rename some by @jamil7 in #17
- Remove the alternative combinator use built in functions when needed by @jamil7 in #18
- Refactor parallel apply operator by @jamil7 in #19
- Add
TaskResult
by @jamil7 in #15 - Add
TaskOption
by @jamil7 in #20 - Remove
Internal.fs
and refactor by @jamil7 in #21 - Add some more functionality to options by @jamil7 in #22
- Move Tasks to its own project by @jamil7 in #23
- Add source link to include sources by @jamil7 in #24
Full Changelog: v5.0.0...v6.0.0-beta.4
Tasks are here?
What's Changed
- One namespace to rule them all! by @jamil7 in #13
- Add
Task
extensions by @jamil7 in #14 - Clean up some duplicate functions and rename some by @jamil7 in #17
- Remove the alternative combinator use built in functions when needed by @jamil7 in #18
- Refactor parallel apply operator by @jamil7 in #19
- Add
TaskResult
by @jamil7 in #15 - Add
TaskOption
by @jamil7 in #20 - Remove
Internal.fs
and refactor by @jamil7 in #21 - Add some more functionality to options by @jamil7 in #22
- Move Tasks to its own project by @jamil7 in #23
Full Changelog: v5.0.0...v6.0.0-beta-3
Restructure and more!
Support netstandard2.0
v4.0.3 Fix script again
Improvements! Improvements! Improvements!
What's new?
ofThrowable
inResult
andOption
modules to wrap functions that can throw in aResult
or anOption
respectively
What's changed?
- Remove
traverse
andsequence
function fromAsync
because it already has it's own version of them - Remove
parallel'
fromAsyncResult
AsyncOption
AsyncResultOption
- Remove kleisli operator
>=>
andcompose
function - Rename
traverseM
tomapM
- Rename
traverseA
totraverse
- Rename
travseParallelA
totraverseParallel
- Rename
sequenceM
tosequence
- Use a tail recursive version of
traverse
andsequence
to support early termination - Add tests for
AsyncResult
thanks @AntonStrand ❤️
List module, and a whole lot of changes!
What's new?
List
module, which has bothtraverse
andsequence
inmonadic
andapplicative
variants for all the monads in the libbimap
function forResult
,AsyncResult
, andAsyncResultOption
What's changed?
AwaitTaskWithInnerException
is now a static method in the extendedAsync
module instead of a function. This is to be able to override the methods to acceptTask
, andTask<'a>
while keeping the same nametraverse
is removed from all the monad modules, and added to theList
module in two variants as mentioned before
What's improved
sequence
, andparallel'
are kept for convenience and backward compatibility, but they now usetraverseM
instead oftraverseA
under the hood to terminate on first error
New functions, and lots of improvements!
What's new?
- While loop in all builders
Async
builder can bind tasks, and hasMergeSources()
added to enable theand!
keyword in builders- Added
traverse
to error handling modules, and changedsequence
's implementation to usetraverse
under the hood
What's improved?
- Changed implementation of
(<&>)
inAsync
to useAsync.StartChildAsTask
instead ofAsync.StartChild
, because of some weird stack overflow exceptions caused by latter - Changed implementation of
(<&>)
inAsyncOption
, andAsyncResult
to use the newand!
keyword from theAsync
module - Changed implementation of
parallel'
in async error handling modules to useAsync.Parallel
, which has better performance than(<&>)
, and doesn't cause stack overflows
Add missing option, and result builders
What's new?
- Added builder for
option
, andresult
, which were missing before (oops)
Sequential apply, and String!
What's new?
- Added a sequential implementation for
apply
for async operations, as well as a parallel one (which was the default) - New String module that has some nice to have string functions, inspired by Elm's collection of string functions (more functions coming!)
AsyncResultOption is here!
What's new?
- AsyncResultOption type alias, operators, and CE
- Kleisli (fish) operator for all error handling types