github facebookexperimental/Recoil 0.3.0
0.3

latest releases: 0.7.7, 0.7.6, 0.7.5...
2 years ago

Breaking Changes

For supporting garbage collection in the future there is a slight breaking change that Snapshot's will only be valid for the duration of the callback or render. A new retain() API can be used to persist them longer. This is not enforced yet, but Recoil will now provide a warning in dev-mode if a Snapshot is used past its lifetime. (#1006)

New Features / Improvements

  • Add override prop to <RecoilRoot> (#973)
  • Add getCallback() to selector evaluation interface (#989)
  • Improved TypeScript and Flow typing for Loadables (#966, #1022)

Performance Optimizations

  • Improve scalability (time and memory) of Atom families by cleaning up a legacy feature.

Bug Fixes

  • Throwing an error in an async selector should be properly caught by <ErrorBoundary>'s (#998, #1017)
  • Fix for Atom Effects onSet() should not be called when triggered from setSelf() initializing with a Promise or from the same onSet() handler. (#974, #979, #953, #986)
  • Improved support for Safari (#967, #609)
  • Objects stored in selectors are properly frozen in dev mode (#911)

Don't miss a new Recoil release

NewReleases is sending notifications on new releases.