-
Notifications
You must be signed in to change notification settings - Fork 294
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
Update Node.js version #6026
Comments
A note here about something else we can improve in the code when we upgrade Node: https://github.com/google/site-kit-wp/pull/6514/files#diff-f4bce83c408f8dc8922d771b6e6148ca21c6b980d139be6df4cc15b4505b1f0fR27-R42 |
This is a fairly urgent upgrade now, as |
@kuasha420 @aaemnnosttv Thanks for the flag! I can add this to Sprint 103; should this be upgraded from a P2? |
I think we can make it a P1 but it's not critical – Node is only something we use for builds and local development. The plugin still supports PHP 5.6 (just like WP core) which has long been EOL much longer 😄 |
I've left this as a 19 because it will likely involve E2E work and other unknowns, but I spent some time getting Node 18 builds working with many WordPress upgrades and a React upgrade—it does build in-browser and works without issue so far! 😄 |
Hey @tofumatt, while I commend the spirit of the IB here, I must flag some concerns with it. From a high level view, it's doing a huge upgrade of our core packages - React v16 -> v18, many Ideally, we should spec some or all of these upgrades separately - we do have various related issues - but with the interdependencies involved, it's an attractive proposition to do a big upgrade if we can pull it off. But, there are additional questions about the viability of doing so. Looking into the detail a bit more and taking a look at the draft PR, I notice that trying to run It turns out there also a number of packages in the Digging into it, it turns out that there's no These peer dependency issues are a useful pointer for potential problems with the upgrade to React 18. If I ignore the peer dependencies and Storybook also doesn't build for me, and we haven't really considered our GitHub workflows in any depth. This all adds to the degree of uncertainty about this upgrade. Taking all the above into account, it seems we should rethink this one a bit. When you were upgrading the various modules, was it necessary to update all the way to React 18, or could there be an upgrade path that involves less of a wholesale update to so many of our core modules? Alternatively, maybe we could upgrade our Node version more incrementally. Interested to hear your thoughts. |
Odd, I was able to get a dashboard to build and run for me, but I will look into some of your issues to see if I can reproduce them 👍🏻 So, the issue is that basically we're just super-out-of-date for lots of dependencies and a lot of them are interconnected. I did need to use Fair point about the estimate, which I think we could increase, but I think this is one of those issues that is inescapably big and needs to be a big change at once. I can check into upgrading to Node 16, but if we need to spend a lot of time upgrading I'd rather do it to the latest version of everything, I think it'll be painful either way 😅 I'll take a look through these build issues and see if I can make the drastic approach work. If not, I'll scale it back. I know we have separate issues for things like React 18 and WP packages, but doing it en-masse strikes me as better as there's so much inter-dependence and it's a "big scary upgrade" either way 😄 |
Feature Description
We are currently running on a roughly older LTS of Node (
14
) and we should explore updating to the newer LTS (18
) to benefit from the performance improvements and npm v7.This came up while working on #5345 where https://github.com/browserslist/update-db isn't compatible with npm versions < 7.
This issue should include updating the
browserslist-update-action
to the latest version, see: https://github.com/google/site-kit-wp/pull/5883/files#r1004133133.Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance criteria
Implementation Brief
.nvmrc
node
to18
seems to require upgrading other dependencies. Rather than list them here I've linked to a proof-of-concept PR: Update Node version to18
. #7881 (seepackage.json
in the diff).@wordpress/*
/webpack
/storybook packages to their latest versions.18
. #7881 as a starting point, ensure:Test Coverage
QA Brief
Changelog entry
The text was updated successfully, but these errors were encountered: