utile
A drop-in replacement for `util` with some additional advantageous functions
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.
Maintainers
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| dependencies | unvetted-dep:i | AI (dependencies): The 'i' package is a well-known npm inflection/pluralization library; its use in utile is legitimate and stable across versions. | ai | |
| provenance | no-provenance | AI (provenance): Package is ~14 years old, predating Sigstore provenance. No meaningful risk signal for this established Nodejitsu utility package. | ai | |
| maintainer-change | maintainer-added | AI (maintainer-change): Maintainer transition to jcrugzz occurred in 2013 (~11 years ago); jcrugzz has a strong track record. This is a stable historical change, not a current risk. | ai | |
| provenance | publisher-changed | AI (provenance): indexzero (Charlie Robbins, Nodejitsu founder) is the original author reclaiming maintainership; this is a legitimate transition, not a takeover. | ai | |
| publish-pattern | dormant-publish | AI (publish-pattern): Mature utility library; long dormancy followed by a maintenance release is normal and consistent with the package's history. | ai | |
| maintainer-change | maintainer-removed | AI (maintainer-change): Maintainer consolidation within the Nodejitsu org back to the original author; not indicative of a hostile takeover. | ai | |
| semgrep | semgrep:dynamic-require | AI (semgrep): Dynamic require is used in a requireDir utility function to load modules from a directory — a well-known legitimate pattern for this type of utility library. | ai |
Versions (showing 13 of 13)
| Version | Deps | Published |
|---|---|---|
| 0.2.1 | 6 / 1 | |
| 0.1.7 | 6 / 1 | |
| 0.1.1 | 5 / 1 | |
| 0.1.0 | 4 / 1 | |
| 0.0.10 | 4 / 1 | |
| 0.0.9 | 4 / 1 | |
| 0.0.8 | 4 / 1 | |
| 0.0.6 | 4 / 1 | |
| 0.0.5 | 4 / 1 | |
| 0.0.4 | 4 / 1 | |
| 0.0.3 | 4 / 1 | |
| 0.0.2 | 4 / 1 | |
| 0.0.1 | 4 / 1 |
v0.2.1
2 findingsPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
[Accepted risk] This version was published by a different npm account than previous versions on 2013-12-02. This could indicate a legitimate maintainer transition or an account compromise.
v0.1.7
2 findingsPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
[Accepted risk] This version was published by a different npm account than previous versions on 2013-01-13. This could indicate a legitimate maintainer transition or an account compromise.
v0.1.1
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.1.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.10
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.9
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.8
2 findingsPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
[Accepted risk] This version was published by a different npm account than previous versions on 2011-11-26. This could indicate a legitimate maintainer transition or an account compromise.
v0.0.6
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.5
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.4
2 findingsPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
[Accepted risk] This version was published by a different npm account than previous versions on 2011-11-09. This could indicate a legitimate maintainer transition or an account compromise.
v0.0.3
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.2
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.1
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.