Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
8e375d1
Enable flexible page sizes in CMake build
chrispader Jun 20, 2025
ea049e5
Merge branch 'main' into @chrispader/enable-16kb-memory-page-size-on-…
chrispader Jun 24, 2025
02a8c55
chore: update HybridApp build.gradle
chrispader Jun 24, 2025
dbd619a
Update cspell.json
chrispader Jun 24, 2025
4d15b45
chore: enable legacy packaging
chrispader Jun 24, 2025
07ed7b4
chore: add 16kb mode to other libraries
chrispader Jun 24, 2025
37382ec
chore: update nitro
chrispader Jun 24, 2025
3eb2074
chore: react-native-safe-area-context patch
chrispader Jun 28, 2025
341db21
chore: update react-native-vision-camera
chrispader Jun 28, 2025
588b069
chore: @rnmapbox/maps
chrispader Jun 28, 2025
64eac65
chore: add details.md for react-native-safe-area-context patch
chrispader Jun 28, 2025
26a26d4
chore: @react-native-firebase/crashlytics
chrispader Jun 28, 2025
400a145
fix: update PR link in details.md
chrispader Jun 28, 2025
8f749ba
chore: @expensify/react-native-live-markdown
chrispader Jun 28, 2025
84fc3ee
Update @expensify+react-native-live-markdown+0.1.288+001+android-jni-…
chrispader Jun 28, 2025
031f201
chore: expo-av and expo-modules-core
chrispader Jun 28, 2025
c41c929
chore: react-native-fs
chrispader Jun 28, 2025
2b3bc77
fix: expo-av patch
chrispader Jun 28, 2025
6cd8118
Update @react-native-firebase+crashlytics+12.9.3+002+android-jni-pack…
chrispader Jun 28, 2025
1d2c632
Update @rnmapbox+maps+10.1.33+002+android-jni-packaging-for-16kb-memo…
chrispader Jun 28, 2025
fe94021
chore: rename patches
chrispader Jun 28, 2025
80a4f9a
chore: react-native-pdf
chrispader Jun 28, 2025
09c7f74
chore: update nitro-sqlite
chrispader Jun 28, 2025
0dd8908
chore: rename and update initial onfido patch
chrispader Jul 17, 2025
e0954e8
chore: patch onfido for android 16kb memory alignment
chrispader Jul 17, 2025
115c76c
Merge branch 'main' into @chrispader/enable-16kb-memory-page-size-on-…
chrispader Jul 17, 2025
10dbc46
chore: move back onfido patch
chrispader Jul 17, 2025
dacbddf
chore: update live-markdown and remove patch
chrispader Jul 17, 2025
0d227c9
chore: ignore another file in cspell
chrispader Jul 17, 2025
bb68e27
Update @onfido+react-native-sdk+10.6.0.patch
chrispader Jul 17, 2025
db24d5d
chore: remove useLegacyPackaging
chrispader Jul 17, 2025
2fa9a25
chore: update @rnmapbox/map
chrispader Jul 17, 2025
bbcc730
chore: updat react-native-pdf
chrispader Jul 17, 2025
c51f312
chore: update firebase crashlytics patch
chrispader Jul 17, 2025
f4ca86e
Delete @rnmapbox+maps+10.1.39+001+initial.patch
chrispader Jul 17, 2025
ed986c6
chore: new @rnmapbox/maps patch
chrispader Jul 17, 2025
ab70afb
Create check-android-16kb-memory-page-size-compatibility.sh
chrispader Jul 17, 2025
fabb9e9
Merge branch 'main' into @chrispader/enable-16kb-memory-page-size-on-…
chrispader Jul 17, 2025
f801c92
chore: extract vision camrea bump
chrispader Jul 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,18 @@ android {
// Supported language variants must be declared here to avoid from being removed during the compilation.
// This also helps us to not include unnecessary language variants in the APK.
resConfigs "en", "es"

externalNativeBuild {
cmake {
arguments "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
}
}
}

packagingOptions {
jniLibs {
useLegacyPackaging true
}
}

flavorDimensions "default"
Expand Down
2 changes: 2 additions & 0 deletions cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -727,6 +727,8 @@
"modules/ExpensifyNitroUtils/nitrogen/**",
"modules/ExpensifyNitroUtils/android/build.gradle",
"modules/ExpensifyNitroUtils/android/src/main/cpp/**",
"modules/hybrid-app/android/build.gradle",
"modules/background-task/android/build.gradle",
"src/TIMEZONES.ts",
"tests/unit/EmojiTest.ts",
"tests/unit/FastSearchTest.ts",
Expand Down
2 changes: 1 addition & 1 deletion modules/ExpensifyNitroUtils/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ android {
externalNativeBuild {
cmake {
cppFlags "-O2 -frtti -fexceptions -Wall -fstack-protector-all"
arguments "-DANDROID_STL=c++_shared"
arguments "-DANDROID_STL=c++_shared", "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
abiFilters (*reactNativeArchitectures())
}
}
Expand Down
5 changes: 5 additions & 0 deletions modules/background-task/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,11 @@ android {
targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()

externalNativeBuild {
cmake {
arguments "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
}
}
}

buildFeatures {
Expand Down
6 changes: 6 additions & 0 deletions modules/hybrid-app/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@ android {
minSdkVersion getExtOrIntegerDefault("minSdkVersion")
targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", "true"

externalNativeBuild {
cmake {
arguments "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
}
}
}

buildFeatures {
Expand Down
16 changes: 9 additions & 7 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@
"@react-navigation/native-stack": "7.3.14",
"@react-navigation/stack": "7.3.3",
"@react-ng/bounds-observer": "^0.2.1",
"@rnmapbox/maps": "10.1.33",
"@rnmapbox/maps": "10.1.39",
"@shopify/flash-list": "1.8.2",
"@ua/react-native-airship": "~24.4.0",
"awesome-phonenumber": "^5.4.0",
Expand Down Expand Up @@ -180,7 +180,7 @@
"react-native-nitro-sqlite": "9.1.10",
"react-native-onyx": "^2.0.117",
"react-native-pager-view": "6.5.3",
"react-native-pdf": "6.7.3",
"react-native-pdf": "6.7.5",
"react-native-performance": "^5.1.4",
"react-native-permissions": "^5.4.0",
"react-native-picker-select": "git+https://github.com/Expensify/react-native-picker-select.git#07d60d78d4772d47afd7a744940fc6b6d1881806",
Expand Down
6 changes: 3 additions & 3 deletions patches/@onfido+react-native-sdk+10.6.0.patch
Original file line number Diff line number Diff line change
Expand Up @@ -1176,7 +1176,7 @@ index 0000000..998f79b
+@end
diff --git a/node_modules/@onfido/react-native-sdk/js/NativeOnfidoModule.ts b/node_modules/@onfido/react-native-sdk/js/NativeOnfidoModule.ts
new file mode 100644
index 0000000..c48f86e
index 0000000..8ed5cd0
--- /dev/null
+++ b/node_modules/@onfido/react-native-sdk/js/NativeOnfidoModule.ts
@@ -0,0 +1,13 @@
Expand Down Expand Up @@ -1227,7 +1227,7 @@ index db35471..fa6c1ef 100644

addCustomMediaCallback(callback: (result: OnfidoMediaResult) => OnfidoMediaResult) {
diff --git a/node_modules/@onfido/react-native-sdk/onfido-react-native-sdk.podspec b/node_modules/@onfido/react-native-sdk/onfido-react-native-sdk.podspec
index a9de0d0..da83d9f 100644
index a9de0d0..ed1e6fd 100644
--- a/node_modules/@onfido/react-native-sdk/onfido-react-native-sdk.podspec
+++ b/node_modules/@onfido/react-native-sdk/onfido-react-native-sdk.podspec
@@ -2,6 +2,8 @@ require "json"
Expand Down Expand Up @@ -1317,4 +1317,4 @@ index 49f9d4c..1b9f304 100755
+ sed -i '' -e "s/_pluginVersion = @\"[0-9]*\.[0-9]*\.[0-9]*\"/_pluginVersion = @\"$2\"/g" $1
}

update_manifest ${MANIFEST_FILE} $PACKAGE_VERSION
update_manifest ${MANIFEST_FILE} $PACKAGE_VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
diff --git a/node_modules/@onfido/react-native-sdk/android/build.gradle b/node_modules/@onfido/react-native-sdk/android/build.gradle
index 895bfd7..257605f 100644
--- a/node_modules/@onfido/react-native-sdk/android/build.gradle
+++ b/node_modules/@onfido/react-native-sdk/android/build.gradle
@@ -93,6 +93,12 @@ android {
versionName "1.0"
multiDexEnabled true
consumerProguardFiles 'proguard-rules.pro'
+
+ externalNativeBuild {
+ cmake {
+ arguments "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
+ }
+ }
}
lintOptions {
abortOnError false
8 changes: 8 additions & 0 deletions patches/@onfido/react-native-sdk/details.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# `@onfido/react-native-sdk` patches

### [@onfido+react-native-sdk+10.6.0+002+android-enable-16kb-memory-page-size.patch](@onfido+react-native-sdk+10.6.0+002+android-enable-16kb-memory-page-size.patch)

- Reason: Updates the packaging of the library on Android to enable 16KB memory page sizes on Android.
- Upstream PR/issue: TODO
- E/App issue: [#63871](https://github.com/Expensify/App/issues/63871)
- PR Introducing Patch: [#64640](https://github.com/Expensify/App/pull/64640)
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
diff --git a/node_modules/@react-native-firebase/crashlytics/android/build.gradle b/node_modules/@react-native-firebase/crashlytics/android/build.gradle
index 9b89ae7..3069e6c 100644
--- a/node_modules/@react-native-firebase/crashlytics/android/build.gradle
+++ b/node_modules/@react-native-firebase/crashlytics/android/build.gradle
@@ -67,6 +67,12 @@ project.ext {
android {
defaultConfig {
multiDexEnabled true
+
+ externalNativeBuild {
+ cmake {
+ arguments "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
+ }
+ }
}
lintOptions {
disable 'GradleCompatible'
@@ -87,7 +93,11 @@ dependencies {
api appProject
implementation platform("com.google.firebase:firebase-bom:${ReactNative.ext.getVersion("firebase", "bom")}")
implementation "com.google.firebase:firebase-crashlytics"
- implementation "com.google.firebase:firebase-crashlytics-ndk"
+ implementation ("com.google.firebase:firebase-crashlytics-ndk") {
+ version {
+ strictly "[19.0.2,)"
+ }
+ }
}

ReactNative.shared.applyPackageVersion()
15 changes: 15 additions & 0 deletions patches/@react-native-firebase/crashlytics/details.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# `@react-native-firebase/crashlytics` patches

### [@react-native-firebase+crashlytics+12.9.3+001+hybrid-app.patch](@react-native-firebase+crashlytics+12.9.3+001+hybrid-app.patch)

- Reason: This patch is needed for support of HybridApp with React Native version >=0.75
- Upstream PR/issue: N/A
- E/App issue: N/A
- PR Introducing Patch: [#45289](https://github.com/Expensify/App/pull/45289)

### [@react-native-firebase+crashlytics+12.9.3+002+android-jni-packaging-for-16kb-memory-page-size.patch](@react-native-firebase+crashlytics+12.9.3+002+android-jni-packaging-for-16kb-memory-page-size.patch)

- Reason: Updates the packaging of the library on Android to enable 16KB memory page sizes on Android.
- Upstream PR/issue: [#7954](https://github.com/invertase/react-native-firebase/issues/7954)
- E/App issue: [#63871](https://github.com/Expensify/App/issues/63871)
- PR Introducing Patch: [#64640](https://github.com/Expensify/App/pull/64640)
Loading
Loading