Skip to content

Convert from yarn to npm#723

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

Convert from yarn to npm#723
peachbits wants to merge 2 commits into
masterfrom
convert-to-npm

Conversation

@peachbits

@peachbits peachbits commented May 21, 2026

Copy link
Copy Markdown
Contributor

CHANGELOG

Does this branch warrant an entry to the CHANGELOG?

  • Yes
  • No

Dependencies

none

Description

none

Note

Low Risk
Documentation, CI, and lockfile/tooling only; no runtime or security-sensitive application logic changes in the diff.

Overview
Switches the repo’s package manager workflow from Yarn to npm: CI runs npm run verify, contributor docs use npm install, npm run prepare, npm run verify, npm run fix, and npm run start instead of Yarn equivalents, and the v0.19.0 changelog note for core debugging is updated accordingly.

Adds .npmrc with legacy-peer-deps=true and ignore-scripts=true (replacing .yarnrc), and stops ignoring package-lock.json in .gitignore so npm lockfiles are tracked.

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

@socket-security

socket-security Bot commented May 21, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​babel/​runtime@​7.23.1 ⏵ 7.26.10100 +1100 +27996100
Updatedwebpack@​5.89.0 ⏵ 5.104.183 -1100 +49398100
Updatedbase-x@​4.0.0 ⏵ 4.0.1100 +1100 +1691 +184100
Updatedrollup@​2.79.1 ⏵ 2.80.089 +1100 +2210099100
Updatedmocha@​10.1.0 ⏵ 10.6.096 +110095 +196100

View full report

@socket-security

socket-security Bot commented May 21, 2026

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn Medium
Deprecated by its maintainer: npm lodash

Reason: Bad release. Please use lodash@4.17.21 instead.

From: package-lock.jsonnpm/eslint-plugin-flowtype@5.2.0npm/lodash@4.18.0

ℹ Read more on: This package | This alert | What is a deprecated package?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Research the state of the package and determine if there are non-deprecated versions that can be used, or if it should be replaced with a new, supported solution.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/lodash@4.18.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

Comment thread README.md

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit ab5348a. Configure here.

Comment thread eslint.config.mjs Outdated
'lib/io/react-native/native-bridge.js',
'lib/node/index.js',
'lib/util/nym.js'
]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing ESLint build ignores

Medium Severity

Removing .eslintignore dropped global excludes for lib/, root types.js / types.mjs / types.js.flow, and android/src/main/assets/, but eslint.config.mjs only ignores a handful of lib/ files. After npm install runs prepare, npm run verify’s eslint . can lint generated build output that was never meant to be checked.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit ab5348a. Configure here.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Valid observation — dropping .eslintignore means only eslint.config.mjs's ignores apply. In practice lib/ and the generated types.* are produced by prepare, which ignore-scripts=true currently suppresses, so they are not present during npm run verify in CI. Flagging to the author to mirror the old excludes (lib/, types.js|mjs|js.flow, android/src/main/assets/) in the flat config if eslint . begins picking up build output; not changing it in this review pass.

Comment thread CHANGELOG.md Outdated
@peachbits peachbits force-pushed the convert-to-npm branch 2 times, most recently from 8b03935 to 458c44e Compare May 26, 2026 20:51
socket fix --all --range-style preserve --minimum-release-age 7d --no-major-updates
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.

2 participants