Socket
Socket
Sign inDemoInstall

version-guard

Package Overview
Dependencies
0
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    version-guard

Used to ensure modern CLI scripts fail silently on old js versions. Useful for static analysis tools and similar


Version published
Maintainers
1
Install size
8.93 kB
Created

Readme

Source

Version Guard

Used to ensure modern CLI scripts fail silently on old node.js versions

js-semistandard-style ES Module Ready Badge Types in JS

Usage

Add a top-level file to your project, eg. cli.js, containing something like:

require('version-guard')('./path/to/file/to/run', 14, 18);

Syntax

versionGuard(filePath, minMajor, [minMinor])

  • filePath - a path to the modern file that should be run
  • minMajor - the lowest major Node.js version that should be allowed to run the file
  • [minMinor] - the lowest minor version of minMajor that should be allowed to run the file

On supported versions imports and runs filePath using the dynamic import() (supporting both ESM and CJS modules).

On non-supported versions, fails silently with an error message.

Apart from checking current node version this command also looks up the main project's package.json and checks that the engines.node in it mentions the same version number as is sent to this command. To ensure that maintainers doesn't forget to update one of the two and thus the two diverging.

Notes

This project itself is a CJS project as the entire point is to work on incredibly old node.js versions.

Used by

FAQs

Last updated on 04 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc