Wed Aug 17 09:54:29 2005: New ticket: 492.
Transaction: Ticket created by [EMAIL PROTECTED]
Queue: Darcs
Subject: bug
Owner: Nobody
Requestors: [EMAIL PROTECTED]
Status: new
Ticket <URL: http://bugs.darcs.net/.//Ticket/Display.html?id=492 >
Hi,
i've been playing with darcs. In particular I'm interested in understanding
how the theory of patches works, and if more can be done with it to make it
into a real mathematical theory. To that end, I've been trying various evil
combinations of patches, and ran across the following bug. Basically, I
decided to see what happens if one source tree inserts a file foo, records,
deletes foo, and records; simultaneously the other tree inserts directory
foo/, records, deletes foo/ and records again. This is a pathological case,
but things like this have to be considered if you want to prove something...
Anyway, here is what I did.
--James
[EMAIL PROTECTED] test2]$ darcs add foo
[EMAIL PROTECTED] test2]$ darcs record
adddir ./foo
Shall I record this patch? (1/1) [ynWsfqadjk], or ? for help: y
What is the patch name? addfoo5
Do you want to add a long comment? [yn] b
Invalid response, try again!
Do you want to add a long comment? [yn] n
Finished recording patch 'addfoo5'
[EMAIL PROTECTED] test2]$ darcs remove foo
[EMAIL PROTECTED] test2]$ darcs record
rmdir ./foo
Shall I record this patch? (1/1) [ynWsfqadjk], or ? for help: y
What is the patch name? removefoo5
Do you want to add a long comment? [yn] b
Invalid response, try again!
Do you want to add a long comment? [yn] n
Finished recording patch 'removefoo5'
[EMAIL PROTECTED] test2]$ cd ..
[EMAIL PROTECTED] darcstest]$ cd test1
[EMAIL PROTECTED] test1]$ cat > foo
asdfasdf
[EMAIL PROTECTED] test1]$ darcs add foo
[EMAIL PROTECTED] test1]$ darcs record
hunk ./d/foo 1
-asdfasdf
-asdfasdfasdf
-fofofoof
-gogogogo
-asdf
Shall I record this patch? (1/4) [ynWsfqadjk], or ? for help: n
addfile ./foo
Shall I record this patch? (3/4) [ynWsfqadjk], or ? for help: y
hunk ./foo 1
+asdfasdf
Shall I record this patch? (4/4) [ynWsfqadjk], or ? for help: y
What is the patch name? addfoo6
Do you want to add a long comment? [yn] n
Finished recording patch 'addfoo6'
[EMAIL PROTECTED] test1]$ darcs remove foo
[EMAIL PROTECTED] test1]$ rm foo
[EMAIL PROTECTED] test1]$ darcs record
hunk ./d/foo 1
-asdfasdf
-asdfasdfasdf
-fofofoof
-gogogogo
-asdf
Shall I record this patch? (1/4) [ynWsfqadjk], or ? for help: n
hunk ./foo 1
-asdfasdf
Shall I record this patch? (3/4) [ynWsfqadjk], or ? for help: y
rmfile ./foo
Shall I record this patch? (4/4) [ynWsfqadjk], or ? for help: y
What is the patch name? removefoo6
Do you want to add a long comment? [yn] b
Invalid response, try again!
Do you want to add a long comment? [yn] n
Finished recording patch 'removefoo6'
[EMAIL PROTECTED] test1]$ darcs pull
Pulling from "../test2"...
Wed Aug 17 12:40:17 BST 2005 [EMAIL PROTECTED]
* addfoo5
Shall I pull this patch? (1/2) [ynWvpxqadjk], or ? for help: y
Wed Aug 17 12:40:31 BST 2005 [EMAIL PROTECTED]
* removefoo5
Shall I pull this patch? (2/2) [ynWvpxqadjk], or ? for help: y
darcs: bug in darcs!
in function reconcile_unwindings
Original patch:
merger 0.0 (
merger 0.0 (
(
move ./foo ./foo-conflict
adddir ./foo
)
rmfile ./foo
)
merger 0.0 (
hunk ./foo-conflict 1
-asdfasdf
merger 0.0 (
hunk ./foo-conflict 1
+asdfasdf
merger 0.0 (
addfile ./foo-conflict
rmdir ./foo
)
)
)
)
Please report this to [EMAIL PROTECTED]
If possible include the output of 'darcs --exact-version'.
[EMAIL PROTECTED] test1]$ darcs --exact-version
darcs compiled on Jun 22 2005, at 03:01:59
# configured Tue May 24 18:34:35 EDT 2005
sh ./configure
Context:
[TAG 1.0.3
Tomasz Zielonka <[EMAIL PROTECTED]>**20050524215127]
_______________________________________________
darcs-devel mailing list
[email protected]
http://www.abridgegame.org/cgi-bin/mailman/listinfo/darcs-devel