Skip to content

Releases: jamil7/FSharp.Prelude

Try source link

02 Feb 14:53
2db50bd
Compare
Choose a tag to compare
Try source link Pre-release
Pre-release

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?

20 Jan 00:14
Compare
Choose a tag to compare
Tasks are here? Pre-release
Pre-release

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!

17 Nov 15:17
Compare
Choose a tag to compare

What's Changed

Full Changelog: v4.0.3...v5.0.0

Support netstandard2.0

22 May 22:07
Compare
Choose a tag to compare
v4.0.3

Fix script again

Improvements! Improvements! Improvements!

06 May 20:12
13b5581
Compare
Choose a tag to compare

What's new?

  • ofThrowable in Result and Option modules to wrap functions that can throw in a Result or an Option respectively

What's changed?

  • Remove traverse and sequence function from Async because it already has it's own version of them
  • Remove parallel' from AsyncResult AsyncOption AsyncResultOption
  • Remove kleisli operator >=> and compose function
  • Rename traverseM to mapM
  • Rename traverseA to traverse
  • Rename travseParallelA to traverseParallel
  • Rename sequenceM to sequence
  • Use a tail recursive version of traverse and sequence to support early termination
  • Add tests for AsyncResult thanks @AntonStrand ❤️

List module, and a whole lot of changes!

11 Apr 17:42
f307a98
Compare
Choose a tag to compare

What's new?

  • List module, which has both traverse and sequence in monadic and applicative variants for all the monads in the lib
  • bimap function for Result, AsyncResult, and AsyncResultOption

What's changed?

  • AwaitTaskWithInnerException is now a static method in the extended Async module instead of a function. This is to be able to override the methods to accept Task, and Task<'a> while keeping the same name
  • traverse is removed from all the monad modules, and added to the List module in two variants as mentioned before

What's improved

  • sequence, and parallel' are kept for convenience and backward compatibility, but they now use traverseM instead of traverseA under the hood to terminate on first error

New functions, and lots of improvements!

07 Jan 17:49
Compare
Choose a tag to compare

What's new?

  • While loop in all builders
  • Async builder can bind tasks, and has MergeSources() added to enable the and! keyword in builders
  • Added traverse to error handling modules, and changed sequence's implementation to use traverse under the hood

What's improved?

  • Changed implementation of (<&>) in Async to use Async.StartChildAsTask instead of Async.StartChild, because of some weird stack overflow exceptions caused by latter
  • Changed implementation of (<&>) in AsyncOption, and AsyncResult to use the new and! keyword from the Async module
  • Changed implementation of parallel' in async error handling modules to use Async.Parallel, which has better performance than (<&>), and doesn't cause stack overflows

Add missing option, and result builders

17 Dec 16:41
Compare
Choose a tag to compare

What's new?

  • Added builder for option, and result, which were missing before (oops)

Sequential apply, and String!

16 Dec 22:37
Compare
Choose a tag to compare

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!

12 Dec 19:03
Compare
Choose a tag to compare

What's new?

  • AsyncResultOption type alias, operators, and CE
  • Kleisli (fish) operator for all error handling types