DEV Community

Pelle Wessman
Pelle Wessman

Posted on

installed-check 5.0.0: Robustness galore

A few seconds ago I shipped version 5.0.0 of installed-check CLI and its companion installed-check-core module, delivering a more robust, more well tested and all-round better tool.

So what does installed-check do?

It check's that your project's engine.node is equal to, or a subset of, of that of your dependencies.

What's new?

Replaced old @voxpelli/semver-set, a fork of another project, with a brand new rewritten from scratch 3.x version of it.

The new @voxpelli/semver-set is well tested and hardened – all to ensure better intersection calculations of semantic versioning ranges – essential for calculating engine.node compatibility. Eg. ^10.17.0 || >=12.0.0 and >=8.0.0 now properly calculates.

The new @voxpelli/semver-set also fixes an issue with the license of the former module. Since its a full rewrite I could pick a license myself, so it's now under MIT.

Other news for the installed-check modules includes a swap from the non-standard VError to my pony-cause pony-fill for the now standardised Error Causes

installed-check in general now also has much more tests and have fixes for issues those tests uncovered, making for a much more robust experience going forward.

How do I get started?

Add it to your project:

npm install -d installed-check@latest
Enter fullscreen mode Exit fullscreen mode

Then add it (early) to the tests in your package.json:

"scripts": {
  "test": "installed-check"
}
Enter fullscreen mode Exit fullscreen mode

A more full-featured example can be found in eg. my list-installed project.

Happy compatibility checking! 🥳

Discussion (0)