darcs

Issue 463 feature request: sendable checkpoints

Title feature request: sendable checkpoints
Priority feature Status wont-fix
Milestone Resolved in
Superseder Nosy List darcs-devel, dmitry.kurochkin, kowey, thorkilnaur, tommy, trentbuck
Assigned To
Topics

Created on 2007-05-21.06:05:42 by trentbuck, last changed 2009-08-27.13:49:44 by admin.

Messages
msg1702 (view) Author: twb Date: 2007-05-21.06:05:26
Currently, darcs push does not transfer checkpoints.  Presumably darcs
send does not, either.  This is irritating in the following scenario:

    - The canonical version of project Snort is on host fs.

    - Only the project leader has ssh access to fs.  The project
      leader is on a four-week holiday.

    - I commit patches by darcs sending to snort-commit@fs, where a
      procmail script performs the required darcs apply.

In this situation, checkpoints cannot be created (in the canonical
repository).

Transcript follows.

| TEMP> darcs init --repodir=x
| TEMP> darcs init --repodir=y
| TEMP> cd x
| TEMP> touch a b c
| TEMP> darcs rec -lam a a
| Recording changes in "a":
| 
| Finished recording patch 'a'
| TEMP> darcs rec -lam b b
| Recording changes in "b":
| 
| Finished recording patch 'b'
| TEMP> darcs rec -lam c c
| Recording changes in "c":
| 
| Finished recording patch 'c'
| TEMP> darcs tag --checkpoint 1
| Finished tagging patch 'TAG 1'
| TEMP> cd ..
| TEMP> darcs get x
| Directory '/tmp/tmp.iwjPQ19581/x' already exists, creating repository as '/tmp/tmp.iwjPQ19581/x_0'
| Copying patch 4 of 4... done!
| Finished getting.
| TEMP> darcs get --partial x
| Directory '/tmp/tmp.iwjPQ19581/x' already exists, creating repository as '/tmp/tmp.iwjPQ19581/x_1'
| Copying patch 1 of 1... done!
| Finished getting.
| TEMP> darcs push -as --repodir=x ../y
| Will push the following changes:
| Mon May 21 14:22:50 EST 2007  Trent Buck <trentbuck@gmail.com>
|   * a
| 
|     A ./a
| 
| Mon May 21 14:22:51 EST 2007  Trent Buck <trentbuck@gmail.com>
|   * b
| 
|     A ./b
| 
| Mon May 21 14:22:53 EST 2007  Trent Buck <trentbuck@gmail.com>
|   * c
| 
|     A ./c
| 
| Mon May 21 14:23:06 EST 2007  Trent Buck <trentbuck@gmail.com>
|   tagged 1
| 
| Finished applying...
| 
| TEMP> darcs get y
| Directory '/tmp/tmp.iwjPQ19581/y' already exists, creating repository as '/tmp/tmp.iwjPQ19581/y_0'
| Copying patch 4 of 4... done!
| Finished getting.
| TEMP> darcs get --partial y
| Directory '/tmp/tmp.iwjPQ19581/y' already exists, creating repository as '/tmp/tmp.iwjPQ19581/y_1'
| Copying patch 4 of 4... done!
| Applying patch 4 of 4... done.
| Finished getting.

Observe that the checkpoint is not copied.  Since this is a local
repository, we can do this:

| TEMP> darcs optimize --repodir=y --checkpoint
| Checkpointing tag:
| Mon May 21 14:23:06 EST 2007  Trent Buck <trentbuck@gmail.com>
|   tagged 1
| Done optimizing!
| TEMP> darcs get --partial y
| Directory '/tmp/tmp.iwjPQ19581/y' already exists, creating repository as '/tmp/tmp.iwjPQ19581/y_2'
| Copying patch 1 of 1... done!
| Finished getting.

If we could only communicate with `y' via darcs send, it would be
impossible to create checkpoints in it.
-- 
Trent Buck
msg1705 (view) Author: droundy Date: 2007-05-23.15:02:29
I think a much better solution to this is to use a posthook on the server
to run darcs optimise --checkpoint after each apply.  Checkpoints are very
large.

David
msg1803 (view) Author: kowey Date: 2007-07-12.06:14:42
Any comments, Trent?  Marking wont-fix for now, but please do feel free to
elaborate on why this would be better than apply with a posthook.
History
Date User Action Args
2007-05-21 06:05:42trentbuckcreate
2007-05-23 15:02:30droundysetstatus: unread -> unknown
nosy: droundy, tommy, beschmi, kowey, trentbuck
messages: + msg1705
2007-07-12 06:14:43koweysetstatus: unknown -> wont-fix
nosy: droundy, tommy, beschmi, kowey, trentbuck
messages: + msg1803
2009-08-06 17:48:22adminsetnosy: + markstos, jast, Serware, dmitry.kurochkin, darcs-devel, zooko, dagit, mornfall, simon, thorkilnaur, - droundy, trentbuck
2009-08-06 20:44:07adminsetnosy: - beschmi
2009-08-10 22:04:29adminsetnosy: + trentbuck, - markstos, darcs-devel, zooko, jast, dagit, Serware, mornfall
2009-08-25 18:00:11adminsetnosy: + darcs-devel, - simon
2009-08-27 13:49:44adminsetnosy: tommy, kowey, darcs-devel, trentbuck, thorkilnaur, dmitry.kurochkin