v3.0.0-alpha.1
Includes v2.20.3 changes.
- fix(unwrap): prevent infinite microtask loop on rejected source recompute by @dai-shi with @Copilot in https://github.com/pmndrs/jotai/pull/3363
- @dai-shi with @Copilot made their first contribution in https://github.com/pmndrs/jotai/pull/3363
Full Changelog: https://github.com/pmndrs/jotai/compare/v3.0.0-alpha.0...v3.0.0-alpha.1
v2.20.3
A fix in a util.
- fix(unwrap): prevent infinite microtask loop on rejected source recompute by @dai-shi with @Copilot in https://github.com/pmndrs/jotai/pull/3363
- @dai-shi with @Copilot made their first contribution in https://github.com/pmndrs/jotai/pull/3363
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.20.2...v2.20.3
v3.0.0-alpha.0
https://github.com/pmndrs/jotai/blob/v3/docs/guides/migrating-to-v3.mdx
- [v3] drop old TS by @dai-shi in https://github.com/pmndrs/jotai/pull/3336
- [v3] drop UMD and SystemJS builds by @dai-shi in https://github.com/pmndrs/jotai/pull/3338
- [v3] drop old node by @dai-shi in https://github.com/pmndrs/jotai/pull/3339
- [v3] module-first package by @dai-shi in https://github.com/pmndrs/jotai/pull/3340
- [v3] drop CJS by @dai-shi in https://github.com/pmndrs/jotai/pull/3341
- [v3] use NODE_ENV directly by @dai-shi in https://github.com/pmndrs/jotai/pull/3342
- [v3] drop rollup by @dai-shi in https://github.com/pmndrs/jotai/pull/3344
- [v3] drop old React by @dai-shi in https://github.com/pmndrs/jotai/pull/3345
- [v3] es2020 target by @dai-shi in https://github.com/pmndrs/jotai/pull/3346
- [v3] drop atomFamily by @dai-shi in https://github.com/pmndrs/jotai/pull/3347
- [v3] drop loadable by @dai-shi in https://github.com/pmndrs/jotai/pull/3348
- [v3] drop jotai/babel by @dai-shi in https://github.com/pmndrs/jotai/pull/3349
- [v3] drop setSelf by @dai-shi in https://github.com/pmndrs/jotai/pull/3350
- [v3] useAtomValueRaw & useAtomValueRawSync by @dai-shi in https://github.com/pmndrs/jotai/pull/3351
- [v3] redesign buildingBlocks by @dai-shi in https://github.com/pmndrs/jotai/pull/3358
- [v3] migration guide by @dai-shi in https://github.com/pmndrs/jotai/pull/3359
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.20.2...v3.0.0-alpha.0
v2.20.2
This release fixes a regression in some edge case introduced in v2.18.1.
- fix(vanilla): subscriber not notified after nested store.set and sub/unsub inside a write by @dai-shi in https://github.com/pmndrs/jotai/pull/3354
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.20.1...v2.20.2
v2.20.1
This release includes a few small fixes.
- fix(vanilla/utils/atomWithStorage): apply reviver when parsing subscription updates by @chatman-media in https://github.com/pmndrs/jotai/pull/3326
- fix(internals): throw stackoverflow errors synchronously by @dai-shi in https://github.com/pmndrs/jotai/pull/3330
- @15MariamS made their first contribution in https://github.com/pmndrs/jotai/pull/3321
- @sapphi-red made their first contribution in https://github.com/pmndrs/jotai/pull/3327
- @DucMinhNe made their first contribution in https://github.com/pmndrs/jotai/pull/3331
- @chatman-media made their first contribution in https://github.com/pmndrs/jotai/pull/3326
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.20.0...v2.20.1
v2.20.0
This release improves performance in high-throughput scenarios. Huge kudos to @dmaskasky!
- breaking(internals): avoid getInternalBuildingBlock function by @dai-shi in https://github.com/pmndrs/jotai/pull/3293
- refactor(internals): Rev3 type narrowing for onMount hooks by @dmaskasky in https://github.com/pmndrs/jotai/pull/3311
- fix(internals): guard atomOnInit hook with hasOnInit by @dmaskasky in https://github.com/pmndrs/jotai/pull/3312
- refactor(internals): lazy hooks in ensureAtomState for new atom state by @dmaskasky in https://github.com/pmndrs/jotai/pull/3313
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.19.1...v2.20.0
v2.19.1
This release includes several small refactors to improve performance.
- fix(vanilla/utils/atomWithObservable): use symbol index signature to avoid 'Symbol.observable' type reference by @sukvvon in https://github.com/pmndrs/jotai/pull/3274
- refactor(internals): replace nextDeps with prevDeps by @dmaskasky in https://github.com/pmndrs/jotai/pull/3278
- refactor(internals): reduce recomputeInvalidatedAtoms overhead (performance) by @dmaskasky in https://github.com/pmndrs/jotai/pull/3284
- refactor(internals): reduce flushPending overhead (performance) by @dmaskasky in https://github.com/pmndrs/jotai/pull/3285
- fix(internals): check if atom has dependencies before doing mountDependencies work (performance) by @dmaskasky in https://github.com/pmndrs/jotai/pull/3290
- fix(internals): check if atom has onMount property before queueing processOnMount callback (performance) by @dmaskasky in https://github.com/pmndrs/jotai/pull/3291
- refactor(types): prefer no-any by @dai-shi in https://github.com/pmndrs/jotai/pull/3304
- @aio39 made their first contribution in https://github.com/pmndrs/jotai/pull/3277
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.19.0...v2.19.1
v2.19.0
We improved the core to enable atom caching for performance for some cases.
- fix(react): deprecate delay option by @dai-shi in https://github.com/pmndrs/jotai/pull/3264
- feat: improve store.get performance when atoms are not mutated by @dmaskasky in https://github.com/pmndrs/jotai/pull/3265
- @composite made their first contribution in https://github.com/pmndrs/jotai/pull/3268
Full Changelog: https://github.com/pmndrs/jotai/compare/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.
- fix(vanilla): subscriber not notified when derived read calls store.set by @dmaskasky in https://github.com/pmndrs/jotai/pull/3245
- fix(vanilla/utils/atomWithObservable): add 'Symbol.observable' type support to 'ObservableLike' by @sukvvon in https://github.com/pmndrs/jotai/pull/3253
- refactor(vanilla/utils/atomWithStorage): use optional chaining for 'storage.subscribe' by @sukvvon in https://github.com/pmndrs/jotai/pull/3260
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.18.0...v2.18.1
v2.18.0
We moved jotai/babel to jotai-babel.
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"]
}
- refactor(internals): simplify promise handing by @dai-shi in https://github.com/pmndrs/jotai/pull/3232
- feat: deprecate jotai/babel in favor of jotai-babel by @dai-shi in https://github.com/pmndrs/jotai/pull/3236
- fix: keep reactivity if get is called in a different atom by @dai-shi in https://github.com/pmndrs/jotai/pull/3241
- @pavan-sh made their first contribution in https://github.com/pmndrs/jotai/pull/3238
Full Changelog: https://github.com/pmndrs/jotai/compare/v2.17.1...v2.18.0