expo-modules-core 56.0.24 → 56.0.26

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
@@ -10,6 +10,17 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 56.0.26 — 2026-09-17
14
+
15
+ ### 💡 Others
16
+
17
+ - Migrated from deprecated react-native-worklets WorkletRuntime API `executeSync` to up-to-date `runSync`. `runSync` is available since 0.7.0. ([#48691](https://github.com/expo/expo/pull/48691) by [@tjzel](https://github.com/tjzel))
18
+ - Added internal `ExpoModulesProviderModuleName` lookup key for `ExpoModulesProvider` class. ([#49539](https://github.com/expo/expo/pull/49539) by [@kudo](https://github.com/kudo))
19
+
20
+ ## 56.0.25 — 2026-08-28
21
+
22
+ _This version does not introduce any user-facing changes._
23
+
13
24
  ## 56.0.24 — 2026-08-17
14
25
 
15
26
  _This version does not introduce any user-facing changes._
@@ -27,7 +27,7 @@ if (shouldIncludeCompose) {
27
27
  }
28
28
 
29
29
  group = 'host.exp.exponent'
30
- version = '56.0.24'
30
+ version = '56.0.26'
31
31
 
32
32
  def isExpoModulesCoreTests = {
33
33
  Gradle gradle = getGradle()
@@ -94,7 +94,7 @@ android {
94
94
  defaultConfig {
95
95
  consumerProguardFiles 'proguard-rules.pro'
96
96
  versionCode 1
97
- versionName "56.0.24"
97
+ versionName "56.0.26"
98
98
  buildConfigField "String", "EXPO_MODULES_CORE_VERSION", "\"${versionName}\""
99
99
  buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", "true"
100
100
 
@@ -24,10 +24,7 @@ namespace expo {
24
24
  return;
25
25
  }
26
26
 
27
- workletRuntime->executeSync([func = std::move(func)](jsi::Runtime &rt) -> jsi::Value {
28
- func(rt);
29
- return jsi::Value::undefined();
30
- });
27
+ workletRuntime->runSync(func);
31
28
  }
32
29
  } // namespace expo
33
30
 
@@ -642,12 +642,14 @@ public final class AppContext: NSObject, EXAppContextProtocol, @unchecked Sendab
642
642
  */
643
643
  @objc
644
644
  public static func modulesProvider(withName providerName: String = "ExpoModulesProvider") -> ModulesProvider {
645
- // [0] When ExpoModulesCore is built as separated framework/module,
646
- // we should explicitly load main bundle's `ExpoModulesProvider` class.
647
- // CFBundleExecutable is tried first: it equals $(PRODUCT_NAME:c99extidentifier) and
648
- // directly matches the Swift module name. CFBundleName is kept as a fallback for the
649
- // uncommon case where both values are identical valid identifiers.
645
+ // [0] When ExpoModulesCore is built as a separate framework/module,
646
+ // explicitly load the main bundle's `ExpoModulesProvider` class.
647
+ // `ExpoModulesProviderModuleName` is an internal key that allows repack-app to
648
+ // preserve the original Swift module name. Try `CFBundleExecutable` next because
649
+ // it usually matches the Swift module name. Keep `CFBundleName` as a final fallback
650
+ // for cases where it is also a valid module identifier.
650
651
  let mainBundleNames = [
652
+ Bundle.main.infoDictionary?["ExpoModulesProviderModuleName"],
651
653
  Bundle.main.infoDictionary?["CFBundleExecutable"],
652
654
  Bundle.main.infoDictionary?["CFBundleName"]
653
655
  ].compactMap { $0 as? String }
@@ -233,7 +233,7 @@ static jsi::Value callWorklet(jsi::Runtime &rt, std::shared_ptr<worklets::Serial
233
233
  return;
234
234
  }
235
235
 
236
- workletRuntime->executeSync([worklet, arguments](jsi::Runtime &rt) -> jsi::Value {
236
+ workletRuntime->runSync([worklet, arguments](jsi::Runtime &rt) -> jsi::Value {
237
237
  return callWorklet(rt, worklet, arguments);
238
238
  });
239
239
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-modules-core",
3
- "version": "56.0.24",
3
+ "version": "56.0.26",
4
4
  "description": "The core of Expo Modules architecture",
5
5
  "main": "src/index.ts",
6
6
  "types": "build/index.d.ts",
@@ -47,7 +47,7 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@expo/expo-modules-macros-plugin": "0.2.2",
50
- "expo-modules-jsi": "~56.0.12",
50
+ "expo-modules-jsi": "~56.0.13",
51
51
  "invariant": "^2.2.4"
52
52
  },
53
53
  "peerDependencies": {
@@ -66,7 +66,7 @@
66
66
  "@types/invariant": "^2.2.33",
67
67
  "expo-module-scripts": "56.0.3"
68
68
  },
69
- "gitHead": "39f9dc47fb5ddd099a2533dd0ff24be7126a1ed0",
69
+ "gitHead": "6a613ddc65139388dc1d25ccef2e88721fc66384",
70
70
  "scripts": {
71
71
  "build": "expo-module build",
72
72
  "clean": "expo-module clean",