Darcs makes us use lazy repositories all over the place but there is no
official command to turn a lazy repository into a complete one.
But one could want to complete a repository to publish it via http for
On the top of my mind, what we recommended on IRC to people who asked
for that is:
* run darcs changes -a -v (prints every patch of the history on
* run darcs repair (replays the whole repository)
What about introducing 'darcs repair --complete', that would ensure all
files are present into the repository? That would be much faster than
the above two solution. Or we could introduce a 'darcs complete'
* darcs complete
* darcs repair --complete
* darcs optimize complete
When running, the command should tell the user about how many files it
downloads / hardlinks into the current directory. If nothing needs to be
completed it should say something like "The repository is already
+1. Missed a command like that more than once. I prefer subcommand of
optimize i.e. 'darcs optimize complete'. ('darcs optimize strict' would
be the correct terminology here, but I guess it's too obscure to anyone
unfamiliar with Haskell and/or CS theory.) IMO it is not used often
enough to justify a top-level command. Also there is nothing 'broken'
with a lazy repo, so 'repair' doesn't feel right.