Created on 2009-03-23.02:33:36 by gwern, last changed 2017-07-30.23:45:02 by gh.
msg7495 (view) |
Author: gwern |
Date: 2009-03-23.02:33:33 |
|
[10:29 PM] 42.3Mb$ darcs --version
2.2.0 (release)
Suppose one makes a fresh repo, and tries to pull from xmonad. One's command is
'darcs pull ~/bin/xmonad --match 'not touch TODO' --dry-run|less'. In theory,
this should exclude any patch that modifies the xmonad TODO file. The syntax is
proper, all is in accordance with the manual, and 'touch TODO' will in fact pull
a (large) subset of the xmonad patches. If we actually run the command, we
quickly see that many todo-related patches are being pulled; eg:
Wed Mar 7 01:42:14 EST 2007 Spencer Janssen <sjanssen@cse.unl.edu>
* Add TODO
Suppose we actually do this pull, and then we do a simple pull. Perhaps we
really did pull a subset of patches. But no:
10:31 PM] 0Mb$ darcs pull ~/bin/xmonad
Pulling from "/home/gwern/bin/xmonad"...
No remote changes to pull in!
By tossing in a not, apparently that's the same thing as no --match at all.
Since one would expect 'not touch file' to exclude all patches
adding/modifying/deleting a file (like a large binary...), this seems to me a bug.
|
msg7497 (view) |
Author: kowey |
Date: 2009-03-23.08:57:25 |
|
On Mon, Mar 23, 2009 at 02:33:36 -0000, gwern wrote:
> Suppose one makes a fresh repo, and tries to pull from xmonad. One's command is
> 'darcs pull ~/bin/xmonad --match 'not touch TODO' --dry-run|less'. In theory,
> this should exclude any patch that modifies the xmonad TODO file. The syntax is
> proper, all is in accordance with the manual, and 'touch TODO' will in fact pull
> a (large) subset of the xmonad patches. If we actually run the command, we
> quickly see that many todo-related patches are being pulled; eg:
I'm somewhat confused by this.
Maybe you could submit a test case to bugs/ ?
|
msg7500 (view) |
Author: galbolle |
Date: 2009-03-23.12:58:09 |
|
What happens is that all patches in xmonad are depended upon by some patch not
touching TODO (presumably tags). pull gets all patches not touching TODO, and
all of their dependencies, whether or not these depenedencies touch TODO. You
want to use either --no-deps or --dont-prompt-for-dependencies. If you touch
toto and record that (thus no patches depend on it), then your new patch does
not get pulled.
|
msg7501 (view) |
Author: kowey |
Date: 2009-03-23.13:09:00 |
|
Oh. And this is not the first time this has come up either.
It might make sense to update the FAQ with a troubleshooting entry like "I think
--match is broken!"
http://wiki.darcs.net/index.html/FrequentlyAskedQuestions
|
msg10491 (view) |
Author: kowey |
Date: 2010-03-24.17:31:05 |
|
In case this is useful as a start, I've added this entry to the FAQ:
http://wiki.darcs.net/FAQ#darcs-offers-me-unexpected-match-results
|
|
Date |
User |
Action |
Args |
2009-03-23 02:33:36 | gwern | create | |
2009-03-23 08:57:28 | kowey | set | status: unread -> unknown nosy:
+ darcs-devel messages:
+ msg7497 |
2009-03-23 12:58:11 | galbolle | set | priority: not-our-bug status: unknown -> resolved messages:
+ msg7500 nosy:
+ galbolle |
2009-03-23 13:09:05 | kowey | set | topic:
+ FauxBug nosy:
kowey, darcs-devel, simon, thorkilnaur, gwern, dmitry.kurochkin, galbolle status: resolved -> unknown messages:
+ msg7501 |
2009-08-12 15:18:06 | kowey | set | priority: not-our-bug -> feature status: unknown -> needs-implementation topic:
+ Documentation, - FauxBug nosy:
kowey, darcs-devel, simon, thorkilnaur, gwern, dmitry.kurochkin, galbolle title: --match's not is buggy -> document surprising gotchas from pull --match and dependencies |
2009-08-15 10:03:13 | twb | set | assignedto: twb nosy:
+ twb |
2009-08-25 17:42:30 | admin | set | nosy:
- simon |
2009-08-27 14:24:33 | admin | set | nosy:
kowey, darcs-devel, twb, thorkilnaur, gwern, dmitry.kurochkin, galbolle |
2010-03-24 17:31:07 | kowey | set | messages:
+ msg10491 |
2017-07-30 23:45:02 | gh | set | status: needs-implementation -> given-up |
|