porter-stemmer
1
Versions
—
License
No
Install Scripts
Missing
Provenance
Supply chain provenance
Status for the latest visible version.
No SLSA provenance
npm registry signatures
No source commit
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.
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| semgrep | semgrep:new-function-constructor | AI (semgrep): Fires in vendored deps/nodeunit/deps/ejs.js — standard EJS template engine behavior, not part of porter-stemmer's own code. | ai | |
| semgrep | semgrep:eval-usage | AI (semgrep): Fires in vendored deps/nodeunit/deps/json2.js — the classic json2.js JSON polyfill, well-known legitimate code unrelated to porter-stemmer. | ai | |
| semgrep | semgrep:dynamic-require | AI (semgrep): Fires in vendored deps/nodeunit test runner loading test files by path — expected behavior for a test framework, not porter-stemmer code. | ai | |
| semgrep | semgrep:child-process-import | AI (semgrep): Fires in vendored deps/nodeunit JUnit reporter creating output directories — benign utility use in test tooling, not porter-stemmer code. | ai | |
| semgrep | semgrep:child-process-spawn | AI (semgrep): spawn('mkdir', ['-p', path]) in vendored nodeunit JUnit reporter — creates output dirs for test reports, benign and unrelated to porter-stemmer. | ai | |
| provenance | no-provenance | AI (provenance): Package is ~15 years old; provenance attestation did not exist when it was published. No risk signal for this legacy package. | ai |
Versions (showing 1 of 1)
| Version | Deps | Published |
|---|---|---|
| 0.9.1 | 0 / 0 |
v0.9.1
1 finding
LOW
No provenance attestation
provenance
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.