expo-modules-core 2.3.11 → 2.3.13
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,19 @@
|
|
|
10
10
|
|
|
11
11
|
### 💡 Others
|
|
12
12
|
|
|
13
|
+
## 2.3.13 — 2025-05-08
|
|
14
|
+
|
|
15
|
+
### 🐛 Bug fixes
|
|
16
|
+
|
|
17
|
+
- [Android] Fix `getSharedObjectId` for devices running android 7 and below. ([#36698](https://github.com/expo/expo/pull/36698) by [@lukmccall](https://github.com/lukmccall))
|
|
18
|
+
- [iOS] Fixed missing upload progress from `XMLHttpRequest` when network inspector is enabled. ([#36715](https://github.com/expo/expo/pull/36715) by [@kudo](https://github.com/kudo))
|
|
19
|
+
|
|
20
|
+
## 2.3.12 — 2025-04-30
|
|
21
|
+
|
|
22
|
+
### 🐛 Bug fixes
|
|
23
|
+
|
|
24
|
+
- Fixed `extraMavenRepos` not applied on Gradle subprojects. ([#36500](https://github.com/expo/expo/pull/36500) by [@lukmccall](https://github.com/lukmccall))
|
|
25
|
+
|
|
13
26
|
## 2.3.11 — 2025-04-28
|
|
14
27
|
|
|
15
28
|
_This version does not introduce any user-facing changes._
|
package/android/build.gradle
CHANGED
|
@@ -25,7 +25,7 @@ if (shouldIncludeCompose) {
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
group = 'host.exp.exponent'
|
|
28
|
-
version = '2.3.
|
|
28
|
+
version = '2.3.13'
|
|
29
29
|
|
|
30
30
|
def isExpoModulesCoreTests = {
|
|
31
31
|
Gradle gradle = getGradle()
|
|
@@ -75,7 +75,7 @@ android {
|
|
|
75
75
|
defaultConfig {
|
|
76
76
|
consumerProguardFiles 'proguard-rules.pro'
|
|
77
77
|
versionCode 1
|
|
78
|
-
versionName "2.3.
|
|
78
|
+
versionName "2.3.13"
|
|
79
79
|
buildConfigField "String", "EXPO_MODULES_CORE_VERSION", "\"${versionName}\""
|
|
80
80
|
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled.toString()
|
|
81
81
|
|
|
@@ -149,6 +149,36 @@ public final class ExpoRequestInterceptorProtocol: URLProtocol, URLSessionDataDe
|
|
|
149
149
|
client?.urlProtocol(self, didReceive: challengeWithSender)
|
|
150
150
|
}
|
|
151
151
|
|
|
152
|
+
public func urlSession(
|
|
153
|
+
_ session: URLSession,
|
|
154
|
+
task: URLSessionTask,
|
|
155
|
+
didSendBodyData bytesSent: Int64,
|
|
156
|
+
totalBytesSent: Int64,
|
|
157
|
+
totalBytesExpectedToSend: Int64
|
|
158
|
+
) {
|
|
159
|
+
// swiftlint:disable line_length
|
|
160
|
+
// Apple does not support sending upload progress from URLProtocol back to URLProtocolClient.
|
|
161
|
+
// > Similarly, there is no way for your NSURLProtocol subclass to call the NSURLConnection delegate's -connection:needNewBodyStream: or -connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite: methods (<rdar://problem/9226155> and <rdar://problem/9226157>). The latter is not a serious concern--it just means that your clients don't get upload progress--but the former is a real issue. If you're in a situation where you might need a second copy of a request body, you will need your own logic to make that copy, including the case where the body is a stream.
|
|
162
|
+
// See: https://developer.apple.com/library/archive/samplecode/CustomHTTPProtocol/Listings/Read_Me_About_CustomHTTPProtocol_txt.html
|
|
163
|
+
//
|
|
164
|
+
// Workaround to get the original task's URLSessionDelegate through the internal property and send upload process
|
|
165
|
+
// Fixes https://github.com/expo/expo/issues/28269
|
|
166
|
+
// swiftlint:enable line_length
|
|
167
|
+
guard let task = self.task else {
|
|
168
|
+
return
|
|
169
|
+
}
|
|
170
|
+
if #available(iOS 15.0, tvOS 15.0, macOS 12.0, *), let delegate = task.delegate {
|
|
171
|
+
// For the case if the task has a dedicated delegate than the default delegate from its URLSession
|
|
172
|
+
delegate.urlSession?(session, task: task, didSendBodyData: bytesSent, totalBytesSent: totalBytesSent, totalBytesExpectedToSend: totalBytesExpectedToSend)
|
|
173
|
+
return
|
|
174
|
+
}
|
|
175
|
+
guard let session = task.value(forKey: "session") as? URLSession,
|
|
176
|
+
let delegate = session.delegate as? URLSessionTaskDelegate else {
|
|
177
|
+
return
|
|
178
|
+
}
|
|
179
|
+
delegate.urlSession?(session, task: task, didSendBodyData: bytesSent, totalBytesSent: totalBytesSent, totalBytesExpectedToSend: totalBytesExpectedToSend)
|
|
180
|
+
}
|
|
181
|
+
|
|
152
182
|
/**
|
|
153
183
|
Data structure to save the response for redirection
|
|
154
184
|
*/
|
|
@@ -100,4 +100,21 @@ public final class URLSessionSessionDelegateProxy: NSObject, URLSessionDataDeleg
|
|
|
100
100
|
completionHandler(.performDefaultHandling, nil)
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
|
+
|
|
104
|
+
public func urlSession(
|
|
105
|
+
_ session: URLSession,
|
|
106
|
+
task: URLSessionTask,
|
|
107
|
+
didSendBodyData bytesSent: Int64,
|
|
108
|
+
totalBytesSent: Int64,
|
|
109
|
+
totalBytesExpectedToSend: Int64
|
|
110
|
+
) {
|
|
111
|
+
if let delegate = getDelegate(task: task) {
|
|
112
|
+
delegate.urlSession?(
|
|
113
|
+
session,
|
|
114
|
+
task: task,
|
|
115
|
+
didSendBodyData: bytesSent,
|
|
116
|
+
totalBytesSent: totalBytesSent,
|
|
117
|
+
totalBytesExpectedToSend: totalBytesExpectedToSend)
|
|
118
|
+
}
|
|
119
|
+
}
|
|
103
120
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-modules-core",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.13",
|
|
4
4
|
"description": "The core of Expo Modules architecture",
|
|
5
5
|
"main": "src/index.ts",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@testing-library/react-native": "^13.1.0",
|
|
45
|
-
"expo-module-scripts": "^4.1.
|
|
45
|
+
"expo-module-scripts": "^4.1.7"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "49c9d53cf0a9fc8179d1c8f5268beadd141f70ca"
|
|
48
48
|
}
|