auto
auto copied to clipboard
Does Auto work with other (non-Lerna) monorepo tools?
I've used Rush and Nx, which are alternative tools for managing monorepos, in the past. They can be configured to simply use a packages/ folder just like lerna.
Would Auto work with these tools? If not, which specific lerna features does Auto require? For example: reading lerna.json, running a lerna command like lerna changed, etc.
It would be great to be able to use auto with these other tools. These questions would help me figure out how complex it would be to add on support for them.
Right now auto heavily depends on a few lerna commands:
- "changed"
- "ls"
- "version"
- "publish"
The best course of action for enabling auto to work with those other tools would probably just be to create separate plugins for each monorepo tool. We could try to roll it all into the npm plugin but it's become quite large. I've also wanted to split the lerna functionality into it's own plugin but haven't had the time.
I would be happy to work with you to create plugins for each of these tools.
Read this guide on creating publishing plugins. I suspect it wouldn't be all to hard to create plugins with a focus on these tools.
I'd also be open to pairing to get these built. I don't have much experience using these tools and domain knowledge helps a lot.
Is this still something you're interested in @hipstersmoothie?
And if you've solved this @alexkreidler , how did you do it?
What tool are you looking at making a plugin for?
Sorry, could / should have mentioned that :) We're interested in integrating with Rush!
I'm interested in making a plugin for Yarn 2 workspaces and atlassian/changesets, but could use some help with understanding how the getPreviousVersion works for a monorepo (seems like NPM just joins with a newline, but I don't see any clarification in the docs) and creating the main body for the changelogs.
Cross linking to a discussion on the subject https://github.com/intuit/auto/discussions/2281
Is this something that is still on the cards with moving away from primarily lerna based commands to allow flexibility with other tools such as turborepo?