Version control systems
Manuel M T Chakravarty
chak at cse.unsw.edu.au
Wed Aug 13 02:54:32 EDT 2008
> 2. The version control system (VCS)
> GHC needs "core libraries" without which it cannot be built. It is
> obviously highly desirable that a developer can build GHC with just
> one VCS, which suggests that the core libraries should be in git too.
> But those same core libraries are used by nhc98 and Hugs (I think
> that's all), and the last thing we want to do is to impose new costs
> on other implementations.
What are these costs? I don't believe there are serious costs for
those developers. Malcolm told us that all he contributes to the core
libraries is fixing them for nhc when they break. He doesn't even
validate, so I am sure he doesn't use branches or anything similar.
The cost for him is to learn how to get, record & push with git.
AFAIK, the only person who works on Hugs is Ross. He contributes to
GHC, too, and hopefully validates his library patches before pushing.
So, he'll have to learn to use git anyway.
> It's unclear exactly what to do about this. The most plausible
> possibility is to keep the core libraries that are shared with other
> implementations in darcs as now, and mirror them in git for GHC
> developers. That will impose pain on GHC developers to keep the git
> stuff in sync with the darcs master copies; but at least other
> developers would be unaffected.
Everybody who contributes to the boot/core libraries needs to validate
their patches. If the GHC version of the libraries is in git, then
all library code needs to be validated against the git version of the
libraries before it can enter the master repository. I don't see how
that makes anything easier for anybody.
As I said before, I believe there is exactly one sane solution: all
boot libraries use the same vcs as ghc.
More information about the Glasgow-haskell-users