Skip to content

Commit cecaa13

Browse files
authored
Support RN 0.81 (#8186)
* Support RN 0.81 * Fixed roboletric tests on RN 0.81.5
1 parent 872e62c commit cecaa13

File tree

11 files changed

+402
-474
lines changed

11 files changed

+402
-474
lines changed

.buildkite/jobs/pipeline.android_rn_79.yml renamed to .buildkite/jobs/pipeline.android_rn_81.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
- label: ":android: Android (RN 0.79.0)"
1+
- label: ":android: Android (RN 0.81.5)"
22
env:
33
JAVA_HOME: /opt/openjdk/jdk-17.0.9.jdk/Contents/Home/
4-
REACT_NATIVE_VERSION: 0.79.0
4+
REACT_NATIVE_VERSION: 0.81.5
55
command:
66
- "nvm install"
77
- "./scripts/ci.android.sh"
8-
key: "android_rn_79"
8+
key: "android_rn_81"
99
timeout_in_minutes: 90
1010
artifact_paths: "/Users/builder/uibuilder/work/playground/artifacts/**/*"
1111

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
- label: ":ios: iOS (RN 0.79.0)"
1+
- label: ":ios: iOS (RN 0.81.5)"
22
env:
3-
REACT_NATIVE_VERSION: 0.79.0
3+
REACT_NATIVE_VERSION: 0.81.5
44
command:
55
- "nvm install"
66
- "./scripts/ci.ios.sh"
7-
key: "ios_rn_79"
7+
key: "ios_rn_81"
88
timeout_in_minutes: 90
99
artifact_paths: "/Users/builder/uibuilder/work/playground/artifacts/**/*"
1010

.buildkite/pipeline.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ echo "steps:"
55
cat .buildkite/jobs/pipeline.release.yml
66
cat .buildkite/jobs/pipeline.android_rn_77.yml
77
cat .buildkite/jobs/pipeline.android_rn_78.yml
8-
cat .buildkite/jobs/pipeline.android_rn_79.yml
98
cat .buildkite/jobs/pipeline.android_rn_80.yml
9+
cat .buildkite/jobs/pipeline.android_rn_81.yml
1010
cat .buildkite/jobs/pipeline.ios_rn_77.yml
1111
cat .buildkite/jobs/pipeline.ios_rn_78.yml
12-
cat .buildkite/jobs/pipeline.ios_rn_79.yml
1312
cat .buildkite/jobs/pipeline.ios_rn_80.yml
13+
cat .buildkite/jobs/pipeline.ios_rn_81.yml
1414
cat .buildkite/jobs/pipeline.publish.yml
1515

1616

android/build.gradle

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ import org.gradle.api.tasks.testing.logging.TestExceptionFormat
33

44
buildscript {
55
ext {
6-
kotlinVersion = "1.9.24"
6+
kotlinVersion = "2.1.20"
77
RNNKotlinVersion = kotlinVersion
88
detoxKotlinVersion = kotlinVersion
9-
compileSdkVersion = 35
10-
buildToolsVersion = "35.0.0"
9+
compileSdkVersion = 36
10+
buildToolsVersion = "36.0.0"
1111
minSdkVersion = 24
12-
targetSdkVersion = 34
13-
ndkVersion = "26.1.10909125"
12+
targetSdkVersion = 36
13+
ndkVersion = "27.1.12297006"
1414
}
1515

1616
repositories {
@@ -50,12 +50,12 @@ def safeExtGetFallbackLowerBound(prop, fallback) {
5050
Math.max(safeExtGet(prop, fallback), fallback)
5151
}
5252

53-
def DEFAULT_COMPILE_SDK_VERSION = 35
53+
def DEFAULT_COMPILE_SDK_VERSION = 36
5454
def DEFAULT_MIN_SDK_VERSION = 24
55-
def DEFAULT_TARGET_SDK_VERSION = 35
56-
def DEFAULT_KOTLIN_VERSION = "1.5.31"
55+
def DEFAULT_TARGET_SDK_VERSION = 36
56+
def DEFAULT_KOTLIN_VERSION = "2.1.20"
5757
def DEFAULT_KOTLIN_STDLIB = 'kotlin-stdlib-jdk8'
58-
def DEFAULT_BUILD_TOOLS_VERSION = "35.0.0"
58+
def DEFAULT_BUILD_TOOLS_VERSION = "36.0.0"
5959
def kotlinVersion = safeExtGet("RNNKotlinVersion", DEFAULT_KOTLIN_VERSION)
6060
def kotlinStdlib = safeExtGet('RNNKotlinStdlib', DEFAULT_KOTLIN_STDLIB)
6161
def kotlinCoroutinesCore = safeExtGet('RNNKotlinCoroutinesCore', '1.5.2')
@@ -144,7 +144,7 @@ dependencies {
144144
if ("Playground".toLowerCase() == rootProject.name.toLowerCase()) {
145145
// tests only for our playground
146146
testImplementation 'junit:junit:4.13.2'
147-
testImplementation "org.robolectric:robolectric:4.14.1"
147+
testImplementation "org.robolectric:robolectric:4.16"
148148
testImplementation 'org.assertj:assertj-core:3.11.1'
149149
testImplementation 'org.mockito:mockito-core:4.0.0'
150150
testImplementation 'com.squareup.assertj:assertj-android:1.2.0'
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Android SDK 36 requires Java 21, so we force SDK 35 for tests (works with Java 17)
2+
sdk=35
3+

autolink/fixtures/rn79/build.gradle.template

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
buildscript {
22
ext {
3-
buildToolsVersion = "35.0.0"
3+
buildToolsVersion = "36.0.0"
44
minSdkVersion = 24
5-
compileSdkVersion = 35
6-
targetSdkVersion = 35
5+
compileSdkVersion = 36
6+
targetSdkVersion = 36
77
ndkVersion = "27.1.12297006"
8-
kotlinVersion = "2.0.21"
8+
kotlinVersion = "2.1.20"
99
}
1010
repositories {
1111
google()

package.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -88,15 +88,15 @@
8888
"@babel/preset-env": "^7.25.3",
8989
"@babel/runtime": "^7.25.0",
9090
"@babel/types": "7.25.0",
91-
"@react-native-community/cli": "19.1.1",
92-
"@react-native-community/cli-platform-android": "19.1.1",
93-
"@react-native-community/cli-platform-ios": "19.1.1",
91+
"@react-native-community/cli": "20.0.0",
92+
"@react-native-community/cli-platform-android": "20.0.0",
93+
"@react-native-community/cli-platform-ios": "20.0.0",
9494
"@react-native-community/datetimepicker": "^8.2.0",
9595
"@react-native-community/netinfo": "^11.4.1",
96-
"@react-native/babel-preset": "0.80.2",
97-
"@react-native/eslint-config": "0.80.2",
98-
"@react-native/metro-config": "0.80.2",
99-
"@react-native/typescript-config": "0.80.2",
96+
"@react-native/babel-preset": "0.81.5",
97+
"@react-native/eslint-config": "0.81.5",
98+
"@react-native/metro-config": "0.81.5",
99+
"@react-native/typescript-config": "0.81.5",
100100
"@testing-library/jest-native": "^5.4.2",
101101
"@testing-library/react-native": "^13.0.1",
102102
"@types/hoist-non-react-statics": "^3.3.6",
@@ -125,7 +125,7 @@
125125
"pngjs": "^6.0.0",
126126
"prettier": "2.8.8",
127127
"react": "19.1.0",
128-
"react-native": "0.80.2",
128+
"react-native": "0.81.5",
129129
"react-native-builder-bob": "^0.40.13",
130130
"react-native-fast-image": "^8.6.3",
131131
"react-native-gesture-handler": "^2.22.1",
@@ -140,7 +140,7 @@
140140
"ssim.js": "^3.5.0",
141141
"ts-mockito": "^2.3.1",
142142
"typedoc": "0.x.x",
143-
"typescript": "5.0.4"
143+
"typescript": "^5.8.3"
144144
},
145145
"workspaces": [
146146
"playground"
@@ -182,4 +182,4 @@
182182
]
183183
]
184184
}
185-
}
185+
}

playground/android/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ buildscript {
88
kotlinVersion = ext.rnInfo.isRN79OrHigher ? '2.1.20' : '2.0.21'
99
RNNKotlinVersion = kotlinVersion
1010
detoxKotlinVersion = kotlinVersion
11-
compileSdkVersion = 35
12-
buildToolsVersion = "35.0.0"
11+
compileSdkVersion = 36
12+
buildToolsVersion = "36.0.0"
1313
minSdkVersion = 24
14-
targetSdkVersion = 35
14+
targetSdkVersion = 36
1515
ndkVersion = "27.1.12297006"
1616
}
1717

playground/package.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,15 @@
3232
"@babel/preset-env": "^7.25.3",
3333
"@babel/runtime": "^7.25.0",
3434
"@babel/types": "7.25.0",
35-
"@react-native-community/cli": "19.1.1",
36-
"@react-native-community/cli-platform-android": "19.1.1",
37-
"@react-native-community/cli-platform-ios": "19.1.1",
35+
"@react-native-community/cli": "20.0.0",
36+
"@react-native-community/cli-platform-android": "20.0.0",
37+
"@react-native-community/cli-platform-ios": "20.0.0",
3838
"@react-native-community/datetimepicker": "^8.2.0",
3939
"@react-native-community/netinfo": "^11.4.1",
40-
"@react-native/babel-preset": "0.80.2",
41-
"@react-native/eslint-config": "0.80.2",
42-
"@react-native/metro-config": "0.80.2",
43-
"@react-native/typescript-config": "0.80.2",
40+
"@react-native/babel-preset": "0.81.5",
41+
"@react-native/eslint-config": "0.81.5",
42+
"@react-native/metro-config": "0.81.5",
43+
"@react-native/typescript-config": "0.81.5",
4444
"@testing-library/jest-native": "^5.4.2",
4545
"@testing-library/react-native": "^13.0.1",
4646
"@types/hoist-non-react-statics": "^3.3.6",
@@ -68,7 +68,7 @@
6868
"pngjs": "^6.0.0",
6969
"prettier": "2.8.8",
7070
"react": "19.1.0",
71-
"react-native": "0.80.2",
71+
"react-native": "0.81.5",
7272
"react-native-fast-image": "^8.6.3",
7373
"react-native-gesture-handler": "^2.22.1",
7474
"react-native-monorepo-config": "^0.3.0",
@@ -82,7 +82,7 @@
8282
"shell-utils": "1.x.x",
8383
"ts-mockito": "^2.3.1",
8484
"typedoc": "0.x.x",
85-
"typescript": "5.0.4"
85+
"typescript": "^5.8.3"
8686
},
8787
"husky": {
8888
"hooks": {

website/docs/docs/docs-Installing.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ sidebar_label: Installation
77
## Requirements
88

99
- node >= 18.18
10-
- react-native >0.77 - 0.80 (0.81 - 0.83 support is in progress)
10+
- react-native >0.77 - 0.81 (0.82 - 0.83 support is in progress)
1111
- new architecture enabled (if you are not using the new architecture, you can still use react-native-navigation of version 7.x.x with react-native 0.73 and lower)
1212

1313
## npm or yarn

0 commit comments

Comments
 (0)