expo-template-bare-minimum 54.0.0-canary-20250729-d8899ae → 54.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -64,9 +64,9 @@ react {
64
64
  }
65
65
 
66
66
  /**
67
- * Set this to true to Run Proguard on Release builds to minify the Java bytecode.
67
+ * Set this to true in release builds to optimize the app using [R8](https://developer.android.com/topic/performance/app-optimization/enable-app-optimization).
68
68
  */
69
- def enableProguardInReleaseBuilds = (findProperty('android.enableProguardInReleaseBuilds') ?: false).toBoolean()
69
+ def enableMinifyInReleaseBuilds = (findProperty('android.enableMinifyInReleaseBuilds') ?: false).toBoolean()
70
70
 
71
71
  /**
72
72
  * The preferred build flavor of JavaScriptCore (JSC)
@@ -94,6 +94,8 @@ android {
94
94
  targetSdkVersion rootProject.ext.targetSdkVersion
95
95
  versionCode 1
96
96
  versionName "1.0"
97
+
98
+ buildConfigField "String", "REACT_NATIVE_RELEASE_LEVEL", "\"${findProperty('reactNativeReleaseLevel') ?: 'stable'}\""
97
99
  }
98
100
  signingConfigs {
99
101
  debug {
@@ -112,7 +114,7 @@ android {
112
114
  // see https://reactnative.dev/docs/signed-apk-android.
113
115
  signingConfig signingConfigs.debug
114
116
  shrinkResources (findProperty('android.enableShrinkResourcesInReleaseBuilds')?.toBoolean() ?: false)
115
- minifyEnabled enableProguardInReleaseBuilds
117
+ minifyEnabled enableMinifyInReleaseBuilds
116
118
  proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
117
119
  crunchPngs (findProperty('android.enablePngCrunchInReleaseBuilds')?.toBoolean() ?: true)
118
120
  }
@@ -5,13 +5,13 @@ import android.content.res.Configuration
5
5
 
6
6
  import com.facebook.react.PackageList
7
7
  import com.facebook.react.ReactApplication
8
+ import com.facebook.react.ReactNativeApplicationEntryPoint.loadReactNative
8
9
  import com.facebook.react.ReactNativeHost
9
10
  import com.facebook.react.ReactPackage
10
11
  import com.facebook.react.ReactHost
11
- import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
12
+ import com.facebook.react.common.ReleaseLevel
13
+ import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint
12
14
  import com.facebook.react.defaults.DefaultReactNativeHost
13
- import com.facebook.react.soloader.OpenSourceMergedSoMapping
14
- import com.facebook.soloader.SoLoader
15
15
 
16
16
  import expo.modules.ApplicationLifecycleDispatcher
17
17
  import expo.modules.ReactNativeHostWrapper
@@ -19,21 +19,19 @@ import expo.modules.ReactNativeHostWrapper
19
19
  class MainApplication : Application(), ReactApplication {
20
20
 
21
21
  override val reactNativeHost: ReactNativeHost = ReactNativeHostWrapper(
22
- this,
23
- object : DefaultReactNativeHost(this) {
24
- override fun getPackages(): List<ReactPackage> {
25
- val packages = PackageList(this).packages
26
- // Packages that cannot be autolinked yet can be added manually here, for example:
27
- // packages.add(MyReactNativePackage())
28
- return packages
29
- }
22
+ this,
23
+ object : DefaultReactNativeHost(this) {
24
+ override fun getPackages(): List<ReactPackage> =
25
+ PackageList(this).packages.apply {
26
+ // Packages that cannot be autolinked yet can be added manually here, for example:
27
+ // add(MyReactNativePackage())
28
+ }
30
29
 
31
30
  override fun getJSMainModuleName(): String = ".expo/.virtual-metro-entry"
32
31
 
33
32
  override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG
34
33
 
35
34
  override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
36
- override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED
37
35
  }
38
36
  )
39
37
 
@@ -42,11 +40,12 @@ class MainApplication : Application(), ReactApplication {
42
40
 
43
41
  override fun onCreate() {
44
42
  super.onCreate()
45
- SoLoader.init(this, OpenSourceMergedSoMapping)
46
- if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
47
- // If you opted-in for the New Architecture, we load the native entry point for this app.
48
- load()
43
+ try {
44
+ DefaultNewArchitectureEntryPoint.releaseLevel = ReleaseLevel.valueOf(BuildConfig.REACT_NATIVE_RELEASE_LEVEL.uppercase())
45
+ } catch (e: IllegalArgumentException) {
46
+ DefaultNewArchitectureEntryPoint.releaseLevel = ReleaseLevel.STABLE
49
47
  }
48
+ loadReactNative(this)
50
49
  ApplicationLifecycleDispatcher.onApplicationCreate(this)
51
50
  }
52
51
 
@@ -1,6 +1,6 @@
1
1
  distributionBase=GRADLE_USER_HOME
2
2
  distributionPath=wrapper/dists
3
- distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
3
+ distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
4
4
  networkTimeout=10000
5
5
  validateDistributionUrl=true
6
6
  zipStoreBase=GRADLE_USER_HOME
@@ -41,6 +41,11 @@ newArchEnabled=true
41
41
  # If set to false, you will be using JSC instead.
42
42
  hermesEnabled=true
43
43
 
44
+ # Use this property to enable edge-to-edge display support.
45
+ # This allows your app to draw behind system bars for an immersive UI.
46
+ # Note: Only works with ReactActivity and should not be used with custom Activity.
47
+ edgeToEdgeEnabled=true
48
+
44
49
  # Enable GIF support in React Native images (~200 B increase)
45
50
  expo.gif.enabled=true
46
51
  # Enable webp support in React Native images (~85 KB increase)
@@ -168,6 +168,8 @@
168
168
  files = (
169
169
  );
170
170
  inputPaths = (
171
+ "$(SRCROOT)/.xcode.env",
172
+ "$(SRCROOT)/.xcode.env.local",
171
173
  );
172
174
  name = "Bundle React Native code and images";
173
175
  outputPaths = (
package/ios/Podfile CHANGED
@@ -6,8 +6,8 @@ podfile_properties = JSON.parse(File.read(File.join(__dir__, 'Podfile.properties
6
6
 
7
7
  ENV['RCT_NEW_ARCH_ENABLED'] = '0' if podfile_properties['newArchEnabled'] == 'false'
8
8
  ENV['EX_DEV_CLIENT_NETWORK_INSPECTOR'] = podfile_properties['EX_DEV_CLIENT_NETWORK_INSPECTOR']
9
- ENV['RCT_USE_RN_DEP'] = '1' if podfile_properties['ios.buildFromSource'] == 'false'
10
-
9
+ ENV['RCT_USE_RN_DEP'] = '1' if podfile_properties['ios.buildReactNativeFromSource'] != 'true' && podfile_properties['newArchEnabled'] != 'false'
10
+ ENV['RCT_USE_PREBUILT_RNCORE'] = '1' if podfile_properties['ios.buildReactNativeFromSource'] != 'true' && podfile_properties['newArchEnabled'] != 'false'
11
11
  platform :ios, podfile_properties['ios.deploymentTarget'] || '15.1'
12
12
 
13
13
  prepare_react_native_project!
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "expo-template-bare-minimum",
3
3
  "description": "This bare project template includes a minimal setup for using unimodules with React Native.",
4
4
  "license": "0BSD",
5
- "version": "54.0.0-canary-20250729-d8899ae",
5
+ "version": "54.0.1",
6
6
  "main": "index.js",
7
7
  "scripts": {
8
8
  "start": "expo start --dev-client",
@@ -11,12 +11,9 @@
11
11
  "web": "expo start --web"
12
12
  },
13
13
  "dependencies": {
14
- "expo": "54.0.0-canary-20250729-d8899ae",
15
- "expo-status-bar": "2.2.4-canary-20250729-d8899ae",
14
+ "expo": "~54.0.0-preview.1",
15
+ "expo-status-bar": "~3.0.1",
16
16
  "react": "19.1.0",
17
- "react-native": "0.80.1"
18
- },
19
- "devDependencies": {
20
- "@babel/core": "^7.20.0"
17
+ "react-native": "0.81.0"
21
18
  }
22
19
  }