Skip to content

Commit a9fe42f

Browse files
authored
Merge pull request #252 from rthic23/ern-0.52-upgrade
Add ERN 0.52.x to support RN 0.72
2 parents 84a8ef1 + 304bfd3 commit a9fe42f

File tree

3 files changed

+165
-0
lines changed

3 files changed

+165
-0
lines changed

manifest.json

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1994,6 +1994,82 @@
19941994
"react@17.0.2"
19951995
]
19961996
},
1997+
{
1998+
"platformVersion": "0.52.x",
1999+
"targetNativeDependencies": [
2000+
"@react-native-community/async-storage@1.9.0",
2001+
"@react-native-community/cameraroll@1.1.2",
2002+
"@react-native-community/clipboard@1.2.3",
2003+
"@react-native-community/datetimepicker@2.3.2",
2004+
"@react-native-community/geolocation@2.0.2",
2005+
"@react-native-community/masked-view@0.1.10",
2006+
"@react-native-community/netinfo@5.7.0",
2007+
"@react-native-community/progress-bar-android@1.0.3",
2008+
"@react-native-community/progress-view@1.0.3",
2009+
"@react-native-firebase/analytics@7.4.1",
2010+
"@react-native-firebase/app@8.3.0",
2011+
"@react-native-firebase/crashlytics@8.3.0",
2012+
"appcenter-analytics@4.4.3",
2013+
"appcenter-crashes@4.4.3",
2014+
"appcenter@4.4.3",
2015+
"ern-container-publisher-maven^@3.0.0",
2016+
"ern-navigation@^2.1.0",
2017+
"lottie-ios@3.1.6",
2018+
"lottie-react-native@3.3.2",
2019+
"react-native@0.72.14",
2020+
"react-native-admob@1.3.2",
2021+
"react-native-android-settings-library@1.0.6",
2022+
"react-native-android-wifi@0.0.41",
2023+
"react-native-camera@4.0.3",
2024+
"react-native-code-push@6.2.0",
2025+
"react-native-device-info@5.6.3",
2026+
"react-native-electrode-bridge@1.6.0",
2027+
"react-native-exif@0.4.0",
2028+
"react-native-fast-image@8.1.5",
2029+
"react-native-fbads@7.0.5",
2030+
"react-native-fbsdk@1.1.2",
2031+
"react-native-fs@2.16.6",
2032+
"react-native-gesture-handler@1.6.1",
2033+
"react-native-image-picker@5.3.1",
2034+
"react-native-keep-awake@4.0.0",
2035+
"react-native-keychain@6.0.0",
2036+
"react-native-keyevent@0.2.8",
2037+
"react-native-linear-gradient@2.5.6",
2038+
"react-native-llimageview@2.0.4",
2039+
"react-native-llphotoassets@0.1.14",
2040+
"react-native-lluploader@0.4.6",
2041+
"react-native-location@2.5.0",
2042+
"react-native-pager-view@5.1.7",
2043+
"react-native-maps@0.27.1",
2044+
"react-native-msal@3.0.4",
2045+
"react-native-network-info@5.2.1",
2046+
"react-native-orientation@3.1.3",
2047+
"react-native-pdf@6.1.1",
2048+
"react-native-permissions@2.0.10",
2049+
"react-native-photo-view@1.5.2",
2050+
"react-native-reanimated@1.8.0",
2051+
"react-native-restart@0.0.20",
2052+
"react-native-safe-area-context@3.0.3",
2053+
"react-native-screens@2.7.0",
2054+
"react-native-search-bar@3.5.1",
2055+
"react-native-sentry@0.43.2",
2056+
"react-native-simple-toast@1.1.0",
2057+
"react-native-sound@0.11.0",
2058+
"react-native-svg@12.1.0",
2059+
"react-native-vector-icons@6.6.0",
2060+
"react-native-version-number@0.3.6",
2061+
"react-native-video@4.4.5",
2062+
"react-native-view-overflow@0.0.5",
2063+
"react-native-view-shot@3.1.2",
2064+
"react-native-webview@11.26.1",
2065+
"react-native-wkwebview-reborn@2.0.0",
2066+
"realm@5.0.3",
2067+
"rn-fetch-blob@0.12.0"
2068+
],
2069+
"targetJsDependencies": [
2070+
"react@17.0.2"
2071+
]
2072+
},
19972073
{
19982074
"platformVersion": "1000.0.0",
19992075
"targetNativeDependencies": [
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Resolve react_native_pods.rb with node to allow for hoisting
2+
require Pod::Executable.execute_command('node', ['-p',
3+
'require.resolve(
4+
"react-native/scripts/react_native_pods.rb",
5+
{paths: [process.argv[1]]},
6+
)', __dir__]).strip
7+
8+
platform :ios, '{{{iosDeploymentTarget}}}'
9+
prepare_react_native_project!
10+
11+
{{#extraPodspecsSources}}
12+
{{{.}}}
13+
{{/extraPodspecsSources}}
14+
15+
{{#extraPodfileStatements}}
16+
{{{.}}}
17+
{{/extraPodfileStatements}}
18+
19+
# If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set.
20+
# because `react-native-flipper` depends on (FlipperKit,...) that will be excluded
21+
#
22+
# To fix this you can also exclude `react-native-flipper` using a `react-native.config.js`
23+
# ```js
24+
# module.exports = {
25+
# dependencies: {
26+
# ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}),
27+
# ```
28+
flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled
29+
30+
linkage = ENV['USE_FRAMEWORKS']
31+
if linkage != nil
32+
Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
33+
use_frameworks! :linkage => linkage.to_sym
34+
end
35+
36+
target '{{{projectName}}}' do
37+
config = use_native_modules!
38+
39+
# Flags change depending on the env values.
40+
flags = get_default_flags()
41+
42+
use_react_native!(
43+
:path => config[:reactNativePath],
44+
# to enable hermes on iOS, change `false` to `true` and then install pods
45+
:hermes_enabled => false,
46+
:fabric_enabled => flags[:fabric_enabled],
47+
# An absolute path to your application root.
48+
:app_path => "#{Pod::Config.instance.installation_root}/.."
49+
)
50+
51+
{{#extraPods}}
52+
{{{.}}}
53+
{{/extraPods}}
54+
55+
post_install do |installer|
56+
# https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
57+
react_native_post_install(
58+
installer,
59+
config[:reactNativePath],
60+
:mac_catalyst_enabled => false
61+
)
62+
__apply_Xcode_12_5_M1_post_install_workaround(installer)
63+
64+
# https://github.com/facebook/react-native/issues/35863#issuecomment-1414536814
65+
PLIST_BUDDY_PATH = '/usr/libexec/PlistBuddy'
66+
installer.pods_project.targets.each do |target|
67+
target.build_configurations.each do |config|
68+
if target.name == "hermes-engine"
69+
installer.pods_project.files.each do |fileref|
70+
if fileref.path.end_with? "hermes.xcframework"
71+
hermes_plist_file = "#{fileref.real_path}/Info.plist"
72+
# Patch Hermes to remove the debug symbols entry from the Info.plist (as it's not shipped with it)
73+
# This might be removed once Hermes starts to ship with Debug symbols or we remove our
74+
# direct dependency from the Main iOS target on "hermes.xcframework"
75+
Open3.capture3(PLIST_BUDDY_PATH, '-c', 'Delete :AvailableLibraries:0:DebugSymbolsPath', hermes_plist_file)
76+
Open3.capture3(PLIST_BUDDY_PATH, '-c', 'Delete :AvailableLibraries:1:DebugSymbolsPath', hermes_plist_file)
77+
Open3.capture3(PLIST_BUDDY_PATH, '-c', 'Delete :AvailableLibraries:2:DebugSymbolsPath', hermes_plist_file)
78+
end
79+
end
80+
end
81+
end
82+
end
83+
end
84+
end
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"ios": {
3+
"podfile": "Podfile"
4+
}
5+
}

0 commit comments

Comments
 (0)