Skip to content

Releases: fluture-js/Fluture

2.0.0

31 Aug 12:09
Compare
Choose a tag to compare

⚠️ Breaking changes

  • #6 Values returned from the Future constructor computation
    are now type-checked to be a nullary function or void.
  • #6 Infinitely recurring Futures (eg.
    function recur(){ Future.after(1, 1).chain(recur) }) will
    now cause stack- or memory-overflow. Please use the new
    Future#recur() function to perform infinite recursion.
  • #18 Future.Guard() has been removed in favour of the new
    Future()-constructor.
  • #18 The Future() constructor now functions like Future.Guard():
    Its continuations ignore any calls after the first.

New features

  • #6 Cancellation. fork() and value() now return a cancel
    function which when called causes underlying Futures to be
    cancelled. Every Future may contain its own cancellation
    logic through a function created inside its computation.
  • #6 Every existing utility has been upgraded to contain
    appropriate cancellation logic. For example; Future.after()
    will clear its internal timeout when cancelled; releasing
    its grasp on the event loop.

🐛 Fixes

  • Partially applied curried static functions no longer have
    pretty toString functions. This improves their performance
    by a factor of three is some situations.
  • #19 FantasyLand is no longer a dependency.
  • A bug was fixed where some values could not be cast to String
    for display in error messages.

2.0.0 beta 2

31 Aug 11:28
Compare
Choose a tag to compare
2.0.0 beta 2 Pre-release
Pre-release

Fixes a small bug involving casting Streams and similar objects to string.

2.0.0 beta 1

30 Aug 11:55
Compare
Choose a tag to compare
2.0.0 beta 1 Pre-release
Pre-release

Beta version for the 2.0.0 release

1.2.1

08 Aug 17:47
Compare
Choose a tag to compare
  • Update package meta-data
  • Update dependencies

1.2.0

11 Jul 09:58
Compare
Choose a tag to compare

New Features

  • Add the Future.Guarded() constructor

1.1.0

28 Jun 11:33
Compare
Choose a tag to compare

New features

Improvements

  • Textual ordinals in error messages:
    "first argument" instead of "argument 0"
  • Documentation and unit testing improvements

1.0.1

28 Apr 10:46
Compare
Choose a tag to compare

Resolves a problem with Futures created through Future.do not being reusable.

1.0.0!

25 Apr 18:12
Compare
Choose a tag to compare
  • Implement Bifunctor (bimap())
  • Implement Future.do() (do-notation)
  • Implement Future.mapRej()
  • isFuture() now respects the @@type property

These features bring to the conclusion the goals I had in mind when I started work on this library. Therefore this marks the first major release.

0.6.5

06 Apr 11:13
Compare
Choose a tag to compare
  • Add @@type property for interop with type checkers like Sanctuary's is
    (PS: Sorry for the spam, miss @type)
  • Improve type checks on the input to encase2 and encase3

0.6.4

05 Apr 09:13
Compare
Choose a tag to compare
  • Add Future.encase2()
  • Add Future.encase3()
  • Expose internal utilities
  • Improve unit tests
  • Improve string casting