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

Upgrade Metro dependencies to v0.73.0 in cli-plugin-metro #1711

Merged
merged 1 commit into from
Oct 17, 2022

Conversation

arushikesarwani94
Copy link
Contributor

@arushikesarwani94 arushikesarwani94 commented Oct 4, 2022

Summary:

Updating the versions of Metro in the cli-plugin-metro to incorporate the new Metro Release v0.73.0. This release switches the default minifier to terser, raises the minimum Node version to ^14.17, and drops support for old Watchman versions. It also improves support for Apple Silicon and will enable the use of BigInt out of the box in React Native 0.71.

Per the release notes we shared (link below), I am suggesting that this is a breaking change for RN CLI.

Metro Release Notes: https://github.com/facebook/metro/releases/tag/v0.73.0
Full Changelog between v0.72.3 and v0.73.0: facebook/metro@v0.72.3...v0.73.0

Reminder : When React Native updates the CLI to a version that depends on metro 0.73.0, it must also update metro-runtime etc to 0.73.0 in the same commit

Test Plan:

  • Updated dependencies with yarn.
  • ✅ Ran yarn test.

Updating the versions of Metro in the `cli-plugin-metro` to incorporate the new Metro Release v0.73.0
@arushikesarwani94 arushikesarwani94 changed the title Updating Metro version in cli-plugin-metro Upgrade Metro dependencies to v0.73.0 in cli-plugin-metro Oct 5, 2022
@arushikesarwani94 arushikesarwani94 marked this pull request as ready for review October 5, 2022 10:32
@arushikesarwani94
Copy link
Contributor Author

@thymikee Can I get a review of this PR. This is the debut of the new Metro release process.

Copy link
Collaborator

@adamTrz adamTrz left a comment

Choose a reason for hiding this comment

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

Lgtm!

@liamjones
Copy link
Contributor

liamjones commented Oct 14, 2022

#1700 recently removed the checks for watchman versions.

I notice this PR says:

...drops support for old Watchman versions

Does that mean a check needs to be reintroduced?

@robhogan
Copy link
Collaborator

Does that mean a check needs to be reintroduced?

Good question. My TLDR suggestion would be "no, leave this to Metro".

Checking Watchman versions isn't trivial, both because new version strings are semi-opaque (see commit comment facebook/metro@d831400), and because versions don't actually tell the whole story - for a given version Watchman may be built with different capabilities.

Metro safely falls back to non-Watchman if the installed Watchman doesn't meet requirements, but it's still pretty conservative - in practice any release after 4.9.0 (2017) will work.

@adamTrz adamTrz merged commit 7ea7e93 into react-native-community:main Oct 17, 2022
@arushikesarwani94 arushikesarwani94 deleted the patch-3 branch February 23, 2023 06:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants