-
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 React 18 #1659
base: master
Are you sure you want to change the base?
Upgrade to React 18 #1659
Conversation
Nice! Auspice uses a bunch of class methods that are removed in React 18 (at least, that's my understanding from these release notes) which is why I've been holding off doing this but it would be great to upgrade here. |
@victorlin I just pushed what I had in progress. It resolves all peer deps like I'm going to put this down now, so please feel free to pick it up if you'd like! |
Also, to clarify, I don't need this upgrade in order to prototype the thing I need React 18 for in nextstrain.org. |
A bunch of peer dependencies are now failing.
…react All of these had peer deps on react that evaluated to <18. Upgrades for most were available, often major version bumps so they may come with breaking changes. A couple things were not available and we need to switch to alternatives. Our calling code for libraries has not been updated, so it's unlikely to compile or run. But npm is now happy!
Auspice builds and is usable without crashing, but a number of features are disabled
Without this we're essentially using react 17
Reading the changelogs shows our usage shouldn't be affected, and (brief) testing supports this Release notes <https://github.com/reduxjs/redux-toolkit/releases>, <https://github.com/reduxjs/react-redux/releases>
b535897
to
2f6b4c4
Compare
Needs more testing, but seems to be working well Mainly following <https://github.com/pmmmwh/react-refresh-webpack-plugin>. Other useful resources: <facebook/react#16604>, <https://github.com/webpack/webpack-dev-middleware>, <https://github.com/webpack-contrib/webpack-hot-middleware>
2f6b4c4
to
7e3f7e2
Compare
Rebased onto master & moved this forward a little bit.
We had already renamed these lifecycle methods to Remaining tasks:
|
Testing an upgrade to React 18 in order to use some new features in downstream projects.
The version spec should potentially be something like
^16 | ^18
so that Auspice can be flexible and let downstream integrations take their pick. This would avoid forcing all downstream integrations to upgrade.Todos
XXX TODO
comments added in this branchpackage.json
diff).Testing