-
Notifications
You must be signed in to change notification settings - Fork 22
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 Node 20.12.2 #54
Upgrade to Node 20.12.2 #54
Conversation
Will we need to bump up the version number as part of the node upgrade? |
@Timodie Yes, once this PR is merged and if no additional changes are needed, we'll cut a new version of this package. We don't typically have a version bump in the same PR as other changes. |
I updated the PR description (after a closer before/after examination of the I was unsure if this change in Babel output would be acceptable, but if according to caniuse/browserslist/babel it is safe to use CC: @kmuncie |
@onebytegone, would you mind giving me your thoughts on 80d826e? Namely:
I'm just checking that this particular approach is what you had in mind for accomplishing these two goals in GitHub Actions jobs. |
Come to think of it, there's a case for saying that the "uncommitted changes" step should be last in the |
The CI steps need to be updated to use Node 20. While doing so, we incorporate some additional work: - Update all actions to use the latest versions that run on Node 20 - Update the test matrix to use our .nvmrc file as one of the Node versions to test against - Check for uncommitted changes after installing dependencies
The grunt-contrib-uglify@3.0.1 package would break because Babel no longer removes `const` based on our configurations and how they interact with the latest browserslist output. However, grunt-contrib-uglify@4.0.1 or later does not break when it sees `const`. So, we can update to the latest version, 5.2.2.
Uglify was configured to mangle/compress in debug mode and beautify in production mode. This should be reversed.
@onebytegone Ok, made all suggested changes.. Note I also moved the "uncommitted changes" check as the last step of the Also note... to serve as an example, it makes sense to add |
In addition to upgrading the project to Node 20.12.2, including its GitHub Actions job, we also made these adjustments:
When regenerating the
package-lock.json
file,browserslist
made updates that cause Babel processing to allowconst
in the transformed output. (This is because the latest browser data eliminatessafari 9.1
frombrowserslist
with our settings, and Babel thus decided to keepconst
in its output.) As a result, uglification was throwing errors:Upgrading
grunt-contrib-uglify
to v4.0.1 resolves the uglification error, but we use the latest v5.2.2 as a consistent version across projects.It was also noted that the uglification settings were set to mangle/compress in debug mode and beautify in production mode. Presumably, this was intended to be the reverse.