Releases: pmndrs/jotai
v1.3.9
Summary
There was an edge-case issue with async atoms reported #751, which is fixed. Other changes are basically refactoring, but they may fix some potential bugs.
What's Changed
- fix(core): resolve infinite loop with chained async dependencies by @dai-shi in #766
- fix(query): improve atomWith(Infinite)Query with enabled by @dai-shi in #767
- fix(core): improve reading atom state by @dai-shi in #768
- fix(core): promise handling in store by @dai-shi in #769
Full Changelog: v1.3.8...v1.3.9
v1.3.8
Summary
jotai/utils
atomWithHash
takesoptions
object for more customization- the old signature (
serialize
/deserialize
functions) is deprecated and will be remove in the next version
- the old signature (
jotai/valtio
atomWithProxy
takesoptions
object for enablesync
option
PRs
v1.3.7
Summary
v1.3.4-1.3.6 accidentally requires newer node.js versions. v1.3.7 fixes it by reverting exports format.
This also fixes handling async atoms with chained dependency, which solves some cases.
PRs
v1.3.6
Summary
This fixes a false positive warning in some environments reported in #709. It also comes with some refactoring for more code maintainability.
PRs
- #717 refactor(core,utils,devtools): add dev methods in store
- #719 chore(build): pin esbuild for now and replace size plugin with github action
- #727 refactor(core): interruptable promise implementation
- #730 fix(core,utils): support unknown error type
- #732 chore(build): upgrade and unpin esbuild and fix compressed size action
v1.3.5
Summary
v1.3.4 requires node >= 14
in package.json, which may cause some issues in certain envs. As we don't require it, this reverts back to node >= 12
. This also adds babel preset in jotai/babel
.
PRs
v1.3.4
Summary
jotai
- Fix a bug that prevented to recover from async atom errors
jotai/utils
- Add a new
loadable
util which allows to avoid using<Suspense>
jotai/babel
- Add new "experimental" babel plugin to auto-attach
.debugLabel
to atom configs- Feedback is very welcomed.
PRs
v1.3.3
Summary
jotai
Previously, writing atom returns always void
, but this was troublesome when a derived atom has a custom write
function which returns a promise. Now, it returns a promise if write
returns a promise.
PRs
v1.3.2
v1.3.1
Summary
This changed the exports config to match with nodejs standard. If you experience some issues with your bundlers feel free to open issues to report them.
jotai/core
- Some code refactoring was done, which also changed other
jotai/*
bundles accordingly.
jotai/query
- Support
enabled
option (Previously, it wasn't working properly) - Support infinite query page refresh
jotai/urql
- Support
pause
option - Support
reexecute
callback
PRs
- #648 refactor: rename store to scope container
- #650 refactor: new store.ts based on old vanilla.ts
- #652 Fix(useAtomsSnapshot): Only use values in snapshots
- #653 fix(query): improve initial data method
- #654 refactor(core): remove duplicated code
- #665 feat(query): enabled functionality
- #655 fix(urql): support pause option
- #670 feat(query): infinite query page refresh
- #657 ESM/CJS Exports addition
- #668 feat(urql): support reexecute in atomWithQuery
v1.3.0
Summary
jotai
We fixed atom scope feature. useAtom
now takes optional scope
in the second argument and atom.scope
is deprecated. As it falls back to the previous behavior, the core is not breaking. (However, other jotai/*
has breaking changes in atom scope handling.)
jotai/utils
- New experimental
useHydrateAtoms
hook to restore atom values in render. - Fixed performance related issues for
waitForAll
anduseAtomCallback
.