Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ios] Upgrade folly to 2021.06.28.00 and boost to 1.76.0 #31840

Closed
wants to merge 5 commits into from

Conversation

Kudo
Copy link
Contributor

@Kudo Kudo commented Jul 9, 2021

Summary

  1. [ios] upgrade folly to 2021.06.28.00 which aligned to android.
  2. folly compile setting from c++14 -> c++17: this folly requires c++17 for std::unordered_map::insert_or_assign.
  3. boost 1.63.0 -> 1.76.0: the old boost does not support c++17.
  4. deprecating react-native-community/boost-for-react-native: by cocoapods installer, we could download the official target.

Changelog

[iOS] [Changed] - Upgrade folly to 2021.06.28.00 and boost to 1.76.0

Test Plan

CI passed

@facebook-github-bot facebook-github-bot added Contributor A React Native contributor. CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. labels Jul 9, 2021
@analysis-bot
Copy link

analysis-bot commented Jul 9, 2021

Platform Engine Arch Size (bytes) Diff
ios - universal n/a --

Base commit: 25a1612

@analysis-bot
Copy link

analysis-bot commented Jul 9, 2021

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 9,120,302 +0
android hermes armeabi-v7a 8,646,331 +0
android hermes x86 9,559,640 +0
android hermes x86_64 9,525,817 +0
android jsc arm64-v8a 10,763,000 +0
android jsc armeabi-v7a 9,680,295 +0
android jsc x86 10,797,746 +0
android jsc x86_64 11,405,430 +0

Base commit: 25a1612

@facebook-github-bot
Copy link
Contributor

@yungsters has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator.

@Kudo
Copy link
Contributor Author

Kudo commented Jul 15, 2021

looks like it failed internally. please let me know anything i could help.

@yungsters
Copy link
Contributor

Yup. I have almost everything working, but we have some internal codegen builds that are failing. I'll ping the owner again today to help take a look.

@Kudo
Copy link
Contributor Author

Kudo commented Jul 15, 2021

@yungsters awesome! thanks for your update.

@facebook-github-bot
Copy link
Contributor

@yungsters merged this pull request in b77948e.

@facebook-github-bot facebook-github-bot added the Merged This PR has been merged. label Jul 16, 2021
@brentvatne brentvatne added the p: Expo Partner: Expo label Jul 22, 2021
facebook-github-bot pushed a commit that referenced this pull request Apr 7, 2022
Summary:
The reason why I'm working on this is to reduce the delta between this and the react-native-macos fork, in particular with the android patch folder "Build": https://github.com/microsoft/react-native-macos/tree/main/android-patches/patches/Build (it's a long story)

While checking the changes in there, I noticed that one of them was a bump of boost. Looking back into main (here), I then noticed that there have been two bumps to boot in the repo so far:
* a combo update 5 years ago to 1.63:
  * 193afff
  * 5c24a91
* and an update for the iOS side to 1.76 by Kudo last year: #31840

So this quickly turned into this: the PR wants to re-align the version of boost used in both iOS and Android.

I explored the option of bumping both to 1.78 (latest at the time of writing: https://www.boost.org/users/history/version_1_78_0.html) but then I noticed that there's a Flipper dependency, `Flipper-Boost-iOSX`, on the iOS pods side that has been released only once and it seems to imply that it's 1.76 only compatible https://github.com/priteshrnandgaonkar/Flipper-Boost-iOSX/releases/tag/1.76.0.1.11.

So going to 1.78 at least for now seems like a no-go, and I've settled for just aligning everything to 1.76 and just like iOS, move away from `boost-for-react-native` in favour of the original one.

While doing so, I also noticed that the `React/third-party.xcconfig` still had a reference to 1.68 instead of 1.76 which seems like a leftover from Kudo's PR... it's probably because it was not doing anything in the first place, so lmk if you want me to delete it.

## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->

[Android] [Changed] - Bump boost for Android to 1.76 to align with iOS

Pull Request resolved: #33565

Test Plan:
CI is green (aside an unrelated ios rntester job that is also broken on main) ✅
Locally both RNTester and new app work:
<img width="432" alt="Screenshot 2022-04-05 at 16 42 31" src="https://user-images.githubusercontent.com/16104054/161815444-0de63919-b90d-4a48-963a-872f0cc4ce79.png">

<img width="346" alt="Screenshot 2022-04-05 at 18 06 01" src="https://user-images.githubusercontent.com/16104054/161815438-b7b1c997-9dcd-47bd-acbe-732155941bb0.png">

Reviewed By: sshic

Differential Revision: D35433032

Pulled By: cortinico

fbshipit-source-id: 0d93f61f8c26eda1dd04127a8b20e799ab6828cb
Saadnajmi pushed a commit to Saadnajmi/react-native-macos that referenced this pull request Jan 15, 2023
Summary:
The reason why I'm working on this is to reduce the delta between this and the react-native-macos fork, in particular with the android patch folder "Build": https://github.com/microsoft/react-native-macos/tree/main/android-patches/patches/Build (it's a long story)

While checking the changes in there, I noticed that one of them was a bump of boost. Looking back into main (here), I then noticed that there have been two bumps to boot in the repo so far:
* a combo update 5 years ago to 1.63:
  * facebook@193afff
  * facebook@5c24a91
* and an update for the iOS side to 1.76 by Kudo last year: facebook#31840

So this quickly turned into this: the PR wants to re-align the version of boost used in both iOS and Android.

I explored the option of bumping both to 1.78 (latest at the time of writing: https://www.boost.org/users/history/version_1_78_0.html) but then I noticed that there's a Flipper dependency, `Flipper-Boost-iOSX`, on the iOS pods side that has been released only once and it seems to imply that it's 1.76 only compatible https://github.com/priteshrnandgaonkar/Flipper-Boost-iOSX/releases/tag/1.76.0.1.11.

So going to 1.78 at least for now seems like a no-go, and I've settled for just aligning everything to 1.76 and just like iOS, move away from `boost-for-react-native` in favour of the original one.

While doing so, I also noticed that the `React/third-party.xcconfig` still had a reference to 1.68 instead of 1.76 which seems like a leftover from Kudo's PR... it's probably because it was not doing anything in the first place, so lmk if you want me to delete it.

## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->

[Android] [Changed] - Bump boost for Android to 1.76 to align with iOS

Pull Request resolved: facebook#33565

Test Plan:
CI is green (aside an unrelated ios rntester job that is also broken on main) ✅
Locally both RNTester and new app work:
<img width="432" alt="Screenshot 2022-04-05 at 16 42 31" src="https://user-images.githubusercontent.com/16104054/161815444-0de63919-b90d-4a48-963a-872f0cc4ce79.png">

<img width="346" alt="Screenshot 2022-04-05 at 18 06 01" src="https://user-images.githubusercontent.com/16104054/161815438-b7b1c997-9dcd-47bd-acbe-732155941bb0.png">

Reviewed By: sshic

Differential Revision: D35433032

Pulled By: cortinico

fbshipit-source-id: 0d93f61f8c26eda1dd04127a8b20e799ab6828cb
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Contributor A React Native contributor. Merged This PR has been merged. Needs: React Native Team Attention p: Expo Partner: Expo
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants