expo-modules-autolinking 56.0.1 → 56.0.3
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 +10 -0
- package/package.json +4 -4
- package/scripts/ios/cocoapods/installer.rb +13 -7
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,16 @@
|
|
|
10
10
|
|
|
11
11
|
### 💡 Others
|
|
12
12
|
|
|
13
|
+
## 56.0.3 — 2026-05-08
|
|
14
|
+
|
|
15
|
+
### 🐛 Bug fixes
|
|
16
|
+
|
|
17
|
+
- [iOS] Re-stamp `ExpoModulesJSI.xcframework` stub slices on every `pod install` so cached pods can't ship with missing slices. ([#45542](https://github.com/expo/expo/pull/45542) by [@tsapeta](https://github.com/tsapeta))
|
|
18
|
+
|
|
19
|
+
## 56.0.2 — 2026-05-06
|
|
20
|
+
|
|
21
|
+
_This version does not introduce any user-facing changes._
|
|
22
|
+
|
|
13
23
|
## 56.0.1 — 2026-05-06
|
|
14
24
|
|
|
15
25
|
### 🐛 Bug fixes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-modules-autolinking",
|
|
3
|
-
"version": "56.0.
|
|
3
|
+
"version": "56.0.3",
|
|
4
4
|
"description": "Scripts that autolink Expo modules.",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -41,15 +41,15 @@
|
|
|
41
41
|
"homepage": "https://github.com/expo/expo/tree/main/packages/expo-modules-autolinking#readme",
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"memfs": "^3.2.0",
|
|
44
|
-
"expo-module-scripts": "56.0.
|
|
44
|
+
"expo-module-scripts": "56.0.2"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@expo/require-utils": "^56.
|
|
47
|
+
"@expo/require-utils": "^56.1.0",
|
|
48
48
|
"@expo/spawn-async": "^1.7.2",
|
|
49
49
|
"chalk": "^4.1.0",
|
|
50
50
|
"commander": "^7.2.0"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "a30353e69ca0d72b9fac5830abc631feda1ba3ae",
|
|
53
53
|
"scripts": {
|
|
54
54
|
"build": "expo-module build",
|
|
55
55
|
"clean": "expo-module clean",
|
|
@@ -84,10 +84,19 @@ module Pod
|
|
|
84
84
|
|
|
85
85
|
private
|
|
86
86
|
|
|
87
|
-
#
|
|
88
|
-
# CocoaPods only runs
|
|
89
|
-
#
|
|
90
|
-
#
|
|
87
|
+
# Ensures every slice declared by ExpoModulesJSI's podspec exists in
|
|
88
|
+
# `Products/ExpoModulesJSI.xcframework`. CocoaPods only runs
|
|
89
|
+
# prepare_command when a pod is freshly downloaded or its podspec
|
|
90
|
+
# changes, so CI cache hits skip it. This method runs on every pod
|
|
91
|
+
# install to guarantee every declared slice is present — an xcframework
|
|
92
|
+
# with only some slices (e.g. simulator-only after a prior Debug build)
|
|
93
|
+
# breaks the per-slice copy script CocoaPods generates from Info.plist,
|
|
94
|
+
# which then leaves XCFrameworkIntermediates empty for the missing slice
|
|
95
|
+
# and surfaces as `No such module 'ExpoModulesJSI'`.
|
|
96
|
+
#
|
|
97
|
+
# The script itself is idempotent and only stamps slices that are
|
|
98
|
+
# missing, so always invoking it is cheaper than maintaining a separate
|
|
99
|
+
# completeness check that would have to mirror the script's slice list.
|
|
91
100
|
def ensure_expo_modules_jsi_stub_xcframework
|
|
92
101
|
jsi_target = self.pod_targets.find { |t| t.name == 'ExpoModulesJSI' }
|
|
93
102
|
return if jsi_target.nil?
|
|
@@ -95,9 +104,6 @@ module Pod
|
|
|
95
104
|
pod_dir = jsi_target.sandbox.pod_dir('ExpoModulesJSI')
|
|
96
105
|
return unless File.directory?(pod_dir)
|
|
97
106
|
|
|
98
|
-
xcframework_path = File.join(pod_dir, 'Products', 'ExpoModulesJSI.xcframework')
|
|
99
|
-
return if File.directory?(xcframework_path)
|
|
100
|
-
|
|
101
107
|
system('./scripts/create-stub-xcframework.sh', chdir: pod_dir.to_s)
|
|
102
108
|
end
|
|
103
109
|
|