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

Bump boost for Android to 1.76 to align with iOS + fix #33565

Closed
wants to merge 6 commits into from

Conversation

kelset
Copy link
Contributor

@kelset kelset commented Apr 4, 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:

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

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

Test Plan

CI is green (aside an unrelated ios rntester job that is also broken on main) ✅
Locally both RNTester and new app work:
Screenshot 2022-04-05 at 16 42 31

Screenshot 2022-04-05 at 18 06 01

@facebook-github-bot facebook-github-bot added 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. p: Microsoft Partner: Microsoft Partner labels Apr 4, 2022
@kelset

This comment was marked as off-topic.

@analysis-bot
Copy link

analysis-bot commented Apr 5, 2022

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

Base commit: 1e51ac2
Branch: main

@kelset kelset force-pushed the kelset/upstreaming-build-macos-patch branch from ddbae95 to a8f1355 Compare April 5, 2022 14:46
@analysis-bot
Copy link

analysis-bot commented Apr 5, 2022

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 7,766,434 -51
android hermes armeabi-v7a 7,175,397 -9
android hermes x86 8,074,157 +1
android hermes x86_64 8,053,357 +28
android jsc arm64-v8a 9,643,677 -48
android jsc armeabi-v7a 8,417,941 -23
android jsc x86 9,592,907 +1
android jsc x86_64 10,190,122 +23

Base commit: 1e51ac2
Branch: main

@kelset kelset marked this pull request as ready for review April 5, 2022 17:31
@kelset kelset requested a review from cortinico April 5, 2022 17:31
@facebook-github-bot facebook-github-bot added the Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team. label Apr 5, 2022
@react-native-bot react-native-bot added the Platform: Android Android applications. label Apr 5, 2022
@facebook-github-bot
Copy link
Contributor

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

Copy link
Contributor

@cortinico cortinico left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for doing this @kelset 🙏

Change looks fine on my end. I'm importing it to see how it behaves internally. I don't see any major blockers on top of my mind but I'll have to take a closer look at this to make sure everything works fine.

(And we want this to be merged before we cut 0.69)

@react-native-bot
Copy link
Collaborator

This pull request was successfully merged by @kelset in 5cd6367.

When will my fix make it into a release? | Upcoming Releases

@react-native-bot react-native-bot added the Merged This PR has been merged. label Apr 7, 2022
@kelset kelset deleted the kelset/upstreaming-build-macos-patch branch April 7, 2022 12:07
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. p: Microsoft Partner: Microsoft Partner Platform: Android Android applications. Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants