darcs

Issue 403 darcs 1.0.8 fails to record changes only in just added dirs

Title darcs 1.0.8 fails to record changes only in just added dirs
Priority bug Status resolved
Milestone Resolved in
Superseder Nosy List darcs-devel, dmitry.kurochkin, kowey, thorkilnaur, tommy, vmiklos
Assigned To
Topics

Created on 2007-02-01.17:39:55 by vmiklos, last changed 2009-08-27.13:50:37 by admin.

Messages
msg1453 (view) Author: vmiklos Date: 2007-02-01.17:39:46
hi

how to reproduce:

vmiklos@vmobile:~/darcs$ mkdir test
vmiklos@vmobile:~/darcs$ cd test
vmiklos@vmobile:~/darcs/test$ dr init
vmiklos@vmobile:~/darcs/test$ mkdir one
vmiklos@vmobile:~/darcs/test$ cd one
vmiklos@vmobile:~/darcs/test/one$ dr
vmiklos@vmobile:~/darcs/test/one$ mkdir two
vmiklos@vmobile:~/darcs/test/one$ cd two
vmiklos@vmobile:~/darcs/test/one/two$ touch file
vmiklos@vmobile:~/darcs/test/one/two$ dr add file
vmiklos@vmobile:~/darcs/test/one/two$ dr rec .
Recording changes in "one/two":

Darcs needs to know what name (conventionally an email address) to use as the
patch author, e.g. 'Fred Bloggs <fred@bloggs.invalid>'.  If you provide one
now it will be stored in the file '_darcs/prefs/author' and used as a default
in the future.  To change your preferred author address, simply delete or edit
this file.

What is your email address? .
Ok, if you don't want to record anything, that's fine!

expected results:
prompt for adding 2 dirs and an empty file

thanks,
VMiklos
msg1454 (view) Author: kowey Date: 2007-02-01.20:13:44
Hi,

Thanks for the report and the how-to-reproduce.

> vmiklos@vmobile:~/darcs$ mkdir test
> vmiklos@vmobile:~/darcs$ cd test
> vmiklos@vmobile:~/darcs/test$ dr init
> vmiklos@vmobile:~/darcs/test$ mkdir one
> vmiklos@vmobile:~/darcs/test$ cd one
> vmiklos@vmobile:~/darcs/test/one$ dr

was this meant to be darcs add . ?

> vmiklos@vmobile:~/darcs/test/one$ mkdir two

don't you need darcs add . here as well?
msg1455 (view) Author: vmiklos Date: 2007-02-01.23:01:22
sorry, forgot that line, i've hit ctrl-c there

no, there is the trick, if you make a new dir and an another inside in the new
dir, then create a new file inside the second dir, then darcs add the file
returns zero error message, but "darcs add ." says there is nothing to record,
while there are 2 new dirs and 1 new file to add

ps: it's a bit weird, i was forced to set the priority of this issue ;) i've set
it to "bug"
msg1457 (view) Author: droundy Date: 2007-02-02.20:14:52
On Thu, Feb 01, 2007 at 05:39:56PM +0000, VMiklos wrote:
> how to reproduce:
> 
> vmiklos@vmobile:~/darcs$ mkdir test
> vmiklos@vmobile:~/darcs$ cd test
> vmiklos@vmobile:~/darcs/test$ dr init
> vmiklos@vmobile:~/darcs/test$ mkdir one
> vmiklos@vmobile:~/darcs/test$ cd one
> vmiklos@vmobile:~/darcs/test/one$ dr
> vmiklos@vmobile:~/darcs/test/one$ mkdir two
> vmiklos@vmobile:~/darcs/test/one$ cd two
> vmiklos@vmobile:~/darcs/test/one/two$ touch file
> vmiklos@vmobile:~/darcs/test/one/two$ dr add file
> vmiklos@vmobile:~/darcs/test/one/two$ dr rec .
> Recording changes in "one/two":
> 
> Darcs needs to know what name (conventionally an email address) to use as the
> patch author, e.g. 'Fred Bloggs <fred@bloggs.invalid>'.  If you provide one
> now it will be stored in the file '_darcs/prefs/author' and used as a default
> in the future.  To change your preferred author address, simply delete or edit
> this file.
> 
> What is your email address? .
> Ok, if you don't want to record anything, that's fine!
> 
> expected results:
> prompt for adding 2 dirs and an empty file

It looks like the problem is that you're asking darcs to only record
changes in the directory "one/two," and darcs is refusing because the
addition of the directory "one" is not in directory "one/two".  Does this
fit with what you see?

It looks like the fix is in TouchesFiles.lhs, the "affects" function down
at the bottom.  We say that a patch to "foo/bar" affects "foo" but we don't
say that a patch to "foo" affects "foo/bar" (which it does).  This
shouldn't be hard to fix, but I don't have time to fix it, particularly
since I'd like to see a test added in to go with the fix.
-- 
David Roundy
Department of Physics
Oregon State University
msg1461 (view) Author: vmiklos Date: 2007-02-03.02:14:50
On Fri, Feb 02, 2007 at 08:15:02PM +0000, David Roundy <bugs@darcs.net> wrote:
> It looks like the problem is that you're asking darcs to only record
> changes in the directory "one/two," and darcs is refusing because the
> addition of the directory "one" is not in directory "one/two".  Does this
> fit with what you see?

exactly.

> It looks like the fix is in TouchesFiles.lhs, the "affects" function down
> at the bottom.  We say that a patch to "foo/bar" affects "foo" but we don't
> say that a patch to "foo" affects "foo/bar" (which it does).  This
> shouldn't be hard to fix, but I don't have time to fix it, particularly
> since I'd like to see a test added in to go with the fix.

if that helps, i may try to create such a test, though i don't know
haskell so probably i can't fix the issue

udv / greetings,
VMiklos
msg1956 (view) Author: kowey Date: 2007-07-31.18:36:43
This appears to have been fixed in darcs 1.0.9 with David's patch

Sat May  5 16:33:30 CEST 2007  David Roundy <droundy@darcs.net>
  * fix bug where we add a file but not its boring parent directory.

I did the test and got the two prompts.  Thanks for spotting that.
History
Date User Action Args
2007-02-01 17:39:55vmikloscreate
2007-02-01 20:13:50koweysetstatus: unread -> unknown
nosy: droundy, tommy, beschmi, kowey, vmiklos
messages: + msg1454
2007-02-01 23:01:28vmiklossetnosy: droundy, tommy, beschmi, kowey, vmiklos
messages: + msg1455
2007-02-02 20:15:02droundysetnosy: droundy, tommy, beschmi, kowey, vmiklos
messages: + msg1457
2007-02-03 02:14:53vmiklossetnosy: droundy, tommy, beschmi, kowey, vmiklos
messages: + msg1461
2007-07-31 18:36:46koweysetstatus: unknown -> resolved
nosy: droundy, tommy, beschmi, kowey, vmiklos
messages: + msg1956
2009-08-06 17:51:36adminsetnosy: + markstos, jast, Serware, dmitry.kurochkin, darcs-devel, zooko, dagit, mornfall, simon, thorkilnaur, - droundy, vmiklos
2009-08-06 20:53:18adminsetnosy: - beschmi
2009-08-10 22:01:31adminsetnosy: + vmiklos, - markstos, darcs-devel, zooko, jast, dagit, Serware, mornfall
2009-08-25 18:02:59adminsetnosy: + darcs-devel, - simon
2009-08-27 13:50:37adminsetnosy: tommy, kowey, vmiklos, darcs-devel, thorkilnaur, dmitry.kurochkin