-
Notifications
You must be signed in to change notification settings - Fork 162
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 to NPM 7/8, lockfile v2 #1602
Merged
jameshadfield
merged 7 commits into
victorlin/update-versions
from
victorlin/update-npm-and-lockfile
Dec 7, 2022
Merged
Upgrade to NPM 7/8, lockfile v2 #1602
jameshadfield
merged 7 commits into
victorlin/update-versions
from
victorlin/update-npm-and-lockfile
Dec 7, 2022
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-vbblde
November 23, 2022 21:24
Inactive
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-jsrmyh
November 23, 2022 23:47
Inactive
victorlin
force-pushed
the
victorlin/update-npm-and-lockfile
branch
from
November 28, 2022 20:21
4acd365
to
198816c
Compare
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-qlcdgy
November 28, 2022 20:21
Inactive
victorlin
force-pushed
the
victorlin/update-npm-and-lockfile
branch
from
November 28, 2022 22:06
198816c
to
782c1a1
Compare
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-qlcdgy
November 28, 2022 22:06
Inactive
victorlin
force-pushed
the
victorlin/update-npm-and-lockfile
branch
from
November 28, 2022 23:30
782c1a1
to
ae1b242
Compare
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-qlcdgy
November 28, 2022 23:30
Inactive
victorlin
force-pushed
the
victorlin/update-npm-and-lockfile
branch
from
November 28, 2022 23:59
ae1b242
to
7be662d
Compare
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-qlcdgy
November 29, 2022 00:00
Inactive
victorlin
changed the title
Upgrade NPM/lockfile version
Upgrade to NPM 7/8, lockfile v2
Nov 29, 2022
This was referenced Nov 29, 2022
jameshadfield
approved these changes
Dec 1, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be working well -- I tested together with (the parent) #1520 under node 16.17.1, npm 8.15.0 on both arch=osx-64 (i.e. rosetta emulation on M1) and arch=arm64 (M1). The notification animations seem unchanged, which seemed to be the main code change introduced here.
victorlin
force-pushed
the
victorlin/update-versions
branch
from
December 3, 2022 02:43
33b5cbd
to
1d2825d
Compare
NPM 7 comes with a new lockfile version which we will be using for a more consistent and up-to-date developer experience. NPM 8 is also supported since it uses the same lockfile version. The lockfile was upgraded from a fresh environment (node v16.17.1, npm 8.15.0) using `npm ci --ignore-scripts && npm install --ignore-scripts`.
Now that NPM 7 tries to install peer dependencies, having an old version of react-addons-css-transition-group alongside a newer version of React will not work with `npm install` as it used to. However, simply upgrading the old package does not work since there are no newer versions compatible with React 16. Instead, it has been deprecated in favor of react-transition-group¹. Luckily, version 1 of the new package provides a drop-in replacement. Commands used²: npm uninstall react-addons-css-transition-group --legacy-peer-deps npm install react-transition-group@1 --legacy-peer-deps ¹ https://www.npmjs.com/package/react-addons-css-transition-group ² --legacy-peer-deps is necessary with NPM 7 until other peer dependency issues are resolved by future commits.
Now that NPM 7 tries to install peer dependencies, having an old version of css-loader alongside a newer version of webpack will not work with `npm install` as it used to. This is the earliest version of css-loader that supports the installed webpack version. Command used¹: npm info css-loader@3 peerDependencies npm install --legacy-peer-deps \ css-loader@3.4.0 ¹ --legacy-peer-deps is necessary with NPM 7 until other peer dependency issues are resolved by future commits.
Now that NPM 7 tries to install peer dependencies, having an old version of eslint alongside a newer version of @babel/eslint-parser will not work with `npm install` as it used to. This is the earliest version of eslint that is supported by the installed eslint-parser version. Command used¹: npm info @babel/eslint-parser@7.16.3 peerDependencies npm install --legacy-peer-deps \ eslint@7.5.0 ¹ --legacy-peer-deps is necessary with NPM 7 until other peer dependency issues are resolved by future commits.
Now that NPM 7 tries to install peer dependencies, having an old version of these packages alongside a newer version of eslint will not work with `npm install` as it used to. These are the earliest versions that support the installed eslint version. Commands used¹: npm info eslint-config-airbnb@18 peerDependencies npm info eslint-plugin-jsx-a11y@6 peerDependencies npm info eslint-plugin-react-hooks@4 peerDependencies npm install \ eslint-config-airbnb@18.2.0 \ eslint-plugin-jsx-a11y@6.3.0 \ eslint-plugin-react-hooks@4.0.1
The package version upgrades in previous commits introduced some new rules. Disabling them for now. Command used: npx eslint src --format json \ | jq -r '.[] | .messages[] | .ruleId' \ | sort | uniq
victorlin
force-pushed
the
victorlin/update-npm-and-lockfile
branch
from
December 3, 2022 03:11
7be662d
to
8c2c996
Compare
nextstrain-bot
temporarily deployed
to
auspice-victorlin-updat-qlcdgy
December 3, 2022 03:12
Inactive
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of proposed changes
Changes to support the latest NPM version.
Note: this requires a coordinated dev environment upgrade for all contributors. While lockfile v2 is backwards-compatible with older NPM versions, all developers should use NPM 7/8 which is shipped with Node.js 16.
Related issue(s)
Pre-merge tasks
Testing