Skip to content

chore: use pnpm catalog to manage dependencies - #21259

Merged
J-Sek merged 2 commits into
masterfrom
chore/use-pnpm-catalogs
Sep 17, 2026
Merged

J-Sek merged 2 commits into
masterfrom
chore/use-pnpm-catalogs

Conversation

@johnleider

@johnleider johnleider commented Apr 14, 2025 •

Copy link
Copy Markdown
Member

Pending: lerna/lerna#4055

@johnleider johnleider self-assigned this Apr 14, 2025
@johnleider
johnleider force-pushed the chore/use-pnpm-catalogs branch from a753dc8 to a6db801 Compare April 14, 2025 17:01
@johnleider johnleider added the upstream Problem with a third party library that we may have to work around label Apr 14, 2025
@KaelWD

KaelWD commented Apr 15, 2025

Copy link
Copy Markdown
Member

This also breaks pnpm update: https://pnpm.io/catalogs#caveats

@userquin

userquin commented Apr 15, 2025 •

Copy link
Copy Markdown
Member

Maybe using https://github.com/antfu-collective/taze , supports pnpm catalog and named catalogs

Comment thread package.json Outdated
@ghiscoding

ghiscoding commented May 6, 2025 •

Copy link
Copy Markdown

If you don't need or care about Nx, then you could also switch to use Lerna-Lite as an alternative (which I maintain and is closer to the original Lerna code, before Nx came in). Lerna-Lite fully supports Workspace and Catalog protocols which was added a few months ago and it also works with both lerna version & publish commands (see Lerna-Lite catalog: docs).

For more info about Lerna-Lite itself, you can read this small section on the main readme, the commands are pretty much the same and so nothing new to learn. Lastly, both Workspace and Catalog protocols are purposely used within Lerna-Lite itself to make sure that everything runs smoothly (I made some fixes related to catalog as recently as last week and it's now used by VuePress ecosystem/themes projects with catalog, even Jest & Volar projects use Lerna-Lite)

Cheers

@ghiscoding

ghiscoding commented Sep 13, 2025 •

Copy link
Copy Markdown

I see that @KaelWD migrated the project to Lerna-Lite in this commit 7ce2ce6 to now only use and rely on lerna version to bump the versions. So with that in place, you guys can now officially switch to pnpm catalog: without any problems... you're welcome 馃槈

I'm the maintainer of Lerna-Lite and if it's useful to you then upvoting it would be nice 馃槃 I might add your project to the list of big users (you would become the 2nd biggest user after Jest, so thank you). I also saw that I missed the lerna clean command, I might add it in the future, it seems simple enough (EDIT: I worked on the clean command, but then realized that the clean command is probably easier to deal with other simpler tools and so I won't add it to Lerna-Lite).

Also pnpm update is now supported in pnpm since June of this year in v10.12.x (see this pnpm PR feat: support catalog: protocol on pnpm update)

Cheers

@ghiscoding

ghiscoding commented Sep 27, 2025 •

Copy link
Copy Markdown

I know you guys have your own way of publishing with OIDC but I'm happy to say that both Lerna and Lerna-Lite now support OIDC Trusted Publishing, see Lerna-Lite@4.9.0 with a working demo: https://github.com/lerna-lite-test/oidc

Combine that with Catalogs and life is good 馃槃

@johnleider
johnleider marked this pull request as ready for review September 27, 2025 04:34
@johnleider
johnleider marked this pull request as draft April 2, 2026 13:22
@J-Sek
J-Sek force-pushed the master branch 3 times, most recently from 800efd0 to f1a4238 Compare July 28, 2026 17:18
@johnleider
johnleider requested a review from J-Sek September 15, 2026 22:01
@J-Sek
J-Sek force-pushed the chore/use-pnpm-catalogs branch from a6db801 to ad301a1 Compare September 16, 2026 13:32
@J-Sek
J-Sek marked this pull request as ready for review September 16, 2026 13:33
J-Sek
J-Sek previously approved these changes Sep 16, 2026
@J-Sek
J-Sek dismissed their stale review September 17, 2026 09:28

The merge-base changed after approval.

@J-Sek
J-Sek force-pushed the master branch 3 times, most recently from 630451f to 3d3f418 Compare September 17, 2026 10:22
@J-Sek
J-Sek force-pushed the chore/use-pnpm-catalogs branch from ad301a1 to 6b919b5 Compare September 17, 2026 11:27
@J-Sek J-Sek assigned J-Sek and unassigned KaelWD Sep 17, 2026
@J-Sek
J-Sek merged commit 3469724 into master Sep 17, 2026
15 checks passed
@J-Sek
J-Sek deleted the chore/use-pnpm-catalogs branch September 17, 2026 11:31
Comment thread pnpm-workspace.yaml
autoInstallPeers: false

catalog:
# Vue ecosystem

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Note that this grouping is not persistent, anything that rewrites this file such as pnpm patch-commit will rearrange everything into alphabetical order.

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.

Good to know 馃憤馃徏 I don't feel strongly about the order and groups, but will try to restore it if I catch it before PR is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

upstream Problem with a third party library that we may have to work around

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants