Skip to content

Releases: fluture-js/Fluture

Version 12.0.0 Beta 0

07 May 15:21
ccc1dfe
Compare
Choose a tag to compare

Version 11.0.1

21 Mar 15:25
29bd577
Compare
Choose a tag to compare

Corrects an issue in the TypeScript typings for the chainRej function.

Version 11.0.0

10 Mar 15:53
a3d4133
Compare
Choose a tag to compare

⚠️ Breaking changes

  • #311 Disposal Futures provided to hook are no longer allowed to reject. When they do, an Error is raised, and the process should be treated as corrupt.
  • #313 Add TypeScript definitions for debugMode and Future.alt.

Version 10.3.0

10 Dec 16:30
9bba4fa
Compare
Choose a tag to compare

New Features

  • Implemented Fantasy Land Alt on Future instances (alt). As a result, the or function is now an alias of alt.

Version 10.2.0

31 Oct 09:20
9a3e65a
Compare
Choose a tag to compare

New Features

  • Add "async stack traces": A feature which makes caught errors have extra
    stack traces appended to their stack property, allowing users to trace
    the origin of an exception across multiple ticks.
  • Add Future.debugMode: A function to turn async stack traces on or off.

🚀 Improvements

  • Reduce bundle size through dependency trimming
  • Fix a bug where a Computation could settle after crashing

Version 10.1.0

01 Sep 17:59
8058bc4
Compare
Choose a tag to compare

New Features

  • Add Future#pipe: A method for inclusion of regular functions in a
    fluent method-chain.

🚀 Improvements

  • Reduce bundle size through dependency trimming
  • The ConcurrentFuture type now works properly with sanctuary-show

Version 10.0.0

30 Aug 17:35
d7de58f
Compare
Choose a tag to compare

⚠️ Breaking changes

  • #276 The "module" package file has been renamed from index.mjs.js to
    index.mjs.
  • #277 It is no longer possible to use Future.ap, Future.map,
    Future.bimap, Future.chain, or Future.alt on non-Fantasy Land types.
    If you were using any of these functions from Fluture to treat JavaScript's
    native types as Fantasy Land algebraic types, you should migrate those
    call-sites to use the Ramda or Sanctuary exported dispatchers instead.
  • #281 Future.finally no longer runs the cleanup Future when it is cancelled.
    If you rely on this behaviour, I urge you to rewrite the relevant code with
    Future.hook (even if you don't upgrade Fluture).

New features

  • #276 The Fluture source is now loadable by Node's experimental module loader,
    and the esm loader.
  • #280 The Future.of function now has an alias resolve, which is exported
    statically as well as exposed as a property on the Future constructor.

🐛 Bug fixes and improvements

  • #277 Fluture no longer depends on sanctuary-type-classes, reducing bundle size.
  • #277 Performance of Fantasy Land dispatchers greatly improved.
  • #281 The undesired consequences of the cancellation-related behaviour in
    Fluture.finally are gone now that the behaviour has been removed.

Version 9.0.0

26 Jul 10:29
ba75ff2
Compare
Choose a tag to compare

⚠️ Breaking changes

  • #224 Exceptions are now caught and rethrown in fork.
  • #230 Many of the TypeScript type definitions that used never now use a
    generic instead.
  • #238 When unsubscribing from a Future created by hook, the cancellation
    signal is no longer sent to the disposal Future.
  • #266 Exported TypeScript interfaces have been renamed to avoid naming
    conflicts with exported values.

New features

  • #250 Included interoperability with Sanctuary Show
  • #261 Added a new function, forkCatch, which allows for exception recovery.

8.0.0

30 Dec 15:54
0006beb
Compare
Choose a tag to compare

This release updates sanctuary-type-classes, which contains a breaking change. This change will only affect you if you are using Future.map on other Functors, specifically, Objects.

⚠️ Breaking changes

  • #157 When mapping over an Object using Future.map, inherited properties are no longer transformed.

7.2.0

22 Oct 12:06
17a5fa0
Compare
Choose a tag to compare

New features

  • All code is now published as es5, allowing front-end builds to apply tree-shaking without worrying about transpiling es6.

🐛 Bug fixes

  • Corrected a mistake in the TypeScript type definitions which caused the default export from Fluture to be typed incorrectly.
  • Fixed an issue where TypeScript would not recognize that the return values of generator functions conform to Fluture's Iterator interface.