./darcs-all pull -a; sh validate [Mac OS X]

Claus Reinke claus.reinke at talk21.com
Wed Aug 13 07:59:08 EDT 2008


>"darcs-all get; darcs-all pull -a; sh validate" instead of just the latter two. 

actually, since pull might change darcs-all or packages, either of which
may change what "darcs-all get" does, that needs to be

"darcs-all pull -a; darcs-all get; sh validate"

which, since pull might change darcs-all, directly or via packages, 
becomes

"darcs pull -a; darcs-all pull -a; darcs-all get; sh validate"

which, since pull might change distclean, becomes

"make distclean; darcs pull -a; darcs-all pull -a; darcs-all get; sh validate"

fun, isn't it?-)

It would be useful if the three middle steps were reliably automated 
by darcs-all. Currently, "darcs-all pull" does actually give the error 
message suggesting "darcs-all get" that you asked for, but only if it 
started from up to date darcs-all and packages in the first place. 

So, "darcs-all pull" should:

1 recognize if the initial pull from the ghc repo changes 
    darcs-all itself or packages, and either suggest to restart
    darcs-all (aborting before trying to pull the other repos), or 
    initiate that restart itself

2 possibly initiate a "darcs-all get" for missing core packages

3 keep a log, and at the end of operations, search that log for 

    a missing packages
    b darcs "warnings" that indicate that the repo is in a strange
        state (renaming failed, remove directory failed,..)
    c darcs conflicts messages (listing files that need looking at)

    summarizing these bits of information (that otherwise get
    overlooked quite easily) before terminating.

Claus



More information about the Cvs-ghc mailing list