Open wswebcreation opened 10 months ago
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.83.0/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' }
Instead of using sourceforge, using https://archives.boost.io/release
works for me
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.83.0/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' }
Instead of using sourceforge, using
https://archives.boost.io/release
works for me
+1, this worked for me too.
It started to happen again today....
It started to happen again today....
did you solve it ?
Facing the same issue now, changing to https://archives.boost.io/release
worked
It redirects to a unsecured url... http://brorigin1.cpp.al/release/
Not sure it's really secured to do it.
Facing the same issue now, changing to
https://archives.boost.io/release
worked
https://archives.boost.io/release is an AWS Cloudfront distribution with backend servers hosting the files.
I have switched the origin to use an ALB (application load balancer) and TLS.
@netanelz-amdocs interesting comment. brorigin1 is an origin for the CDN. Usually there is a difference between a 'redirect' and an 'origin' though. The CDN should not be redirecting (such as HTTP response status code 302). Rather, it proxies the request on behalf of the client, and the client sees the main URL https://archives.boost.io . How did you observe redirects occurring?
I just put 'https://archives.boost.io/release' in the browser to ensure all the releases are there and see it's going to http://brorigin1.cpp.al/release/ which is an unsecure site. Are you saying it's ok to use it?
https://archives.boost.io/release is an AWS Cloudfront distribution with backend servers hosting the files.
I have switched the origin to use an ALB (application load balancer) and TLS.
@netanelz-amdocs interesting comment. brorigin1 is an origin for the CDN. Usually there is a difference between a 'redirect' and an 'origin' though. The CDN should not be redirecting (such as HTTP response status code 302). Rather, it proxies the request on behalf of the client, and the client sees the main URL https://archives.boost.io . How did you observe redirects occurring?
@netanelz-amdocs great catch! Nginx usually provides directory listings when there is a trailing slash "/". In this case "/release" was missing a slash, so nginx redirects the client to "/release/" . When the redirect happens it sends the full url that it thinks is being used: brorigin1.
I added a config parameter:
absolute_redirect off;
that should fix the problem. Clear local browser cache ...
@sdarwin Thanks. I confirm that the checksum is same.
$ curl -sL https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2 | shasum -a 256 f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41 -
Thanks, how temporary is this? Can we rely on this for the coming future, or do you have a TTL on this?
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.83.0/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' }
Instead of using sourceforge, using
https://archives.boost.io/release
works for me
Thanks! Also for me!
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.83.0/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' }
Instead of using sourceforge, using
https://archives.boost.io/release
works for me
https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2 Thanks! Also for me!
diff --git a/node_modules/react-native/third-party-podspecs/boost.podspec b/node_modules/react-native/third-party-podspecs/boost.podspec index 3d9331c..b1e2c6a 100644 --- a/node_modules/react-native/third-party-podspecs/boost.podspec +++ b/node_modules/react-native/third-party-podspecs/boost.podspec @@ -10,7 +10,7 @@ Pod::Spec.new do |spec| spec.homepage = 'http://www.boost.org' spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.' spec.authors = 'Rene Rivera'
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.76.0/boost_1_76_0.tar.bz2', :sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
This patch works
Guys!
DO NOT REPLACE HASHSUM
Replace this url
https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2
with
https://sourceforge.net/projects/boost/files/boost/1.76.0/boost_1_76_0.tar.bz2
Tried some minutes ago:
In node_modules/react-native/third-party-podspecs/boost.podspec
file:
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.76.0/boost_1_76_0.tar.bz2',
:sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
Podfile.lock
was changed to:
- boost: 57d2868c099736d80fcd648bf211b4431e51a558
+ boost: 64032b9e9b938fda23325e68a3771f0fabf414dc
Patch file: e.g. patches/react-native+0.72.5.patch
(depends on installed version)
diff --git a/node_modules/react-native/third-party-podspecs/boost.podspec b/node_modules/react-native/third-party-podspecs/boost.podspec
index 3d9331c..b1e2c6a 100644
--- a/node_modules/react-native/third-party-podspecs/boost.podspec
+++ b/node_modules/react-native/third-party-podspecs/boost.podspec
@@ -10,7 +10,7 @@ Pod::Spec.new do |spec|
spec.homepage = 'http://www.boost.org'
spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.'
spec.authors = 'Rene Rivera'
- spec.source = { :http => 'https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2',
+ spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.76.0/boost_1_76_0.tar.bz2',
:sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
# Pinning to the same version as React.podspec.
Guys!
DO NOT REPLACE HASHSUM
Replace this url
https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2
with
https://sourceforge.net/projects/boost/files/boost/1.76.0/boost_1_76_0.tar.bz2
Great! The temporary solution, as highlighted by others earlier, is indeed effective. Nevertheless, the challenge remains in having to apply this solution with every fresh package installation.
It seems that the patch method mentioned at https://github.com/facebook/react-native/issues/42180 is currently the most viable solution.
spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.83.0/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' }
Instead of using sourceforge, using
https://archives.boost.io/release
works for me
Replacing it to https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2 works Thanks a lot!!!
After patching node_modules/react-native/third-party-podspecs/boost.podspec
(with yarn patch
) I still get an error because of mismatching checksums.
STDOUT Verification checksum was incorrect, expected f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41, got 5e89103d9b70bba5c91a794126b169cb67654be2051f90cf7c22ba6893ede0ff
I'm on react-native@0.71.14
so I've replaced https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2
with
https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2
Edit: My problems were due to a bug in yarn which wouldn't apply the patch correctly after installing because we are using resolutions. In case anyone else has this problem, I was able to fix it by editing the resolutions generated by yarn following this comment: https://github.com/yarnpkg/berry/issues/4231#issuecomment-1470124509
Ok, created a simple patch for this for RN 0.73.1, but everyone could do this
- Install
patch-package
:npm install --save-dev patch-package postinstall-postinstall
- Modify
boost.podspec
:change
# Copyright (c) Meta Platforms, Inc. and affiliates. # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. Pod::Spec.new do |spec| spec.name = 'boost' spec.version = '1.83.0' spec.license = { :type => 'Boost Software License', :file => "LICENSE_1_0.txt" } spec.homepage = 'http://www.boost.org' spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.' spec.authors = 'Rene Rivera' spec.source = { :http => 'https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' } # Pinning to the same version as React.podspec. spec.platforms = min_supported_versions spec.requires_arc = false spec.module_name = 'boost' spec.header_dir = 'boost' spec.preserve_path = 'boost' end
to
# Copyright (c) Meta Platforms, Inc. and affiliates. # # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. Pod::Spec.new do |spec| spec.name = 'boost' spec.version = '1.83.0' spec.license = { :type => 'Boost Software License', :file => "LICENSE_1_0.txt" } spec.homepage = 'http://www.boost.org' spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.' spec.authors = 'Rene Rivera' # Patched due to issue https://github.com/boostorg/boost/issues/843 spec.source = { :http => 'https://sourceforge.net/projects/boost/files/boost/1.83.0/boost_1_83_0.tar.bz2', :sha256 => '6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e' } # Pinning to the same version as React.podspec. spec.platforms = min_supported_versions spec.requires_arc = false spec.module_name = 'boost' spec.header_dir = 'boost' spec.preserve_path = 'boost' end
Create a Patch:
- Run
npx patch-package react-native
to create a patch file based on your changes. This command generates a patch file in a directory calledpatches/
.Apply the Patch Automatically:
- Modify your
package.json
to apply the patch after installation. Add the following to your scripts section:"scripts": { "postinstall": "patch-package" }
- Now, whenever you run
npm install
,patch-package
will automatically apply the patch to theboost.podspec
file.
Ignorant question perhaps, but how and why does this also work for the Android side of a RN app? (If it does)
Hey all, Nicola here from the React Native team. Here is the official recommendation on how to overcome this failure:
I am facing this error when trying to install patch 0.72, can someone help?
NoMethodError - undefined method `=~' for []:Array
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `block (2 levels) in merged_xcconfigs'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `all?'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `block in merged_xcconfigs'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `each'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `each_with_object'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `merged_xcconfigs'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:1057:in `block in <class:PodTargetSettings>'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:120:in `block in define_build_settings_method'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:177:in `block in remove_pod_target_xcconfig_overrides_from_target'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:174:in `each'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:174:in `remove_pod_target_xcconfig_overrides_from_target'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:157:in `block in add_target'
<internal:kernel>:90:in `tap'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:156:in `add_target'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:47:in `block in install!'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:149:in `message'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:40:in `install!'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:115:in `block in install_pod_targets'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:112:in `map'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:112:in `install_pod_targets'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:32:in `block in install_all_pod_targets'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:149:in `message'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:31:in `install_all_pod_targets'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:19:in `generate!'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:314:in `block in create_and_save_projects'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:64:in `section'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:309:in `create_and_save_projects'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:301:in `generate_pods_project'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:180:in `integrate'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:167:in `install!'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/command/install.rb:52:in `run'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run'
/Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>'
/Users/vagrant/.asdf/installs/ruby/3.2/bin/pod:25:in `load'
/Users/vagrant/.asdf/installs/ruby/3.2/bin/pod:25:in `<main>'
CocoaPods : 1.11.3
cocoapods-deintegrate : 1.0.5
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.1
cocoapods-trunk : 1.6.0
cocoapods-try : 1.2.0
slather : 2.7.4
I am facing this error when trying to install patch 0.72, can someone help?
Error
NoMethodError - undefined method `=~' for []:Array /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `block (2 levels) in merged_xcconfigs' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `all?' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `block in merged_xcconfigs' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `each' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `each_with_object' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `merged_xcconfigs' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:1057:in `block in <class:PodTargetSettings>' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:120:in `block in define_build_settings_method' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:177:in `block in remove_pod_target_xcconfig_overrides_from_target' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:174:in `each' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:174:in `remove_pod_target_xcconfig_overrides_from_target' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:157:in `block in add_target' <internal:kernel>:90:in `tap' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:156:in `add_target' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:47:in `block in install!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:149:in `message' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:40:in `install!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:115:in `block in install_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:112:in `map' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:112:in `install_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:32:in `block in install_all_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:149:in `message' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:31:in `install_all_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:19:in `generate!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:314:in `block in create_and_save_projects' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:64:in `section' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:309:in `create_and_save_projects' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:301:in `generate_pods_project' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:180:in `integrate' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:167:in `install!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/command/install.rb:52:in `run' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>' /Users/vagrant/.asdf/installs/ruby/3.2/bin/pod:25:in `load' /Users/vagrant/.asdf/installs/ruby/3.2/bin/pod:25:in `<main>'
CocoaPods : 1.11.3
cocoapods-deintegrate : 1.0.5 cocoapods-plugins : 1.0.0 cocoapods-search : 1.0.1 cocoapods-trunk : 1.6.0 cocoapods-try : 1.2.0 slather : 2.7.4
@OmkarK45 , what is your react-native
version and what boost version is defined in node_modules/react-native/third-party-podspecs/boost.podspec
?
I am facing this error when trying to install patch 0.72, can someone help?
Error
NoMethodError - undefined method `=~' for []:Array /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `block (2 levels) in merged_xcconfigs' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `all?' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:446:in `block in merged_xcconfigs' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `each' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `each_with_object' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:444:in `merged_xcconfigs' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:1057:in `block in <class:PodTargetSettings>' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/target/build_settings.rb:120:in `block in define_build_settings_method' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:177:in `block in remove_pod_target_xcconfig_overrides_from_target' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:174:in `each' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:174:in `remove_pod_target_xcconfig_overrides_from_target' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:157:in `block in add_target' <internal:kernel>:90:in `tap' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:156:in `add_target' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:47:in `block in install!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:149:in `message' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb:40:in `install!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:115:in `block in install_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:112:in `map' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/pods_project_generator.rb:112:in `install_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:32:in `block in install_all_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:149:in `message' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:31:in `install_all_pod_targets' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/xcode/single_pods_project_generator.rb:19:in `generate!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:314:in `block in create_and_save_projects' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:64:in `section' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:309:in `create_and_save_projects' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:301:in `generate_pods_project' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:180:in `integrate' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:167:in `install!' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/command/install.rb:52:in `run' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run' /Users/vagrant/.asdf/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>' /Users/vagrant/.asdf/installs/ruby/3.2/bin/pod:25:in `load' /Users/vagrant/.asdf/installs/ruby/3.2/bin/pod:25:in `<main>'
CocoaPods : 1.11.3
cocoapods-deintegrate : 1.0.5 cocoapods-plugins : 1.0.0 cocoapods-search : 1.0.1 cocoapods-trunk : 1.6.0 cocoapods-try : 1.2.0 slather : 2.7.4
@OmkarK45 , what is your
react-native
version and what boost version is defined innode_modules/react-native/third-party-podspecs/boost.podspec
?
React Native Version : 0.72.7
spec.version = '1.76.0' @olegderecha
@OmkarK45 ,
React Native Version : 0.72.7 spec.version = '1.76.0'
I suppose, you need:
patches/react-native+0.72.7.patch
file
diff --git a/node_modules/react-native/third-party-podspecs/boost.podspec b/node_modules/react-native/third-party-podspecs/boost.podspec
index 3d9331c..bbbb738 100644
--- a/node_modules/react-native/third-party-podspecs/boost.podspec
+++ b/node_modules/react-native/third-party-podspecs/boost.podspec
@@ -10,7 +10,7 @@ Pod::Spec.new do |spec|
spec.homepage = 'http://www.boost.org'
spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.'
spec.authors = 'Rene Rivera'
spec.source = { :http => 'https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2', :sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
npx patch-package
.Or, if you need to run it just locally, you can open node_modules/react-native/third-party-podspecs/boost.podspec
and place there:
# Copyright (c) Meta Platforms, Inc. and affiliates.
#
# This source code is licensed under the MIT license found in the
# LICENSE file in the root directory of this source tree.
Pod::Spec.new do |spec|
spec.name = 'boost'
spec.version = '1.76.0'
spec.license = { :type => 'Boost Software License', :file => "LICENSE_1_0.txt" }
spec.homepage = 'http://www.boost.org'
spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.'
spec.authors = 'Rene Rivera'
spec.source = { :http => 'https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2',
:sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
# Pinning to the same version as React.podspec.
spec.platforms = { :ios => '11.0' }
spec.requires_arc = false
spec.module_name = 'boost'
spec.header_dir = 'boost'
spec.preserve_path = 'boost'
end
@olegderecha Thanks for the details solution. Here's the patch file that I've right now
diff --git a/node_modules/react-native/third-party-podspecs/boost.podspec b/node_modules/react-native/third-party-podspecs/boost.podspec
index 3d9331c..bbbb738 100644
--- a/node_modules/react-native/third-party-podspecs/boost.podspec
+++ b/node_modules/react-native/third-party-podspecs/boost.podspec
@@ -10,7 +10,7 @@ Pod::Spec.new do |spec|
spec.homepage = 'http://www.boost.org'
spec.summary = 'Boost provides free peer-reviewed portable C++ source libraries.'
spec.authors = 'Rene Rivera'
- spec.source = { :http => 'https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2',
+ spec.source = { :http => 'https://archives.boost.io/release/1.76.0/source/boost_1_76_0.tar.bz2',
:sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
# Pinning to the same version as React.podspec.
the only difference between the one you provided and the one I have is this line index 3d9331c..bbbb738 100644
I can see boost being in installed in CI
but the error appears after this
@OmkarK45 , if you update this file node_modules/react-native/third-party-podspecs/boost.podspec
and the issue still occurs, the issues is not with a patch.
Try:
Pods
dir
Podfile.lock
and pod install
again.If anyone hasn't been able to solve it yet, I suggest this link from a member of the react native team, I managed to solve my problem but it's a temporary solution, I'm on version 0.68.
link -> https://github.com/facebook/react-native/issues/42180
@OmkarK45 , if you update this file
node_modules/react-native/third-party-podspecs/boost.podspec
and the issue still occurs, the issues is not with a patch. Try:
- rename
Pods
dir- try to install new Pods
- try to remove
Podfile.lock
andpod install
again.
You were right, the issue was with cocoapods version, I installed 1.13 and the error went away
If you don't want to introduce a patch with patch-package
, you can simply upgrade your RN version:
[Workaround Available] Error installing boost Verification checksum was incorrect. #42180
It has been fixed for React Native (0.70), 0.71, 0.72 and 0.73.
Unfortunately it wasn't fixed for 0.71
Unfortunately it wasn't fixed for 0.71
Hope this can help you:
They've released the fix for RN version 0.72 (0.72.9) ~40 mins ago at the time of writing this. I can only assume the fixes for 0.73, 0.71 will follow shortly
Hi i have fixed the issue of react native versionsum on boost now i have another problem on android which is
What went wrong: Execution failed for task ':react-native-reanimated:prepareBoost'.
Could not read appname/node_modules/react-native-reanimated/android/build/downloads/boost_1_76_0.tar.gz. Not in GZIP format
and now i have downloaded the boost 1_76_0 on sourceforge website and added it to appname/node_modules/react-native-reanimated/android/build/downloads/boost_1_76_0.tar.gz. and now here is the error.
/node_modules/react-native/ReactCommon/cxxreact/CxxModule.h:15:10: fatal error: 'folly/dynamic.h' file not found
^~~~~~~~~~~~~~~~~
1 error generated.
Folly is not part of Boost; it comes from Facebook. See https://github.com/facebook/folly
jfrog started working again. We can download boost file from jfrog without error now.
how it was fixed? do we have official comment from the team? im wondering if this issue would happen again
how it was fixed? do we have official comment from the team? I'm wondering if this issue would happen again
At this point you wonder if the maintainers only knew it was working again from comments in issue. They have really done an absurdly impressive job of ignoring this issue and all requests for guidance or clarification on how to proceed. Full head in the sand mode.
I mean, how many time does a dev with a significant project have to professionally and politely ask this question, almost daily, without being ignored? https://github.com/boostorg/boost/issues/845#issuecomment-1880596544
This will happen again as it's been an ongoing problem for this project for too long while they insist of using these vanity projects to host the source code people need.
Your only option at this point is to factor in your own redundancy because the most realisable takeaway from this repeat issue is that
Another defining moment in opensource software development of how to not do something.
I'm developing a Mobile app with React Native (0.73.1) and for building the app I need to install the pods. The pods contains installing boos, see this file.
I get the following error
When I check this site I see the checksum should be
6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e
When I do this on my Mac
I get a different checksum
Please let me know what I need to provide more to debug this