Skip to content

Commit 11f7b7c

Browse files
authored
Update Immer to v11 for better update performance (#5141)
* Ignore some local dev files * Bump Immer to v11 * Remove Immer iteration override
1 parent 166bcc3 commit 11f7b7c

File tree

4 files changed

+12
-14
lines changed

4 files changed

+12
-14
lines changed

.gitignore

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,9 @@ tsconfig.vitest-temp.json
3535

3636
# node version manager files
3737
.node-version
38-
.nvmrc
38+
.nvmrc
39+
40+
# Assorted local docs
41+
docs/dev-plans
42+
# Perf protobufs
43+
*.pb.gz

packages/toolkit/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,7 @@
261261
"dependencies": {
262262
"@standard-schema/spec": "^1.0.0",
263263
"@standard-schema/utils": "^0.3.0",
264-
"immer": "^10.2.0",
264+
"immer": "^11.0.0",
265265
"redux": "^5.0.1",
266266
"redux-thunk": "^3.1.0",
267267
"reselect": "^5.1.0"

packages/toolkit/src/createReducer.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,6 @@ import { executeReducerBuilderCallback } from './mapBuilders'
1111
import type { NoInfer, TypeGuard } from './tsHelpers'
1212
import { freezeDraftable } from './utils'
1313

14-
// Immer 10.2 defaults to still using strict iteration (specifically
15-
// `Reflect.ownKeys()` for symbols support). However, we assume that
16-
// Redux users are not using symbols as state keys, so we'll override
17-
// this to prefer `Object.keys()` instead, as it provides a ~10% speedup.
18-
// If users do need symbol support, they can call `setUseStrictIteration(true)` themselves.
19-
setUseStrictIteration(false)
20-
2114
/**
2215
* Defines a mapping from action types to corresponding action object shapes.
2316
*

yarn.lock

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7695,7 +7695,7 @@ __metadata:
76957695
eslint-plugin-react: "npm:^7.23.2"
76967696
eslint-plugin-react-hooks: "npm:^4.2.0"
76977697
fs-extra: "npm:^9.1.0"
7698-
immer: "npm:^10.2.0"
7698+
immer: "npm:^11.0.0"
76997699
invariant: "npm:^2.2.4"
77007700
jsdom: "npm:^25.0.1"
77017701
json-stringify-safe: "npm:^5.0.1"
@@ -18728,10 +18728,10 @@ __metadata:
1872818728
languageName: node
1872918729
linkType: hard
1873018730

18731-
"immer@npm:^10.2.0":
18732-
version: 10.2.0
18733-
resolution: "immer@npm:10.2.0"
18734-
checksum: 10/d73e218c8f8ffbb39f9290dfafa478b94af73403dcf26b5672eef35233bb30f09ffe231f8a78a6c9cb442968510edd89e851776ec90a5ddfa82cee6db6b35137
18731+
"immer@npm:^11.0.0":
18732+
version: 11.0.0
18733+
resolution: "immer@npm:11.0.0"
18734+
checksum: 10/d79824edac56741986d80f091fcec00330e7fa4406a82f9e6bb30997c2674c468afe5196750456fc592c7e40cf903d968e04f8035efc9f26c073b5ed2b52462f
1873518735
languageName: node
1873618736
linkType: hard
1873718737

0 commit comments

Comments
 (0)