darcs

Issue 1014 pull =>bug in get_extra commuting patch (2.0.2+77; duplicate patches)

Title pull =>bug in get_extra commuting patch (2.0.2+77; duplicate patches)
Priority bug Status given-up
Milestone Resolved in
Superseder Nosy List Serware, darcs-devel, dmitry.kurochkin, kowey, thorkilnaur, twb
Assigned To
Topics Conflicts, Darcs2

Created on 2008-08-18.10:18:34 by kowey, last changed 2018-04-19.06:24:59 by bfrk.

Messages
msg5576 (view) Author: kowey Date: 2008-08-18.10:18:28
As seen is bugs/issue1014_identical_patches.sh
Reported by Ian.
msg6897 (view) Author: twb Date: 2008-12-26.15:43:19
This one bit me today.  The changelog comment should make it clear
what I was trying to do:

    code.haskell.org:~/public_html/ru$ darcs pull --match 'touch .bin/ru' ~/Preferences
    darcs: bug in get_extra commuting patches:
    First patch is:
    Sat Dec 27 00:38:53 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * Extract ru from larger repository.

      I didn't realize (until it was too late) that my ru patches depended
      on the patch that added .bin, which was a large "initial import"
      patch.  Cleverly, I discovered that under darcs-2 semantics, if I add
      .bin TWICE (in two separate patches), I can obliterate the latter
      patch without breaking ru's dependency on .bin/.

      This will still cause problems when pulling updates to ru from the
      larger repository, I think, but that's a damn sight better than
      permanently carrying around all those extra patches in this repo.
    Second patch is:
    Sun Nov 16 04:48:55 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * ru -- command-line interface to roundup.

The transcript below demonstrates a minimal procedure to produce this
behaviour by creating two patches that create the same directory, then
attempting to obliterate and re-pull one of them.

    $ with-temp-dir
    with-temp-dir: entering directory `/tmp/with-temp-dir.FXQCUW'
    This directory will be deleted when you exit.
    $ darcs init
    $ mkdir x
    $ darcs rec -lam x x
    Recording changes in "x":

    Finished recording patch 'x'
    $ touch x/x
    $ darcs rec -lam x/x x/x
    Recording changes in "x/x":

    Finished recording patch 'x/x'
    $ darcs init --repodir y
    $ cd y
    $ mkdir x
    $ darcs rec -lam y x
    Recording changes in "x":

    Finished recording patch 'y'
    $ darcs pull --all --summary --match 'touch x/x' ..
    Pulling from "/tmp/with-temp-dir.FXQCUW"...
    Will pull the following changes:
    Sat Dec 27 02:36:04 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * x

        A ./x/

    Sat Dec 27 02:36:17 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * x/x

        A ./x/x
    Finished pulling and applying.
    $ darcs cha --summary -p ^x$
    Sat Dec 27 02:36:04 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * x

    $ darcs obl -a -p ^x$
    Finished obliterating.
    $ darcs pull --all --summary --match 'touch x/x' ..
    Pulling from "/tmp/with-temp-dir.FXQCUW"...
    darcs: bug in get_extra commuting patches:
    First patch is:
    Sat Dec 27 02:36:55 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * y
    Second patch is:
    Sat Dec 27 02:36:17 EST 2008  Trent W. Buck <trentbuck@gmail.com>
      * x/x
    $
msg8208 (view) Author: kowey Date: 2009-08-17.17:15:34
David's darcs has a fix for this:

  darcs get http://physics.oregonstate.edu/~roundyd/code/darcs

It'd be good if we could pick it apart and understand how it works. Asking David
would be a good idea as well.
msg20116 (view) Author: bfrk Date: 2018-04-19.06:24:57
Standard problem with duplicates. Unsolvable with current patch format.
History
Date User Action Args
2008-08-18 10:18:34koweycreate
2008-12-26 15:38:00twbsetnosy: + dmitry.kurochkin, twb, simon, thorkilnaur
2008-12-26 15:43:22twbsetstatus: unread -> unknown
nosy: beschmi, kowey, dagit, igloo, simon, twb, thorkilnaur, dmitry.kurochkin, Serware
messages: + msg6897
2009-04-09 16:21:07koweylinkissue1211 superseder
2009-08-06 21:11:33adminsetnosy: - beschmi
2009-08-10 23:43:01adminsetnosy: - dagit
2009-08-14 15:17:41koweylinkissue1401 superseder
2009-08-17 17:15:42koweysetstatus: unknown -> needs-reproduction
nosy: kowey, igloo, simon, twb, thorkilnaur, dmitry.kurochkin, Serware
messages: + msg8208
2009-08-25 17:18:39adminsetnosy: + darcs-devel, - igloo
2009-08-25 17:37:02adminsetnosy: - simon
2009-08-27 14:25:26adminsetnosy: kowey, darcs-devel, twb, thorkilnaur, dmitry.kurochkin, Serware
2009-10-23 22:44:09adminsetnosy: + serware, - Serware
2009-10-23 23:29:58adminsetnosy: + Serware, - serware
2018-04-19 06:24:59bfrksetstatus: needs-reproduction -> given-up
messages: + msg20116