brianloveswords / buffer-crc32

A pure javascript CRC32 algorithm that plays nice with binary data
MIT License
97 stars 30 forks source link

upgrade dependencies #35

Open thejoshwolfe opened 1 month ago

thejoshwolfe commented 1 month ago

Running npm install on master branch gives 6 deprecation warnings and 33 security vulnerability alerts. This PR resolves those by upgrading dependnecies, notably the tap dependency.

Running npm run build on master branch prompts to install unbuild and cpy-cli into ~/.npm/_npx, and these installations give 2 more deprecation warnings. This PR moves those dependencies into devDependencies instead of managing system/user-wide installations so that the package-lock mechanism and npm audit can stay on top of the deprecations. This PR does not resolve those two deprecation warnings, because the latest version of unbuild still hasn't fixed them yet.

The latest version of tap gives a warning that the classic reporter is no longer supported, and it fallsback to "raw TAP", which is very verbose. Using the default base reporter seems pretty close to the old formatting:

Old output (classic):

image

New output (base):

image

This PR also commits the package-lock.json file, as per the official recommendation.

This PR also adds a few directories generated by the build and test procedures to .gitignore.

This PR also upgrades the prettier dependency, but I don't think that matters. There weren't any warnings for the old version, and the formatting produced by the two versions is identical for this codebase.

thejoshwolfe commented 1 month ago

It looks like tap doesn't support the versions of node listed in your github actions config. That kinda undermines the whole point of this PR. If you still want to support the old node versions, then I can adapt the PR to use old enough versions of dependencies. some changes here are probably still good, like the package-lock and gitignore changes.