You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In a monorepo using nx + pnpm without pnpm workspaces running changeset after changeset init to create the first changeset file, the tool only suggest the root package (which is btw private:true). When I add the pnpm-workspace.yaml file changeset is now currently suggesting my packages.
nx is a fully competent way to manage a monorepo, you don't need to add yarn or pnpm or whatever workspace solution on top of it. It's even sometimes a bit counterproductive because nx is a bit more inclined towards declaring all the dependencies in the root package.json.
Proposed solution
It would be good if changeset could detect that we are on a nx monorepo only based on the nx file (or any other method) without having to add a workspace solution on top of it.
The text was updated successfully, but these errors were encountered:
Until that package gets updated (assuming it does get updated), I would be willing to go in and update our local get-workspaces package to check for NX configs and if so, grab them, otherwise use get-packages internally. This way we could support NX now.
Technically the current workaround is to declare NX packages in a "workspaces" key in the package.json even though no dependencies are getting installed there. This then symlinks these packages into the node_modules directory... which for some using NX is undesirable.
Happy to take a stab at adding this functionality if you're open to accepting a PR.
Affected Packages
I think it's a limitation of https://www.npmjs.com/package/@manypkg/get-packages
Problem
In a monorepo using
nx
+pnpm
withoutpnpm
workspaces runningchangeset
afterchangeset init
to create the first changeset file, the tool only suggest the root package (which is btwprivate:true
). When I add thepnpm-workspace.yaml
filechangeset
is now currently suggesting my packages.nx
is a fully competent way to manage a monorepo, you don't need to addyarn
orpnpm
orwhatever
workspace solution on top of it. It's even sometimes a bit counterproductive becausenx
is a bit more inclined towards declaring all the dependencies in the root package.json.Proposed solution
It would be good if
changeset
could detect that we are on anx
monorepo only based on thenx
file (or any other method) without having to add a workspace solution on top of it.The text was updated successfully, but these errors were encountered: