Skip to content

Commit 7bec3ed

Browse files
chore: upgrade to react native 0.85 (#1894)
1 parent 3e8bc07 commit 7bec3ed

6 files changed

Lines changed: 1220 additions & 1180 deletions

File tree

.github/actions/setup-deps-rn-latest/action.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,7 @@ runs:
2828

2929
- name: Switch to React Native Latest
3030
run: |
31-
yarn add -D react-native@latest @react-native/babel-preset@latest
31+
yarn add -D react-native@latest \
32+
@react-native/babel-preset@latest \
33+
@react-native/jest-preset@latest
3234
shell: bash

.github/actions/setup-deps/action.yml

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,22 @@ runs:
3737
- name: Switch to React and React Native versions
3838
if: inputs.react-version != '' && inputs.react-native-version != ''
3939
run: |
40-
yarn add -D react@${{ inputs.react-version }} @types/react@${{ inputs.react-version }} react-native@${{ inputs.react-native-version }} @react-native/babel-preset@${{ inputs.react-native-version }}
40+
RN_VERSION='${{ inputs.react-native-version }}'
41+
RN_MINOR="${RN_VERSION#0.}"
42+
RN_MINOR="${RN_MINOR%%.*}"
43+
44+
deps=(
45+
"react@${{ inputs.react-version }}"
46+
"@types/react@${{ inputs.react-version }}"
47+
"react-native@${RN_VERSION}"
48+
"@react-native/babel-preset@${RN_VERSION}"
49+
)
50+
51+
if (( RN_MINOR >= 85 )); then
52+
deps+=("@react-native/jest-preset@${RN_VERSION}")
53+
else
54+
yarn remove @react-native/jest-preset
55+
fi
56+
57+
yarn add -D "${deps[@]}"
4158
shell: bash

.github/workflows/ci.yml

Lines changed: 68 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ jobs:
4343
- name: Typecheck
4444
run: yarn typecheck
4545

46-
typecheck-rn-0-84-0:
46+
typecheck-rn-0-85:
4747
runs-on: ubuntu-latest
48-
name: Typecheck RN 0.83.1
48+
name: Typecheck RN 0.85.0
4949
steps:
5050
- name: Checkout
5151
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -54,14 +54,30 @@ jobs:
5454
uses: ./.github/actions/setup-deps
5555
with:
5656
react-version: 19.2.3
57-
react-native-version: 0.84.0
57+
react-native-version: 0.85.0
5858

5959
- name: Typecheck
6060
run: yarn typecheck
6161

62-
typecheck-rn-0-83-2:
62+
typecheck-rn-0-84:
6363
runs-on: ubuntu-latest
64-
name: Typecheck RN 0.83.2
64+
name: Typecheck RN 0.84.1
65+
steps:
66+
- name: Checkout
67+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
68+
69+
- name: Setup Node.js and deps
70+
uses: ./.github/actions/setup-deps
71+
with:
72+
react-version: 19.2.3
73+
react-native-version: 0.84.1
74+
75+
- name: Typecheck
76+
run: yarn typecheck
77+
78+
typecheck-rn-0-83:
79+
runs-on: ubuntu-latest
80+
name: Typecheck RN 0.83.4
6581
steps:
6682
- name: Checkout
6783
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -70,12 +86,12 @@ jobs:
7086
uses: ./.github/actions/setup-deps
7187
with:
7288
react-version: 19.2.0
73-
react-native-version: 0.83.2
89+
react-native-version: 0.83.4
7490

7591
- name: Typecheck
7692
run: yarn typecheck
7793

78-
typecheck-rn-0-82-1:
94+
typecheck-rn-0-82:
7995
runs-on: ubuntu-latest
8096
name: Typecheck RN 0.82.1
8197
steps:
@@ -91,25 +107,25 @@ jobs:
91107
- name: Typecheck
92108
run: yarn typecheck
93109

94-
typecheck-rn-0-81-5:
110+
typecheck-rn-0-81:
95111
runs-on: ubuntu-latest
96-
name: Typecheck RN 0.81.5
112+
name: Typecheck RN 0.81.6
97113
steps:
98114
- name: Checkout
99115
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
100116

101117
- name: Setup Node.js and deps
102118
uses: ./.github/actions/setup-deps
103119
with:
104-
react-version: 19.1.0
105-
react-native-version: 0.81.5
120+
react-version: 19.1.4
121+
react-native-version: 0.81.6
106122

107123
- name: Typecheck
108124
run: yarn typecheck
109125

110-
typecheck-rn-0-80-2:
126+
typecheck-rn-0-80:
111127
runs-on: ubuntu-latest
112-
name: Typecheck RN 0.80.2
128+
name: Typecheck RN 0.80.3
113129
steps:
114130
- name: Checkout
115131
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -118,14 +134,14 @@ jobs:
118134
uses: ./.github/actions/setup-deps
119135
with:
120136
react-version: 19.1.0
121-
react-native-version: 0.80.2
137+
react-native-version: 0.80.3
122138

123139
- name: Typecheck
124140
run: yarn typecheck
125141

126-
typecheck-rn-0-79-2:
142+
typecheck-rn-0-79:
127143
runs-on: ubuntu-latest
128-
name: Typecheck RN 0.79.2
144+
name: Typecheck RN 0.79.7
129145
steps:
130146
- name: Checkout
131147
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -134,12 +150,12 @@ jobs:
134150
uses: ./.github/actions/setup-deps
135151
with:
136152
react-version: 19.0.0
137-
react-native-version: 0.79.2
153+
react-native-version: 0.79.7
138154

139155
- name: Typecheck
140156
run: yarn typecheck
141157

142-
typecheck-rn-0-78-3:
158+
typecheck-rn-0-78:
143159
runs-on: ubuntu-latest
144160
name: Typecheck RN 0.78.3
145161
steps:
@@ -225,9 +241,9 @@ jobs:
225241
- name: Test
226242
run: yarn test:codemods
227243

228-
test-rn-0-84-0:
244+
test-rn-0-85:
229245
runs-on: ubuntu-latest
230-
name: Test RN 0.84.0
246+
name: Test RN 0.85.0
231247
steps:
232248
- name: Checkout
233249
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -236,14 +252,30 @@ jobs:
236252
uses: ./.github/actions/setup-deps
237253
with:
238254
react-version: 19.2.3
239-
react-native-version: 0.84.0
255+
react-native-version: 0.85.0
240256

241257
- name: Test
242258
run: yarn test:ci
243259

244-
test-rn-0-83-2:
260+
test-rn-0-84:
245261
runs-on: ubuntu-latest
246-
name: Test RN 0.83.2
262+
name: Test RN 0.84.1
263+
steps:
264+
- name: Checkout
265+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
266+
267+
- name: Setup Node.js and deps
268+
uses: ./.github/actions/setup-deps
269+
with:
270+
react-version: 19.2.3
271+
react-native-version: 0.84.1
272+
273+
- name: Test
274+
run: yarn test:ci
275+
276+
test-rn-0-83:
277+
runs-on: ubuntu-latest
278+
name: Test RN 0.83.4
247279
steps:
248280
- name: Checkout
249281
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -252,12 +284,12 @@ jobs:
252284
uses: ./.github/actions/setup-deps
253285
with:
254286
react-version: 19.2.0
255-
react-native-version: 0.83.2
287+
react-native-version: 0.83.4
256288

257289
- name: Test
258290
run: yarn test:ci
259291

260-
test-rn-0-82-1:
292+
test-rn-0-82:
261293
runs-on: ubuntu-latest
262294
name: Test RN 0.82.1
263295
steps:
@@ -273,25 +305,25 @@ jobs:
273305
- name: Test
274306
run: yarn test:ci
275307

276-
test-rn-0-81-5:
308+
test-rn-0-81:
277309
runs-on: ubuntu-latest
278-
name: Test RN 0.81.5
310+
name: Test RN 0.81.6
279311
steps:
280312
- name: Checkout
281313
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
282314

283315
- name: Setup Node.js and deps
284316
uses: ./.github/actions/setup-deps
285317
with:
286-
react-version: 19.1.0
287-
react-native-version: 0.81.5
318+
react-version: 19.1.4
319+
react-native-version: 0.81.6
288320

289321
- name: Test
290322
run: yarn test:ci
291323

292-
test-rn-0-80-2:
324+
test-rn-0-80:
293325
runs-on: ubuntu-latest
294-
name: Test RN 0.80.2
326+
name: Test RN 0.80.3
295327
steps:
296328
- name: Checkout
297329
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -300,14 +332,14 @@ jobs:
300332
uses: ./.github/actions/setup-deps
301333
with:
302334
react-version: 19.1.0
303-
react-native-version: 0.80.2
335+
react-native-version: 0.80.3
304336

305337
- name: Test
306338
run: yarn test:ci
307339

308-
test-rn-0-79-2:
340+
test-rn-0-79:
309341
runs-on: ubuntu-latest
310-
name: Test RN 0.79.2
342+
name: Test RN 0.79.7
311343
steps:
312344
- name: Checkout
313345
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -316,12 +348,12 @@ jobs:
316348
uses: ./.github/actions/setup-deps
317349
with:
318350
react-version: 19.0.0
319-
react-native-version: 0.79.2
351+
react-native-version: 0.79.7
320352

321353
- name: Test
322354
run: yarn test:ci
323355

324-
test-rn-0-78-3:
356+
test-rn-0-78:
325357
runs-on: ubuntu-latest
326358
name: Test RN 0.78.3
327359
steps:

AGENTS.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,3 +53,9 @@ The project uses `yarn` for dependency management and script execution.
5353
- `src/index.ts`: Main entry point, re-exports `pure` and adds side effects (auto-cleanup).
5454
- `examples/`: Example React Native applications using the library.
5555
- `website/`: Documentation website.
56+
57+
## PR draft workflow:
58+
59+
- Maintain `PR.txt` at the repository root using the structure from `.github/pull_request_template.md`.
60+
- Keep `PR.txt` aligned with the current branch diff relative to `origin/main`, including tests actually run and any known validation gaps.
61+
- Do not commit `PR.txt`.

package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,8 @@
7575
"@babel/preset-react": "^7.28.5",
7676
"@babel/preset-typescript": "^7.28.5",
7777
"@callstack/eslint-config": "^15.0.0",
78-
"@react-native/babel-preset": "0.84.0",
78+
"@react-native/babel-preset": "0.85.0",
79+
"@react-native/jest-preset": "0.85.0",
7980
"@release-it/conventional-changelog": "^10.0.2",
8081
"@relmify/jest-serializer-strip-ansi": "^1.0.2",
8182
"@types/jest": "^30.0.0",
@@ -89,7 +90,7 @@
8990
"jest": "^30.2.0",
9091
"prettier": "^3.6.2",
9192
"react": "19.2.3",
92-
"react-native": "0.84.0",
93+
"react-native": "0.85.0",
9394
"react-native-gesture-handler": "^2.30.0",
9495
"release-it": "^19.0.6",
9596
"test-renderer": "0.14.0",

0 commit comments

Comments
 (0)