Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 5 additions & 0 deletions .changeset/calm-poets-film.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'brownfield': patch
---

feat: support Expo SDK 56 in the Brownfield package and example apps
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ jobs:
rnapp: ${{ steps.filter.outputs.rnapp }}
expo54: ${{ steps.filter.outputs.expo54 }}
expo55: ${{ steps.filter.outputs.expo55 }}
expo56: ${{ steps.filter.outputs.expo56 }}
androidapp: ${{ steps.filter.outputs.androidapp }}
appleapp: ${{ steps.filter.outputs.appleapp }}
ci: ${{ steps.filter.outputs.ci }}
Expand All @@ -39,6 +40,8 @@ jobs:
- 'apps/ExpoApp54/**'
expo55:
- 'apps/ExpoApp55/**'
expo56:
- 'apps/ExpoApp56/**'
androidapp:
- 'apps/AndroidApp/**'
appleapp:
Expand Down Expand Up @@ -120,6 +123,7 @@ jobs:
(
needs.filter.outputs.expo54 == 'true' ||
needs.filter.outputs.expo55 == 'true' ||
needs.filter.outputs.expo56 == 'true' ||
needs.filter.outputs.androidapp == 'true' ||
needs.filter.outputs.packages == 'true' ||
needs.filter.outputs.ci == 'true'
Expand All @@ -130,6 +134,7 @@ jobs:
include:
- version: '54'
- version: '55'
- version: '56'

steps:
- name: Checkout
Expand Down Expand Up @@ -200,6 +205,7 @@ jobs:
(
needs.filter.outputs.expo54 == 'true' ||
needs.filter.outputs.expo55 == 'true' ||
needs.filter.outputs.expo56 == 'true' ||
needs.filter.outputs.appleapp == 'true' ||
needs.filter.outputs.packages == 'true' ||
needs.filter.outputs.ci == 'true'
Expand All @@ -210,6 +216,7 @@ jobs:
include:
- version: '54'
- version: '55'
- version: '56'

steps:
- name: Checkout
Expand Down
13 changes: 13 additions & 0 deletions .yarn/patches/expo-updates-npm-56.0.17-0d9c6d9af6.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/ios/EXUpdates.podspec b/ios/EXUpdates.podspec
index c3d463384cc660c413e6f29ae9990fa1421661d8..f347621cc9f51ca4efd4f8d696918c82767e6e14 100644
--- a/ios/EXUpdates.podspec
+++ b/ios/EXUpdates.podspec
@@ -15,7 +15,7 @@ begin
# No dev client if we are using native debug
if ENV['EX_UPDATES_NATIVE_DEBUG'] != '1'
project_root = ENV['PROJECT_ROOT'] || Pod::Config.instance.installation_root.to_s
- use_dev_client = File.dirname(`node --print "require.resolve('expo-dev-client/package.json', { paths: ['#{__dir__}', '#{project_root}'] })"`).length > 0
+ use_dev_client = File.dirname(`node --print "try { require.resolve('expo-dev-client/package.json', { paths: ['#{__dir__}', '#{project_root}'] }) } catch { '' }"`).length > 0
end
rescue
use_dev_client = false
4 changes: 4 additions & 0 deletions apps/AndroidApp/app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ android {
create("expo55") {
dimension = "app"
}
create("expo56") {
dimension = "app"
}
create("vanilla") {
dimension = "app"
}
Expand Down Expand Up @@ -71,6 +74,7 @@ dependencies {
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.appcompat)
add("expo56Implementation", libs.brownfieldlib.expo56)
add("expo55Implementation", libs.brownfieldlib.expo55)
add("expo54Implementation", libs.brownfieldlib.expo54)
add("vanillaImplementation", libs.brownfieldlib.vanilla)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package com.callstack.brownfield.android.example

typealias BrownfieldStore = com.callstack.rnbrownfield.demo.expoapp56.BrownfieldStore
typealias User = com.callstack.rnbrownfield.demo.expoapp56.User
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package com.callstack.brownfield.android.example

object ReactNativeConstants {
const val MAIN_MODULE_NAME = "main"
const val APP_NAME = "Android (Expo 56)"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
package com.callstack.brownfield.android.example

typealias ReactNativeHostManager = com.callstack.rnbrownfield.demo.expoapp56.ReactNativeHostManager
2 changes: 1 addition & 1 deletion apps/AndroidApp/gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ gson = "2.13.2"

[libraries]
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
brownfieldlib-expo56 = { module = "com.callstack.rnbrownfield.demo.expoapp56:brownfieldlib", version.ref = "brownfieldlib" }
brownfieldlib-expo55 = { module = "com.callstack.rnbrownfield.demo.expoapp55:brownfieldlib", version.ref = "brownfieldlib" }
brownfieldlib-expo54 = { module = "com.callstack.rnbrownfield.demo.expoapp54:brownfieldlib", version.ref = "brownfieldlib" }
brownfieldlib-vanilla = { module = "com.rnapp:brownfieldlib", version.ref = "brownfieldlib" }
Expand All @@ -40,4 +41,3 @@ gson = { module = "com.google.code.gson:gson", version.ref = "gson" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }

3 changes: 2 additions & 1 deletion apps/AndroidApp/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
"version": "0.0.1",
"private": true,
"scripts": {
"build:example:android-consumer:expo": "./gradlew assembleExpo55Release",
"build:example:android-consumer:expo": "./gradlew assembleExpo56Release",
"build:example:android-consumer:expo56": "./gradlew assembleExpo56Release",
"build:example:android-consumer:expo55": "./gradlew assembleExpo55Release",
"build:example:android-consumer:expo54": "./gradlew assembleExpo54Release",
"build:example:android-consumer:vanilla": "./gradlew assembleVanillaRelease"
Expand Down
Loading