expo-updates 29.1.0-canary-20251003-7b9d7ff → 29.1.0-canary-20251008-f2d1b4a

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.
package/CHANGELOG.md CHANGED
@@ -13,6 +13,7 @@
13
13
  ### 💡 Others
14
14
 
15
15
  - [Android] Migrated from `kotlinOptions` to `compilerOptions` DSL. ([#39794](https://github.com/expo/expo/pull/39794) by [@huextrat](https://github.com/huextrat))
16
+ - [android] Remove references to reactNativeHost ([#40182](https://github.com/expo/expo/pull/40182) by [@gabrieldonadel](https://github.com/gabrieldonadel))
16
17
 
17
18
  ### ⚠️ Notices
18
19
 
@@ -42,7 +42,7 @@ expoModule {
42
42
  }
43
43
 
44
44
  group = 'host.exp.exponent'
45
- version = '29.1.0-canary-20251003-7b9d7ff'
45
+ version = '29.1.0-canary-20251008-f2d1b4a'
46
46
 
47
47
  // Utility method to derive boolean values from the environment or from Java properties,
48
48
  // and return them as strings to be used in BuildConfig fields
@@ -88,7 +88,7 @@ android {
88
88
  namespace "expo.modules.updates"
89
89
  defaultConfig {
90
90
  versionCode 31
91
- versionName '29.1.0-canary-20251003-7b9d7ff'
91
+ versionName '29.1.0-canary-20251008-f2d1b4a'
92
92
  consumerProguardFiles("proguard-rules.pro")
93
93
  testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
94
94
 
@@ -32,12 +32,10 @@ object UpdatesController {
32
32
  }
33
33
 
34
34
  @JvmStatic
35
- fun initializeWithoutStarting(context: Context) {
35
+ fun initializeWithoutStarting(context: Context, useDeveloperSupport: Boolean) {
36
36
  if (singletonInstance != null) {
37
37
  return
38
38
  }
39
- val useDeveloperSupport =
40
- (context as? ReactApplication)?.reactNativeHost?.useDeveloperSupport ?: false
41
39
  if (useDeveloperSupport && !UpdatesPackage.isUsingNativeDebug) {
42
40
  if (BuildConfig.USE_DEV_CLIENT) {
43
41
  val devLauncherController = initializeAsDevLauncherWithoutStarting(context)
@@ -135,9 +133,9 @@ object UpdatesController {
135
133
  */
136
134
  @JvmStatic
137
135
  @Synchronized
138
- fun initialize(context: Context) {
136
+ fun initialize(context: Context, useDeveloperSupport: Boolean = false) {
139
137
  if (singletonInstance == null) {
140
- initializeWithoutStarting(context)
138
+ initializeWithoutStarting(context, useDeveloperSupport)
141
139
  singletonInstance?.start()
142
140
  }
143
141
  }
@@ -33,7 +33,7 @@ class UpdatesPackage : Package {
33
33
  }
34
34
 
35
35
  override fun onWillCreateReactInstance(useDeveloperSupport: Boolean) {
36
- UpdatesController.initialize(context)
36
+ UpdatesController.initialize(context, useDeveloperSupport)
37
37
  }
38
38
 
39
39
  override fun onDidCreateDevSupportManager(devSupportManager: DevSupportManager) {
@@ -62,7 +62,7 @@ class UpdatesPackage : Package {
62
62
  if (!useDeveloperSupport || isUsingNativeDebug) {
63
63
  return ReactActivityHandler.DelayLoadAppHandler { whenReadyRunnable ->
64
64
  CoroutineScope(Dispatchers.IO).launch {
65
- startUpdatesController(context)
65
+ startUpdatesController(context, useDeveloperSupport)
66
66
  invokeReadyRunnable(whenReadyRunnable)
67
67
  }
68
68
  }
@@ -71,10 +71,10 @@ class UpdatesPackage : Package {
71
71
  }
72
72
 
73
73
  @WorkerThread
74
- private suspend fun startUpdatesController(context: Context) {
74
+ private suspend fun startUpdatesController(context: Context, useDeveloperSupport: Boolean) {
75
75
  withContext(Dispatchers.IO) {
76
76
  if (!UpdatesPackage.isUsingCustomInit) {
77
- UpdatesController.initialize(context)
77
+ UpdatesController.initialize(context, useDeveloperSupport)
78
78
  // Call the synchronous `launchAssetFile()` function to wait for updates ready
79
79
  UpdatesController.instance.launchAssetFile
80
80
  }
@@ -3,46 +3,29 @@ package dev.expo.updatese2e
3
3
  import android.app.Application
4
4
  import com.facebook.react.PackageList
5
5
  import com.facebook.react.ReactApplication
6
+ import com.facebook.react.ReactNativeApplicationEntryPoint.loadReactNative
6
7
  import com.facebook.react.ReactHost
7
8
  import com.facebook.react.ReactNativeHost
8
9
  import com.facebook.react.ReactPackage
9
- import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
10
- import com.facebook.react.defaults.DefaultReactNativeHost
11
- import com.facebook.react.soloader.OpenSourceMergedSoMapping
12
- import com.facebook.soloader.SoLoader
13
- import expo.modules.ReactNativeHostWrapper
14
10
  import expo.modules.updates.UpdatesPackage
11
+ import expo.modules.ExpoReactHostFactory
15
12
 
16
13
  class MainApplication : Application(), ReactApplication {
17
14
 
18
- override val reactNativeHost: ReactNativeHost = ReactNativeHostWrapper(
19
- this,
20
- object : DefaultReactNativeHost(this) {
21
- override fun getPackages(): List<ReactPackage> {
22
- val packages = PackageList(this).packages
23
- // Packages that cannot be autolinked yet can be added manually here, for example:
24
- // packages.add(new MyReactNativePackage());
25
- return packages
26
- }
27
-
28
- override fun getJSMainModuleName(): String = ".expo/.virtual-metro-entry"
29
-
30
- override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG && !UpdatesPackage.isUsingNativeDebug
31
-
32
- override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
33
- override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED
34
- }
35
- )
36
-
37
- override val reactHost: ReactHost
38
- get() = ReactNativeHostWrapper.createReactHost(applicationContext, reactNativeHost)
15
+ override val reactHost: ReactHost by lazy {
16
+ ExpoReactHostFactory.getDefaultReactHost(
17
+ context = applicationContext,
18
+ packageList =
19
+ PackageList(this).packages.apply {
20
+ // Packages that cannot be autolinked yet can be added manually here, for example:
21
+ // add(MyReactNativePackage())
22
+ },
23
+ useDevSupport = BuildConfig.DEBUG && !UpdatesPackage.isUsingNativeDebug
24
+ )
25
+ }
39
26
 
40
27
  override fun onCreate() {
41
28
  super.onCreate()
42
- SoLoader.init(this, OpenSourceMergedSoMapping)
43
- if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
44
- // If you opted-in for the New Architecture, we load the native entry point for this app.
45
- load()
46
- }
29
+ loadReactNative(this)
47
30
  }
48
31
  }
@@ -397,7 +397,7 @@ async function preparePackageJson(
397
397
  ...packageJson,
398
398
  dependencies: {
399
399
  ...packageJson.dependencies,
400
- 'react-native': 'npm:react-native-tvos@0.81.4-0',
400
+ 'react-native': 'npm:react-native-tvos@0.82.0-0rc5',
401
401
  '@react-native-tvos/config-tv': '^0.1.4',
402
402
  },
403
403
  expo: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-updates",
3
- "version": "29.1.0-canary-20251003-7b9d7ff",
3
+ "version": "29.1.0-canary-20251008-f2d1b4a",
4
4
  "description": "Fetches and manages remotely-hosted assets and updates to your app's JS bundle.",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -39,15 +39,15 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@expo/code-signing-certificates": "0.0.5",
42
- "@expo/plist": "0.4.8-canary-20251003-7b9d7ff",
42
+ "@expo/plist": "0.4.8-canary-20251008-f2d1b4a",
43
43
  "@expo/spawn-async": "^1.7.2",
44
44
  "arg": "4.1.0",
45
45
  "chalk": "^4.1.2",
46
46
  "debug": "^4.3.4",
47
- "expo-eas-client": "1.0.8-canary-20251003-7b9d7ff",
48
- "expo-manifests": "1.0.9-canary-20251003-7b9d7ff",
49
- "expo-structured-headers": "5.0.1-canary-20251003-7b9d7ff",
50
- "expo-updates-interface": "2.0.1-canary-20251003-7b9d7ff",
47
+ "expo-eas-client": "1.0.8-canary-20251008-f2d1b4a",
48
+ "expo-manifests": "1.0.9-canary-20251008-f2d1b4a",
49
+ "expo-structured-headers": "5.0.1-canary-20251008-f2d1b4a",
50
+ "expo-updates-interface": "2.0.1-canary-20251008-f2d1b4a",
51
51
  "getenv": "^2.0.0",
52
52
  "glob": "^10.4.2",
53
53
  "ignore": "^5.3.1",
@@ -60,7 +60,7 @@
60
60
  "@types/node-forge": "^1.0.0",
61
61
  "@types/picomatch": "^4.0.0",
62
62
  "@vercel/ncc": "^0.38.3",
63
- "expo-module-scripts": "5.0.8-canary-20251003-7b9d7ff",
63
+ "expo-module-scripts": "5.0.8-canary-20251008-f2d1b4a",
64
64
  "express": "^5.1.0",
65
65
  "form-data": "^4.0.4",
66
66
  "js-yaml": "^4.1.0",
@@ -69,7 +69,7 @@
69
69
  "xstate": "^4.37.2"
70
70
  },
71
71
  "peerDependencies": {
72
- "expo": "55.0.0-canary-20251003-7b9d7ff",
72
+ "expo": "55.0.0-canary-20251008-f2d1b4a",
73
73
  "react": "*",
74
74
  "react-native": "*"
75
75
  }