[Snyk] Upgrade @reduxjs/toolkit from 2.0.1 to 2.2.6 #4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Snyk has created this PR to upgrade @reduxjs/toolkit from 2.0.1 to 2.2.6.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
The recommended version is 8 versions ahead of your current version.
The recommended version was released on a month ago.
Release notes
Package name: @reduxjs/toolkit
This bugfix release:
useIsomorphicLayoutEffect
usage in line with React Redux in React Native environmentsFetchBaseQueryArgs
typecreateEntityAdapter
sorting perf improvements that could (in specific cases) cause Immer to throw an errorWhat's Changed
useIsomorphicLayoutEffect
usage in React Native environments by @ aryaemami59 in #4436Full Changelog: v2.2.5...v2.2.6
This bugfix release fixes an issue in the recent
createEntityAdapter
sorting perf improvements that could (in specific cases) cause Immer to throw an error when trying to read a plain JS value instead of a proxy-wrapped value.What's Changed
current
may fail if the value is not a draft by @ markerikson in #4412Full Changelog: v2.2.4...v2.2.5
This bugfix release improves sorting performance in
createEntityAdapter
, shrinks the code size in matcher utilities, fixes assorted issues with query hooks, and makes several TS tweaks.Changelog
Entity Adapter Sorting Performance
Users reported in #4252 that the sorting performance of
createEntityAdapter
seemed abnormally bad - the provided comparison functions were being called far more times than expected.Upon investigation, we had a couple of problems. We were always starting from an array that was in insertion order, not the existing sorted order, and that would always require significant effort to re-sort even if there weren't any actual changes to the sorted results. Also, the sorting checks required frequent access to Immer's Proxy-wrapped values, even in cases where all we needed was the plain state values for comparison purposes.
We've reworked the internal sorting logic to always start from the existing sorted array, do reads against a plain value to avoid the Proxy getter overhead where possible, and optimized inserts into existing sorted arrays. This should significantly speed up sorted entity adapter behavior.
Matcher Code Size Optimization
We've reworked the internals of the thunk-related matchers to deduplicate some of the logic, shaving a few bytes off the final bundle size.
RTK Query Hook Updates
defaultSerializeQueryArgs
can now handleBigInt
values safely.The
isLoading
flag logic was improved to handle errors when a query hook tries to subscribe.TS Updates
create.asyncThunk
's types were improved to avoid cases where it might inferany
.We've made several internal types changes to work correctly with React 19's upcoming types.
The
retryCondition
method now receivesunknown
as an argument, instead of always assuming the user is usingfetchBaseQuery
.Other Changes
The Reselect dep has been bumped to 5.1.0 to match the expected internal usage of
createSelector.withTypes()
.What's Changed
Context
references to match the new nullableContext
by @ aryaemami59 in #4336GetThunkAPI
type by @ shrouxm in #4289React.ReactChild
type by @ aryaemami59 in #4382JSX
global namespace withReact.JSX
by @ aryaemami59 in #4381useRef
usages to be called with an explicit argument ofundefined
. by @ aryaemami59 in #4380reselect
dependency to 5.1.0 to resolve #4200 by @ aryaemami59 in #4400initiate()
action for mutations. by @ jared-ca in #4337Full Changelog: v2.2.3...v2.2.4
This bugfix release fixes the types for functions that accept a React Context instance to match the changes in React Redux v9.
What's Changed
.withTypes
by @ aryaemami59 in #4308Full Changelog: v2.2.2...v2.2.3
This patch release fixes an incorrect build setting for the
legacy-esm
artifacts, and fixes an issue with RTKQ query hooks didn't always remove the cache entries if arguments were changed rapidly.Changes
legacy-esm
Artifact TranspilationThe
legacy-esm
build artifacts are intended for use by Webpack 4. Those were supposed to be transpiled to target"es2017"
, but were in fact still set to target"esnext"
- an oversight during the 2.0 development cycle. This release fixes that setting, so those artifacts are now correctly transpiled.Other Fixes
RTKQ query hooks now handle additional actions around argument changes that should result in cache entries being removed.
Additionally, 2.2.1 contained a fix to an incorrectly named type:
TypedUseMutationTrigger
is nowTypedMutationTrigger
.What's Changed
Full Changelog: v2.2.0...v2.2.2
Release 2.2.1
This minor release:
entityAdapter.getInitialState(additionalProps, entities)
to allow prefilling stateentityAdapter.setAll(entityAdapter.getInitialState(additionalProps), entities)
undefined
if no additional properties are desiredcombineSlices
with no static reducersconst combinedReducer = combineSlices().withLazyLoadedSlices<LazyLoadedSlices>()
would have thrown an error'throw'
value foroverrideExisting
ininjectEndpoints
, which throws an error if a definition is injected with a name which is already usedenhanceEndpoints
LazyLoadedSlices
)action.meta.arg.isPrefetch
value to query thunk actions when prefetchedWhat's Changed
cli.js
tocli.mjs
by @ aryaemami59 in #4169withLazyLoadedSlices
by @ aryaemami59 in #4172overrideExisting
by @ ffluk3 in #4189tsconfig.json
files of all CodesandBox examples by @ aryaemami59 in #4190New Contributors
Full Changelog: v2.1.0...v2.2.0
This minor release:
listenerMiddleware
andcreateDraftSafeSelector
skipPollingIfUnfocused
option to RTK QuerycreateSelector
instance used by RTK Querythis
valuecreate.asyncThunk
type parametersqueryFn
sWhat's Changed
listenerMiddleware.withTypes<RootState, AppDispatch>()
method by @ aryaemami59 in #4049.withTypes
tocreateDraftSafeSelector
by @ aryaemami59 in #4080this
in createSlice by @ EskiMojo14 in #4071tsconfig.typetests.json
to include all TS files by @ aryaemami59 in