Skip to content

Commit ca9e108

Browse files
jtreanorfacebook-github-bot
authored andcommitted
Remove 's.static_framework = true' requirement for podspec (#25816)
Summary: As part of the fix for #25349 I added `s.static_framework = true` to each podspec in repo (see #25619 (comment) for more context). This was required to ensure the existing conditional compilation with `#if RCT_DEV` and `__has_include` still worked correctly when `use_frameworks!` is enabled. However, fkgozali pointed out that it would be ideal if we didn't have this requirement as it could make life difficult for third-party libraries. This removes the requirement by moving `React-DevSupport.podspec` and `React-RCTWebSocket.podspec` into `React-Core.podspec` as subspecs. This means the symbols are present when `React-Core.podspec` is built dynamically so `s.static_framework = true` isn't required. This means that any `Podfile` that refers to `React-DevSupport` or `React-RCTWebSocket` will need to be updated to avoid errors. ## Changelog I don't think this needs a changelog entry since its just a refinement of #25619. Pull Request resolved: #25816 Test Plan: Check `RNTesterPods` still works both with and without `use_frameworks!`: 1. Go to the `RNTester` directory and run `pod install`. 2. Run the tests in `RNTesterPods.xcworkspace` to see that everything still works fine. 3. Uncomment the `use_frameworks!` line at the top of `RNTester/Podfile` and run `pod install` again. 4. Run the tests again and see that it still works with frameworks enabled. Reviewed By: hramos Differential Revision: D16495030 Pulled By: fkgozali fbshipit-source-id: 2708ac9fd20cd04cb0aea61b2e8ab0d931dfb6d5
1 parent 71c84cf commit ca9e108

32 files changed

+59
-162
lines changed

Libraries/ART/React-ART.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ Pod::Spec.new do |s|
2929
s.source_files = "**/*.{m}"
3030
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3131
s.header_dir = "ART"
32-
s.static_framework = true
3332

3433
s.dependency "React-Core/ARTHeaders", version
3534
end

Libraries/ActionSheetIOS/React-RCTActionSheet.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTActionSheet"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTActionSheetHeaders", version
3635
end

Libraries/Blob/React-RCTBlob.podspec

+1-2
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,9 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m,mm}", "RCTBlobCollector.h"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTBlob"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTBlobHeaders", version
35+
s.dependency "React-Core/RCTWebSocket", version
3636
s.dependency "React-RCTNetwork", version
37-
s.dependency "React-RCTWebSocket", version
3837
s.dependency "React-jsi", version
3938
end

Libraries/FBReactNativeSpec/FBReactNativeSpec.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ Pod::Spec.new do |s|
3232
s.source = source
3333
s.source_files = "**/*.{c,h,m,mm,cpp}"
3434
s.header_dir = "FBReactNativeSpec"
35-
s.static_framework = true
3635

3736
s.pod_target_xcconfig = {
3837
"USE_HEADERMAP" => "YES",

Libraries/Image/React-RCTImage.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTImage"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTImageHeaders", version
3635
s.dependency "React-RCTNetwork", version

Libraries/LinkingIOS/React-RCTLinking.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTLinking"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTLinkingHeaders", version
3635
end

Libraries/NativeAnimation/React-RCTAnimation.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ Pod::Spec.new do |s|
2929
s.source_files = "{Drivers/*,Nodes/*,*}.{m}"
3030
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3131
s.header_dir = "RCTAnimation"
32-
s.static_framework = true
3332

3433
s.dependency "React-Core/RCTAnimationHeaders", version
3534
end

Libraries/Network/React-RCTNetwork.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ Pod::Spec.new do |s|
2929
s.source_files = "*.{m,mm}"
3030
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3131
s.header_dir = "RCTNetwork"
32-
s.static_framework = true
3332

3433
s.dependency "React-Core/RCTNetworkHeaders", version
3534
end

Libraries/PushNotificationIOS/React-RCTPushNotification.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTPushNotification"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTPushNotificationHeaders", version
3635
end

Libraries/RCTRequired/RCTRequired.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,4 @@ Pod::Spec.new do |s|
2828
s.source = source
2929
s.source_files = "**/*.{c,h,m,mm,cpp}"
3030
s.header_dir = "RCTRequired"
31-
s.static_framework = true
3231
end

Libraries/Settings/React-RCTSettings.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTSettings"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTSettingsHeaders", version
3635
end

Libraries/Text/React-RCTText.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "**/*.{h,m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTText"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTTextHeaders", version
3635
end

Libraries/TypeSafety/RCTTypeSafety.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ Pod::Spec.new do |s|
3232
s.source = source
3333
s.source_files = "**/*.{c,h,m,mm,cpp}"
3434
s.header_dir = "RCTTypeSafety"
35-
s.static_framework = true
3635
s.pod_target_xcconfig = {
3736
"USE_HEADERMAP" => "YES",
3837
"CLANG_CXX_LANGUAGE_STANDARD" => "c++14",

Libraries/Vibration/React-RCTVibration.podspec

-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.source_files = "*.{m}"
3131
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3232
s.header_dir = "RCTVibration"
33-
s.static_framework = true
3433

3534
s.dependency "React-Core/RCTVibrationHeaders", version
3635
end

Libraries/WebSocket/React-RCTWebSocket.podspec

-36
This file was deleted.

RNTester/Podfile.lock

+35-44
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ PODS:
2727
- React-Core (= 1000.0.0)
2828
- React (1000.0.0):
2929
- React-Core (= 1000.0.0)
30-
- React-DevSupport (= 1000.0.0)
30+
- React-Core/DevSupport (= 1000.0.0)
31+
- React-Core/RCTWebSocket (= 1000.0.0)
3132
- React-RCTActionSheet (= 1000.0.0)
3233
- React-RCTAnimation (= 1000.0.0)
3334
- React-RCTBlob (= 1000.0.0)
@@ -37,7 +38,6 @@ PODS:
3738
- React-RCTSettings (= 1000.0.0)
3839
- React-RCTText (= 1000.0.0)
3940
- React-RCTVibration (= 1000.0.0)
40-
- React-RCTWebSocket (= 1000.0.0)
4141
- React-ART (1000.0.0):
4242
- React-Core/ARTHeaders (= 1000.0.0)
4343
- React-Core (1000.0.0):
@@ -71,13 +71,15 @@ PODS:
7171
- React-jsi (= 1000.0.0)
7272
- React-jsiexecutor (= 1000.0.0)
7373
- yoga (= 1000.0.0.React)
74-
- React-Core/DevSupportHeaders (1000.0.0):
74+
- React-Core/DevSupport (1000.0.0):
7575
- Folly (= 2018.10.22.00)
7676
- glog
77-
- React-Core/Default
77+
- React-Core/Default (= 1000.0.0)
78+
- React-Core/RCTWebSocket (= 1000.0.0)
7879
- React-cxxreact (= 1000.0.0)
7980
- React-jsi (= 1000.0.0)
8081
- React-jsiexecutor (= 1000.0.0)
82+
- React-jsinspector (= 1000.0.0)
8183
- yoga (= 1000.0.0.React)
8284
- React-Core/RCTActionSheetHeaders (1000.0.0):
8385
- Folly (= 2018.10.22.00)
@@ -159,10 +161,10 @@ PODS:
159161
- React-jsi (= 1000.0.0)
160162
- React-jsiexecutor (= 1000.0.0)
161163
- yoga (= 1000.0.0.React)
162-
- React-Core/RCTWebSocketHeaders (1000.0.0):
164+
- React-Core/RCTWebSocket (1000.0.0):
163165
- Folly (= 2018.10.22.00)
164166
- glog
165-
- React-Core/Default
167+
- React-Core/Default (= 1000.0.0)
166168
- React-cxxreact (= 1000.0.0)
167169
- React-jsi (= 1000.0.0)
168170
- React-jsiexecutor (= 1000.0.0)
@@ -171,16 +173,13 @@ PODS:
171173
- FBReactNativeSpec (= 1000.0.0)
172174
- Folly (= 2018.10.22.00)
173175
- React-Core/CoreModulesHeaders (= 1000.0.0)
176+
- ReactCommon/turbomodule/core (= 1000.0.0)
174177
- React-cxxreact (1000.0.0):
175178
- boost-for-react-native (= 1.63.0)
176179
- DoubleConversion
177180
- Folly (= 2018.10.22.00)
178181
- glog
179182
- React-jsinspector (= 1000.0.0)
180-
- React-DevSupport (1000.0.0):
181-
- React-Core/DevSupportHeaders (= 1000.0.0)
182-
- React-jsinspector (= 1000.0.0)
183-
- React-RCTWebSocket (= 1000.0.0)
184183
- React-jsi (1000.0.0):
185184
- boost-for-react-native (= 1.63.0)
186185
- DoubleConversion
@@ -205,9 +204,9 @@ PODS:
205204
- React-Core/RCTAnimationHeaders (= 1000.0.0)
206205
- React-RCTBlob (1000.0.0):
207206
- React-Core/RCTBlobHeaders (= 1000.0.0)
207+
- React-Core/RCTWebSocket (= 1000.0.0)
208208
- React-jsi (= 1000.0.0)
209209
- React-RCTNetwork (= 1000.0.0)
210-
- React-RCTWebSocket (= 1000.0.0)
211210
- React-RCTImage (1000.0.0):
212211
- React-Core/RCTImageHeaders (= 1000.0.0)
213212
- React-RCTNetwork (= 1000.0.0)
@@ -225,8 +224,6 @@ PODS:
225224
- React-Core/RCTTextHeaders (= 1000.0.0)
226225
- React-RCTVibration (1000.0.0):
227226
- React-Core/RCTVibrationHeaders (= 1000.0.0)
228-
- React-RCTWebSocket (1000.0.0):
229-
- React-Core/RCTWebSocketHeaders (= 1000.0.0)
230227
- ReactCommon/jscallinvoker (1000.0.0):
231228
- DoubleConversion
232229
- Folly (= 2018.10.22.00)
@@ -262,9 +259,10 @@ DEPENDENCIES:
262259
- React (from `../`)
263260
- React-ART (from `../Libraries/ART`)
264261
- React-Core (from `../`)
262+
- React-Core/DevSupport (from `../`)
263+
- React-Core/RCTWebSocket (from `../`)
265264
- React-CoreModules (from `../React/CoreModules`)
266265
- React-cxxreact (from `../ReactCommon/cxxreact`)
267-
- React-DevSupport (from `../React`)
268266
- React-jsi (from `../ReactCommon/jsi`)
269267
- React-jsiexecutor (from `../ReactCommon/jsiexecutor`)
270268
- React-jsinspector (from `../ReactCommon/jsinspector`)
@@ -279,7 +277,6 @@ DEPENDENCIES:
279277
- React-RCTTest (from `RCTTest`)
280278
- React-RCTText (from `../Libraries/Text`)
281279
- React-RCTVibration (from `../Libraries/Vibration`)
282-
- React-RCTWebSocket (from `../Libraries/WebSocket`)
283280
- ReactCommon/jscallinvoker (from `../ReactCommon`)
284281
- ReactCommon/turbomodule/core (from `../ReactCommon`)
285282
- ReactCommon/turbomodule/samples (from `../ReactCommon`)
@@ -314,8 +311,6 @@ EXTERNAL SOURCES:
314311
:path: "../React/CoreModules"
315312
React-cxxreact:
316313
:path: "../ReactCommon/cxxreact"
317-
React-DevSupport:
318-
:path: "../React"
319314
React-jsi:
320315
:path: "../ReactCommon/jsi"
321316
React-jsiexecutor:
@@ -344,8 +339,6 @@ EXTERNAL SOURCES:
344339
:path: "../Libraries/Text"
345340
React-RCTVibration:
346341
:path: "../Libraries/Vibration"
347-
React-RCTWebSocket:
348-
:path: "../Libraries/WebSocket"
349342
ReactCommon:
350343
:path: "../ReactCommon"
351344
yoga:
@@ -355,33 +348,31 @@ SPEC CHECKSUMS:
355348
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
356349
DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2
357350
FBLazyVector: 34431b7e61740bed29b082ff81500b0ffafaffa0
358-
FBReactNativeSpec: 0c434153f44d4a1cbd111fbde1502580475e9132
351+
FBReactNativeSpec: e9febd2d5cc091662f172724165922b2e28d10a3
359352
Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51
360353
glog: 1f3da668190260b06b429bb211bfbee5cd790c28
361-
RCTRequired: 770d733d8b6881e0ecd1085d0eb7f57dfacc5d93
362-
RCTTypeSafety: 8540a73bafd032be534cb683471f985dc656bfb6
363-
React: 7c652b87c228731c51ab5764de68b6c17e6342be
364-
React-ART: 84555d2fcff922e3fed8ce70b5fb2536fb7c163e
365-
React-Core: 266e5912bbfd0bddb866782b9bb560d82c5b8ef4
366-
React-CoreModules: 018c3d55a5bfbd04655489942a8c606527176eed
367-
React-cxxreact: 8cbb09bfdf4241546c5f4a9f46d92f63295281e0
368-
React-DevSupport: f5349e286c067443895e6ae60d808eeaabedf472
369-
React-jsi: ec7bccfadb03c9aa26db7ba880a02b983b921316
370-
React-jsiexecutor: 173df46fcbafe60986cd5e42bde45e693c783af9
371-
React-jsinspector: 426757e28a6909b49f7dd126f6f1dbd2783764f8
372-
React-RCTActionSheet: a172ba63176ca80d7440f29fdd65515b442e4232
373-
React-RCTAnimation: 276dde8150bb1a7d9eef8f3b44db66bddebedec3
374-
React-RCTBlob: d60bf36ef77d3fb9e39a46443ea89c68381b4650
375-
React-RCTImage: 29cbf7ccc2b89ac7ac6d9f2c84c15cfabaeabe6b
376-
React-RCTLinking: 387d21f8fd4423dde220bf18be9715054cfc7cf5
377-
React-RCTNetwork: ad750ce9bd98d382020174b14537d2ffa09427e0
378-
React-RCTPushNotification: 90e1127e8f243296eef48c35dba370588405728b
379-
React-RCTSettings: 405b277fb5afed794564af2d99ab71315806768d
380-
React-RCTTest: c999df66263f36ddd63328356ac5898f2089e91e
381-
React-RCTText: 667603cc6464856a6314a05b3d605da0a7fbf8e3
382-
React-RCTVibration: 775cffcf1040bfa92fea6982f43d5f1a438edf05
383-
React-RCTWebSocket: c10d7eecfc66d58ece635508dc1e8ecf6b548c60
384-
ReactCommon: 7fd06e02cb448d0260cb7219cf0057984b49de17
354+
RCTRequired: 33f3b89d2d82ef01c02b9b4f8146c43762e509d8
355+
RCTTypeSafety: 2b1cb2d92b779aa9a3522f67bd4f07e6b6d0797e
356+
React: 28a654b69575941571c073a656bc06795825e7f7
357+
React-ART: a5da06a892342d03896e0db45a7072525981f63c
358+
React-Core: 47b8ab211d9325292811e62ee23c54b464853111
359+
React-CoreModules: 38d8cc34497674ae3d411e644a9b17ad75ef3f74
360+
React-cxxreact: 7c4242192149ce0205b53efaa03e3bf86ba4337c
361+
React-jsi: 98d1f9d8a79d2720ba6a44c2d928a77f315b7e4f
362+
React-jsiexecutor: c0ab8c80a6e88380d63f583690a50d4a723b47b5
363+
React-jsinspector: ea0a218071a11c3687cef2480580180caa6a64c0
364+
React-RCTActionSheet: 090e7bd7c5774d919c47c4eeff78223a7fd8c19c
365+
React-RCTAnimation: 73d536fff417a101724d9529189c95a94263710c
366+
React-RCTBlob: 86017e0ba937b94445c5f680fef27ab831700fe7
367+
React-RCTImage: 7f5c9bff34905f1bc216be512ba0ae68f872208a
368+
React-RCTLinking: d7d7f792e63a8d57380cecbb9b7a3b31f92d1bb6
369+
React-RCTNetwork: c8f9d40297f35ea3792ea81866f33e8b45c25935
370+
React-RCTPushNotification: acffa8af6a20e6d41b041a8c4cb4bea0de9df0dd
371+
React-RCTSettings: dd4009546ce88c3647c32f0b5922459ab313fdca
372+
React-RCTTest: 73df09ec226fcad6e7e058a313e5dd16cccf86a8
373+
React-RCTText: 9078167d3bc011162326f2d8ef4dd580ec1eca17
374+
React-RCTVibration: 63c20d89204937ff8c7bbc1e712383347e6fbd90
375+
ReactCommon: 63d1a6355d5810a21a61efda9ac93804571a1b8b
385376
yoga: b72aa5b3708cc93c5897f8297122d6eba1331e07
386377

387378
PODFILE CHECKSUM: f866eab42001b1d59349bce6b20d00912cdc700c

RNTester/RCTTest/React-RCTTest.podspec

+1-2
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Pod::Spec.new do |s|
3030
s.preserve_paths = "package.json", "LICENSE", "LICENSE-docs"
3131
s.framework = "XCTest"
3232
s.header_dir = "RCTTest"
33-
s.static_framework = true
34-
33+
3534
s.dependency "React-Core", version
3635
end

0 commit comments

Comments
 (0)