Skip to content

Convert yarn → npm + Socket security upgrades + @edge.app fork aliases#449

Open
peachbits wants to merge 3 commits into
masterfrom
convert-to-npm
Open

Convert yarn → npm + Socket security upgrades + @edge.app fork aliases#449
peachbits wants to merge 3 commits into
masterfrom
convert-to-npm

Conversation

@peachbits
Copy link
Copy Markdown
Contributor

@peachbits peachbits commented May 26, 2026

Summary

Three-commit branch:

  1. Convert from yarn to npmsynp lockfile, drop .yarnrc, write .npmrc (legacy-peer-deps=true + ignore-scripts=true), rewrite scripts and docs.
  2. Apply Socket-recommended security upgradessocket fix --no-major-updates + iterative overrides for transitive CVEs.
  3. Replace git deps with @edge.app/ npm aliases* — ecpair direct dep + bs58grscheck@^2 and groestl-hash-js transitive overrides now resolve through the npm registry instead of GitHub git URLs. Avoids the npm git-dep-prep code path that conflicts with min-release-age in user ~/.npmrc (npm/cli#9005).

The direct bs58grscheck@^3.0.1 dep is untouched (it's a clean registry resolution); only the v2 transitive path through wifgrs<2.0.7 is redirected to the @edge.app fork.

Test plan

  • sfw npm install succeeds with a fresh ~/.npmrc containing min-release-age=7 (after 7 days have passed since @edge.app/* publishes, or via npm ci)
  • npm run prepare completes
  • No git URLs in the resolved lockfile (verified locally)

Note

Low Risk
Tooling and documentation only; no runtime currency or wallet logic changes in the shown diff.

Overview
This PR finishes the switch from Yarn to npm for day-to-day and CI workflows. .yarnrc is removed, .npmrc is added with legacy-peer-deps=true and ignore-scripts=true (matching the old Yarn ignore-scripts behavior), and .gitignore no longer excludes package-lock.json so the npm lockfile is tracked. Travis runs npm run verify instead of yarn verify.

README and currency-integration docs now tell contributors to use npm run start for the Webpack dev server instead of yarn start.

Reviewed by Cursor Bugbot for commit 8b52161. Bugbot is set up for automated code reviews on this repo. Configure here.

convert-to-npm added 3 commits May 26, 2026 14:10
Two upstream-unfixable alerts remain:
- request@2.88.2 (moderate; direct dep, package deprecated, no fix)
- elliptic@6.6.1 (low; latest published)
Set SOCKET_CLI_ACCEPT_RISKS=1 for plain `npm install` to clear them.
Replaces direct `ecpair` git URL with an npm alias to
`@edge.app/ecpair@^2.1.0-edge.1`. Adds `overrides` so the transitive
`bs58grscheck@^2` (via `wifgrs<2.0.7`) and `groestl-hash-js` resolve
through `@edge.app/bs58grscheck@^2.1.2-edge.1` and
`@edge.app/groestl-hash-js@^1.0.0-edge.1`.

Result: zero true git deps in the install graph. Plain `npm install`
no longer triggers the git-dep-prep code path that conflicts with
`min-release-age` in user-level npmrc (npm/cli#9005).

The direct `bs58grscheck@^3.0.1` dep is untouched (registry, no git
URL); the `bs58grscheck@^2` override is scoped so it only intercepts
the v2 transitive path.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant