Releases: pmndrs/jotai
v2.20.1
This release includes a few small fixes.
What's Changed
- fix(vanilla/utils/atomWithStorage): apply reviver when parsing subscription updates by @chatman-media in #3326
- fix(internals): throw stackoverflow errors synchronously by @dai-shi in #3330
New Contributors
- @15MariamS made their first contribution in #3321
- @sapphi-red made their first contribution in #3327
- @DucMinhNe made their first contribution in #3331
- @chatman-media made their first contribution in #3326
Full Changelog: v2.20.0...v2.20.1
v2.20.0
This release improves performance in high-throughput scenarios. Huge kudos to @dmaskasky!
What's Changed
- breaking(internals): avoid getInternalBuildingBlock function by @dai-shi in #3293
- refactor(internals): Rev3 type narrowing for onMount hooks by @dmaskasky in #3311
- fix(internals): guard atomOnInit hook with hasOnInit by @dmaskasky in #3312
- refactor(internals): lazy hooks in ensureAtomState for new atom state by @dmaskasky in #3313
Full Changelog: v2.19.1...v2.20.0
v2.19.1
This release includes several small refactors to improve performance.
What's Changed
- fix(vanilla/utils/atomWithObservable): use symbol index signature to avoid 'Symbol.observable' type reference by @sukvvon in #3274
- refactor(internals): replace nextDeps with prevDeps by @dmaskasky in #3278
- refactor(internals): reduce recomputeInvalidatedAtoms overhead (performance) by @dmaskasky in #3284
- refactor(internals): reduce flushPending overhead (performance) by @dmaskasky in #3285
- fix(internals): check if atom has dependencies before doing mountDependencies work (performance) by @dmaskasky in #3290
- fix(internals): check if atom has onMount property before queueing processOnMount callback (performance) by @dmaskasky in #3291
- refactor(types): prefer no-any by @dai-shi in #3304
New Contributors
Full Changelog: v2.19.0...v2.19.1
v2.19.0
We improved the core to enable atom caching for performance for some cases.
What's Changed
- fix(react): deprecate delay option by @dai-shi in #3264
- feat: improve store.get performance when atoms are not mutated by @dmaskasky in #3265 thanks to @edkimmel
New Contributors
- @composite made their first contribution in #3268
Full Changelog: v2.18.1...v2.19.0
v2.18.1
This release fixes a regression introduced in v2.12.1, which affects an uncommon edge case.
What's Changed
- fix(vanilla): subscriber not notified when derived read calls store.set by @dmaskasky in #3245
- fix(vanilla/utils/atomWithObservable): add 'Symbol.observable' type support to 'ObservableLike' by @sukvvon in #3253
- refactor(vanilla/utils/atomWithStorage): use optional chaining for 'storage.subscribe' by @sukvvon in #3260
Full Changelog: v2.18.0...v2.18.1
v2.18.0
We moved jotai/babel to jotai-babel.
Migration Guide
If you use the preset:
{
- "presets": ["jotai/babel/preset"]
+ "presets": ["jotai-babel/preset"]
}If you use a plugin:
{
- "plugins": ["jotai/babel/plugin-debug-label"]
+ "plugins": ["jotai-babel/plugin-debug-label"]
}What's Changed
- refactor(internals): simplify promise handing by @dai-shi in #3232
- feat: deprecate jotai/babel in favor of jotai-babel by @dai-shi in #3236
- fix: keep reactivity if get is called in a different atom by @dai-shi in #3241
New Contributors
Full Changelog: v2.17.1...v2.18.0
v2.17.1
Small typing improvements. If you are using v2.16 or earlier, we recommend upgrading to the latest version.
What's Changed
- fix(core/types): Wrong variance on the WritableAtom Result type parameter by @atomanyih in #3135
- chore: leftover with #3219 by @dai-shi in #3231
New Contributors
- @atomanyih made their first contribution in #3135
Full Changelog: v2.17.0...v2.17.1
v2.17.0
v2.16.2
Fixes unwrap and loadable, resolving a regression introduced in v2.15.2.
What's Changed
New Contributors
- @dev-itsheng made their first contribution in #3206
Full Changelog: v2.16.1...v2.16.2
v2.16.1
This fixes an internal API issue that affects ecosystem libraries.
What's Changed
- fix(internals): buildingblocks should not invoke buildingblock definitions from top-scope by @dmaskasky in #3197
Full Changelog: v2.16.0...v2.16.1