Releases: pmndrs/zustand
v4.5.0
This version adds a new capability for SSR/Hydration.
What's Changed
- feat: getInitialState by @TkDodo in #2277
- fix: Add deprecation notice for getServerState() in WithReact type by @charkour in #2266
New Contributors
- @Jontii made their first contribution in #2228
- @wherehows made their first contribution in #2239
- @ahulterstrom made their first contribution in #2252
- @JaeBrian made their first contribution in #2267
- @CodyCodes95 made their first contribution in #2218
Full Changelog: v4.4.7...v4.5.0
v4.4.7
There's a small fix for a use case with an non-object value in store.
What's Changed
- fix(vanilla): unexpected null state update behavior by @wulimao49 in #2213
New Contributors
- @isiagi made their first contribution in #2208
- @ADTC made their first contribution in #2202
- @wulimao49 made their first contribution in #2213
Full Changelog: v4.4.6...v4.4.7
v4.4.6
v4.4.5 has an issue with some TypeScript configs about module resolution. It should be fixed now. Thanks for the patience.
What's Changed
- Update export types by @dbritto-dev in #2170
New Contributors
Full Changelog: v4.4.5...v4.4.6
v4.4.5
Hopefully, it should fix some issues with Node.js environment including Next.js.
What's Changed
- fix: importing CJS React in ESM by @dai-shi in #2154
- Apply publint recommendations by @dbritto-dev in #2157
New Contributors
- @plrs9816 made their first contribution in #2137
- @Brammm made their first contribution in #2139
- @sobies93 made their first contribution in #2142
Full Changelog: v4.4.4...v4.4.5
v4.4.4
v4.4.3
The changes in v4.4.2 were troublesome for some users. This version should fix/mitigate such cases.
What's Changed
- fix(shallow): Extract shallow vanilla and react by @dbritto-dev in #2097
- fix(types): mitigate devtools typing by @dai-shi in #2099
Full Changelog: v4.4.2...v4.4.3
v4.4.2
This adds useShallow
hook to cover some use cases that are deprecated with v4.4.0 change. Check out the guide.
Migration Guide
#1991 requires something like below if you are using the devtools
middleware and TypeScript.
import { devtools } from 'zustand/middleware'
+ import type {} from '@redux-devtools/extension'
What's Changed
- fix(types)(middleware/devtools): avoid copying types by @dai-shi in #1991
- fix(traditional): make defaultEqualityFn optional in TS Types by @charkour in #2060
- feat: add useShallow by @FaberVitale in #2090
New Contributors
- @aykutkardas made their first contribution in #1993
- @michelts made their first contribution in #1997
- @elusive made their first contribution in #2001
- @mayank1513 made their first contribution in #2015
- @fdb made their first contribution in #2029
- @tmkx made their first contribution in #2032
- @OshriAsulin made their first contribution in #2028
- @ivanquirino made their first contribution in #2047
- @stavkamil made their first contribution in #2071
- @NaamuKim made their first contribution in #2088
- @FaberVitale made their first contribution in #2090
Full Changelog: v4.4.1...v4.4.2
v4.4.1
Fixes some issues reported with the deprecated feature in v4.4.0.
What's Changed
- fix(types): accept undefined equalityFn for the deprecated useStore by @dai-shi in #1972
- fix: improve warning for deprecated equalityFn by @dai-shi in #1976
New Contributors
- @kangju2000 made their first contribution in #1969
Full Changelog: v4.4.0...v4.4.1
v4.4.0
This adds new zustand/traditional
entry point and deprecates equalityFn from zustand
.
Migration Guide
If you don't use custom equalityFn
, nothing is required.
For those who use custom equalityFn such as shallow
:
// previously
import { create } from 'zustand'
const useFooStore = create((set) => ...)
// now
import { createWithEqualityFn } from 'zustand/traditional'
const useFooStore = createWithEqualityFn((set) => ..., Object.is)
// Object.is is the default quailtyFn in zustand create; to match that behavior, pass that function here. This can be updated to shallow or anything else
What's Changed
- feat: deprecate equalityFn and add createWithEqualityFn by @dai-shi in #1945
- fix: declare @types/react as peerDep to avoid phantom dep by @leviosa-e in #1963
New Contributors
- @luizeboli made their first contribution in #1915
- @mohammedmulazada made their first contribution in #1931
- @coder054 made their first contribution in #1932
- @itayperry made their first contribution in #1957
- @cwtuan made their first contribution in #1953
- @tiagobento made their first contribution in #1962
- @leviosa-e made their first contribution in #1963
Full Changelog: v4.3.9...v4.4.0
v4.3.9
This includes a small improvement for production build mostly for Vite users. Docs have been improved too!
What's Changed
New Contributors
- @Debbl made their first contribution in #1792
- @Nipodemos made their first contribution in #1782
- @vadimshvetsov made their first contribution in #1800
- @bobylito made their first contribution in #1810
- @celineling made their first contribution in #1804
- @valerii15298 made their first contribution in #1819
- @Hecmatyar made their first contribution in #1816
- @203x made their first contribution in #1826
- @Ciensprog made their first contribution in #1844
- @Romainlg29 made their first contribution in #1843
- @dcorb made their first contribution in #1847
- @ivoilic made their first contribution in #1856
- @Kiku-CN made their first contribution in #1889
- @LartyHD made their first contribution in #1893
- @ChoiHyunjin made their first contribution in #1903
- @thesuryavivek made their first contribution in #1906
- @thedipankarroy made their first contribution in #1913
Full Changelog: v4.3.8...v4.3.9