NPM.Verify (NPM v0.6.0)

Copy Markdown View Source

Verifies that installed packages match the lockfile.

Checks version consistency, integrity hashes, and completeness of the node_modules directory against the lockfile.

Summary

Functions

Verifies installed packages against a lockfile.

Checks if the installation is clean (no issues).

Formats an issue for display.

Returns a summary of verification results.

Types

issue()

@type issue() :: %{
  package: String.t(),
  type: :missing | :version_mismatch | :integrity_mismatch | :extraneous,
  expected: String.t() | nil,
  actual: String.t() | nil
}

Functions

check(node_modules_dir, lockfile)

@spec check(String.t(), map()) :: [issue()]

Verifies installed packages against a lockfile.

Returns a list of issues found.

clean?(node_modules_dir, lockfile)

@spec clean?(String.t(), map()) :: boolean()

Checks if the installation is clean (no issues).

format_issue(i)

@spec format_issue(issue()) :: String.t()

Formats an issue for display.

summary(issues)

@spec summary([issue()]) :: %{
  total: non_neg_integer(),
  missing: non_neg_integer(),
  mismatched: non_neg_integer(),
  extraneous: non_neg_integer()
}

Returns a summary of verification results.