Closed sneridagh closed 4 years ago
You can probably already manage monorepos dependencies with the current mrs.developer.json
format by using the same url but different path.
Example:
{
"grange-core": {
"package": "@guillotinaweb/grange-core",
"url": "git@github.com:guillotinaweb/grange-mono-repo.git",
"path": "/projects/grange/core",
"tag": "1.2.1"
},
"grange-form": {
"package": "@guillotinaweb/grange-form",
"url": "git@github.com:guillotinaweb/grange-mono-repo.git",
"path": "/projects/grange/form",
"tag": "1.1.1"
}
}
It is not ideal, as it might produce conflicts (you should make sure you use the same tag or same branch for all your deps coming from the same mono-repo) and it will make all the git calls twice…
If you give me a decent format for mrs.developer.json
supporting mono-repos on a better way without breaking the current format, I am sure I can implement it soon :)
If you give me a decent format for
mrs.developer.json
supporting mono-repos on a better way without breaking the current format, I am sure I can implement it soon :)
Indeed that will be the hardest part :)
maybe this:
{
"grange": {
"package": "@guillotinaweb/grange-core",
"url": "git@github.com:guillotinaweb/grange-mono-repo.git",
"tag": "1.1.1"
"subrepos": {
"core": {
"path": "/projects/grange/core",
},
"grange-form": {
"path": "/projects/grange/form",
}
}
}
Yes, fair enough! I've also thought to declare them the usual way, then detect if you've already pulled them, then used the already pulled one, just write the jsconfig.json file. But then I guess it might be confusing to be able to specify different tags/branches, and know which one will win...
So I'm +1 for your proposal!
BTW, going full Volto addons story here! Let's see how far can we reach and how many niceties can we stuff there :)
Hi! Have you ever thought in add support for monorepos? So one checkout can have several packages? Cheers!