New submission from Kartik Agaram <[EMAIL PROTECTED]>:

Attached is a simple rep with 1 patch containing an mkdir. If I create a
checkpoint and then unrecord it the repo is left in an inconsistent state
because of the hanging entry in _darcs/checkpoints/inventory. Removing the entry
makes the repo consistent.

- To reproduce within dir foo0 in the tarball..
# Check that things are ok at the start
$ darcs check
<repo is consistent>
$ darcs tag --checkpoint 2347
$ darcs unrecord
$ darcs check
<now repo is inconsistent>

---

The following quote from the manual seems relevant:

"All patches are global, so don't ever [unrecord].. an already ``shipped''
patch.. If other developers have already made patches or tags in their
repositories that depend on the old patch, things will get complicated."
http://www.darcs.net/manual/node6.html#SECTION00623000000000000000

I've noticed that some cases of checkpoint-then-unrecord are indeed handled,
such as when there's no adddir in relevant patches. Perhaps the simplest fix is
to add documentation saying checkpoint-then-unrecord is bad? Then the unrecord
can simply fail rather than leave the repo in an inconsistent state.

----------
files: darcs_bug.tgz
messages: 1027
nosy: EricKow, akkartik, droundy, tommy
priority: bug
status: unread
title: unrecording a checkpoint

____________________________________
Darcs issue tracker <[EMAIL PROTECTED]>
<http://bugs.darcs.net/issue281>
____________________________________

Attachment: darcs_bug.tgz
Description: application/compressed

_______________________________________________
darcs-devel mailing list
[email protected]
http://www.abridgegame.org/cgi-bin/mailman/listinfo/darcs-devel

Reply via email to