NPM.EngineCheck (NPM v0.6.0)

Copy Markdown View Source

Checks engine compatibility across all installed packages.

Validates that the current Node.js version (if installed) satisfies engine requirements declared by packages in node_modules.

Summary

Functions

Scans node_modules for engine requirements and checks compatibility.

Checks a single package's engines against current versions.

Formats engine issues for display.

Returns only unsatisfied engine requirements.

Types

engine_issue()

@type engine_issue() :: %{
  package: String.t(),
  engine: String.t(),
  required: String.t(),
  actual: String.t() | nil,
  satisfied: boolean()
}

Functions

check_all(node_modules_dir)

@spec check_all(String.t()) :: [engine_issue()]

Scans node_modules for engine requirements and checks compatibility.

check_package(data, node_version)

@spec check_package(map(), String.t() | nil) :: [engine_issue()]

Checks a single package's engines against current versions.

format_issues(issues)

@spec format_issues([engine_issue()]) :: String.t()

Formats engine issues for display.

unsatisfied(issues)

@spec unsatisfied([engine_issue()]) :: [engine_issue()]

Returns only unsatisfied engine requirements.