Skip to content

feat(package-manager)!: Use npm instead of yarn#3500

Open
brandonlenz wants to merge 12 commits into
mainfrom
bl-use-npm-instead-of-yarn
Open

feat(package-manager)!: Use npm instead of yarn#3500
brandonlenz wants to merge 12 commits into
mainfrom
bl-use-npm-instead-of-yarn

Conversation

@brandonlenz

@brandonlenz brandonlenz commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Summary

I recommend starting with the ADR (on this branch)

I know this looks scary:
image

The overwhelming majority of that is yarn.lock being deleted and package-lock.json being added.

Related Issues or PRs

closes: #3156

How To Test

One of the ways I tested was comparing the output of yarn pack and npm pack which helped identify the slight difference in the tarball naming, and the need to manually include CHANGELOG.md in the package output to maintain parity.

Screenshots (optional)

Author & Maintainer checklist

  • Is this is a breaking change?
    • Yes, but also no. This shouldn't break things for anyone, but we've had surprising package manager conflicts in the past if consumer tooling didn't also match what we were using (yarn). So out of an abundance of caution, I'm treating this as a breaking change.
      • In the past, when someone using npm ran into issues because of a side effect of us using yarn, it was this library's problem. Going forward, it will be the other way around (but also hopefully be better for consumers of the library on average)
    • No

@brandonlenz brandonlenz self-assigned this Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This action only runs when code lands on main. Additionally, it's been broken for some time. There's an open issue for that here: #3324

Just for visibility, I won't invest any effort in making it work or triaging a failure in that pipeline after this PR until picking that issues up.

@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor
Warnings
⚠️ This PR does not include changes to tests, even though it affects source code.
⚠️ This PR does not include changes to storybook, even though it affects component code.

Generated by 🚫 dangerJS against 9de658e

@brandonlenz brandonlenz changed the title feat!(package-manager): Use npm instead of yarn feat(package-manager)!: Use npm instead of yarn Jun 12, 2026
Comment thread package.json
"@eslint/compat": "^2.0.0",
"@eslint/eslintrc": "^3.3.0",
"@eslint/js": "^10.0.1",
"@eslint/js": "^9.24.0",

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Dependapot previously bumped @eslint/js on its own causing a peer dependency violation.

Yarn treats those as warnings, so we didn't notice it. npm is more strict.

In this PR, we drop the version back and update the dependabot config to include this dependency in the eslint group to make sure that they all get bumped together as intended.

Comment thread eslint.config.cjs

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Excuse the diff. Did a prettier format of this file.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Actual changes for linting dangerfile can be found at the bottom

@brandonlenz brandonlenz marked this pull request as ready for review June 15, 2026 14:55
@brandonlenz brandonlenz requested a review from a team as a code owner June 15, 2026 14:55
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.

Move from yarn to npm

1 participant