rust-webpack-template icon indicating copy to clipboard operation
rust-webpack-template copied to clipboard

Upgrade dependencies (fixes errors with modern Node)

Open asmello opened this issue 2 years ago • 4 comments

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.

asmello avatar May 07 '23 17:05 asmello

Note this is overlapping with other PRs like #182, but more comprehensive.

asmello avatar May 07 '23 17:05 asmello

Super helpful pr! I just had one nit regarding the webpack config. If I wasn't clear please feel free to reply!

nickgirardo avatar Jul 03 '23 22:07 nickgirardo

BTW I didn't touch the parent script but it's also quite stale (it's got some very old versions on the lockfile, and the travis setup is relying on Node 10).

asmello avatar Jul 04 '23 17:07 asmello

What seems to be the blocker for this PR to get merged?

feynon avatar Mar 02 '24 21:03 feynon