On 23 September 2014 21:20, Emil Dotchevski
On Tue, Sep 23, 2014 at 2:51 AM, Daniel James
wrote: I was against splitting up the repo in the first place, so I'm not really the person to ask. But IMO the main (perhaps only) benefit is that it makes version control easier. Merging under subversion was a pain because we didn't have a coherent merge history and a monolothic git repo would certainly have had the same problem. By splitting the code into modules we can track what has been merged, and do things like using the develop branch of a single library with the release branch of other libraries.
I don't really see any direct benefit to users. Maybe if we had some sort of package management system it could, but we don't. I suspect that packages shouldn't have a one-to-one relationship with git modules. The reorganisation of the MPL module might be a model for how multiple packages could be stored in a single repo.
Physical coupling is difficult to break, easy to introduce. That is to say users can not possibly suffer from the many repos because it is trivial to make a release that bundles everything together.
As for the benefits of breaking up dependencies and splitting libraries into separate modules, they aren't limited to version control. Reducing coupling increases the efficiency of development and maintenance work in general, but that is only visible in very large projects. Which is why it gets neglected.
I was writing about splitting up repos. That's a completely separate issue to reducing dependencies.