Upgrade dependencies (fixes errors with modern Node) #186
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.
I've found that the current template does not work with Node 17+, due to this break. A fix for that is available in more recent versions of Webpack, so bumping the dependency version is a valid fix for the issue. Of course, since the Webpack upgrade is itself breaking, I've had to upgrade other dependencies as well, as well as modify some configuration files.
Since most dependencies were very stale and I was getting a lot of warnings for deprecations and vulnerabilities, I decided to go for a full upgrade of everything. This includes both JS and Rust dependencies, and even the Rust edition, which I bumped to 2021. Small changes to sample code were needed. As a bonus, I got rid of the dependency on the
futures
crate, as native futures are now supported.One side change I did after going over warnings was to remove the
[target."cfg(debug_assertions)".dependencies]
block. As reported here (and documented here) it doesn't actually do anything, just gets silently ignored. Removing that bug makes sense as it's something that is now reported with newer Rust.