Issue 2322 a command to turn lazy repositories into complete ones

Title a command to turn lazy repositories into complete ones
Priority wishlist Status unknown
Milestone Resolved in
Superseder Nosy List darcs-devel, gh
Assigned To
Topics Hashed, UI

Created on 2013-05-11.00:24:56 by gh, last changed 2017-08-09.13:54:43 by bf.

msg16805 (view) Author: gh Date: 2013-05-11.00:24:53
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 
standard output)
* 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' 
msg19512 (view) Author: gh Date: 2017-08-08.16:50:18

* 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
msg19528 (view) Author: bf Date: 2017-08-09.13:54:41
+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.
Date User Action Args
2013-05-11 00:24:56ghcreate
2014-03-23 00:21:38ghsetassignedto: mdiaz
nosy: + mdiaz
2015-03-27 22:37:04ghsetassignedto: mdiaz -> MaicoLeberle
nosy: + MaicoLeberle
2017-08-08 16:50:32ghsetnosy: - mdiaz, MaicoLeberle
messages: + msg19512
assignedto: MaicoLeberle ->
2017-08-09 13:54:43bfsetmessages: + msg19528