##// END OF EJS Templates
identify: add template support...
identify: add template support This is based on a patch proposed last year by Mathias De Maré[1], with a few changes. - Tags and bookmarks are now formatted lists, for more flexible queries. - The templater is populated whether or not [-nibtB] is specified. (Plain output is unchanged.) This seems more consistent with other templated commands. - The 'id' property is a string, instead of a list. - The parents of 'wdir()' have their own list of attributes. I left 'id' as a string because it seems very useful for generating version info. It's also a bit strange because the value and meaning changes depending on whether or not --debug is passed (short vs full hash), whether the revision is a merge or not (one hash or two, separated by a '+'), the working directory or not (node vs p1node), and local or not (remote defaults to tip, and never has '+'). The equivalent string built with {rev} seems much less useful, and I couldn't think of a reasonable name, so I left it out. The discussion seemed to be pointing towards having a list of nodes, with more than one entry for a merge. It seems simpler to give the nodes a name, and use {node} for the actual commit probed, especially now that there is a virtual node for 'wdir()'. Yuya mentioned using fm.nested() in that thread, so I did for the parent nodes. I'm not sure if the plan is to fill in all of the context attributes in these items, or if these nested items should simply be made {p1node} and {p1rev}. I used ':' as the tag separator for consistency with {tags} in the log templater. Likewise, bookmarks are separated by a space for consistency with the corresponding log template. [1] https://www.mercurial-scm.org/pipermail/mercurial-devel/2016-August/087039.html

File last commit:

r32553:20c9f3ec default
r33051:15a79ac8 default
Show More
test-walk.t
518 lines | 20.8 KiB | text/troff | Tads3Lexer
Martin Geisler
tests: remove redundant mkdir...
r13956 $ hg init t
Nicolas Dumazet
tests: unify test-walk
r11799 $ cd t
$ mkdir -p beans
$ for b in kidney navy turtle borlotti black pinto; do
> echo $b > beans/$b
Mads Kiilerich
check-code: check that '>' is used for continued lines...
r19873 > done
Nicolas Dumazet
tests: unify test-walk
r11799 $ mkdir -p mammals/Procyonidae
$ for m in cacomistle coatimundi raccoon; do
> echo $m > mammals/Procyonidae/$m
Mads Kiilerich
check-code: check that '>' is used for continued lines...
r19873 > done
Nicolas Dumazet
tests: unify test-walk
r11799 $ echo skunk > mammals/skunk
$ echo fennel > fennel
$ echo fenugreek > fenugreek
$ echo fiddlehead > fiddlehead
$ hg addremove
adding beans/black
adding beans/borlotti
adding beans/kidney
adding beans/navy
adding beans/pinto
adding beans/turtle
adding fennel
adding fenugreek
adding fiddlehead
adding mammals/Procyonidae/cacomistle
adding mammals/Procyonidae/coatimundi
adding mammals/Procyonidae/raccoon
adding mammals/skunk
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg commit -m "commit #0"
Nicolas Dumazet
tests: unify test-walk
r11799
$ hg debugwalk
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <alwaysmatcher>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk -I.
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ cd mammals
$ hg debugwalk
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <alwaysmatcher>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk -X ../beans
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk -I '*k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk skunk
$ hg debugwalk -I 'glob:*k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk skunk
$ hg debugwalk -I 'relglob:*k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f fenugreek ../fenugreek
f mammals/skunk skunk
$ hg debugwalk -I 'relglob:*k' .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk skunk
$ hg debugwalk -I 're:.*k$'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:.*k$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f fenugreek ../fenugreek
f mammals/skunk skunk
$ hg debugwalk -I 'relre:.*k$'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:.*.*k$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f fenugreek ../fenugreek
f mammals/skunk skunk
$ hg debugwalk -I 'path:beans'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 $ hg debugwalk -I 'relpath:detour/../../beans'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012
$ hg debugwalk 'rootfilesin:'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk -I 'rootfilesin:'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk 'rootfilesin:.'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk -I 'rootfilesin:.'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk -X 'rootfilesin:'
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:^[^/]+$)'>>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk 'rootfilesin:fennel'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^fennel/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk -I 'rootfilesin:fennel'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^fennel/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk 'rootfilesin:skunk'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^skunk/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk -I 'rootfilesin:skunk'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^skunk/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk 'rootfilesin:beans'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^beans/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
$ hg debugwalk -I 'rootfilesin:beans'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^beans/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
$ hg debugwalk 'rootfilesin:mammals'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk -I 'rootfilesin:mammals'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk 'rootfilesin:mammals/'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk -I 'rootfilesin:mammals/'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:^mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk -X 'rootfilesin:mammals'
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:^mammals/[^/]+$)'>>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk -I.
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk Procyonidae
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
$ cd Procyonidae
$ hg debugwalk .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle cacomistle
f mammals/Procyonidae/coatimundi coatimundi
f mammals/Procyonidae/raccoon raccoon
$ hg debugwalk ..
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle cacomistle
f mammals/Procyonidae/coatimundi coatimundi
f mammals/Procyonidae/raccoon raccoon
f mammals/skunk ../skunk
$ cd ..
$ hg debugwalk ../beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
$ hg debugwalk .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk .hg
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 abort: path 'mammals/.hg' is inside nested repo 'mammals' (glob)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk ../.hg
Simon Heimberg
tests: remove glob from output lines containing no glob character
r18682 abort: path contains illegal component: .hg
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ cd ..
$ hg debugwalk -Ibeans
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk -I '{*,{b,m}*/*}k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:(?:[^/]*|(?:b|m)[^/]*\\/[^/]*)k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f fenugreek fenugreek
f mammals/skunk mammals/skunk
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Ibeans mammals
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Inon-existent
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:non\\-existent(?:/|$))'>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Inon-existent -Ibeans/black
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:non\\-existent(?:/|$)|beans\\/black(?:/|$))'>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black
$ hg debugwalk -Ibeans beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black exact
$ hg debugwalk -Ibeans/black beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black
$ hg debugwalk -Xbeans/black beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk -Xbeans/black -Ibeans
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <differencematcher m1=<includematcher includes='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk -Xbeans/black beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black exact
$ hg debugwalk -Xbeans/black -Ibeans/black
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Xbeans beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black exact
$ hg debugwalk -Xbeans -Ibeans/black
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 'glob:mammals/../beans/b*'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans\\/b[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
$ hg debugwalk '-X*/Procyonidae' mammals
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:[^/]*\\/Procyonidae(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk mammals/skunk
$ hg debugwalk path:mammals
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk ..
Mads Kiilerich
tests: fix for windows - slashes and no serve
r18506 abort: .. not under root '$TESTTMP/t' (glob)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/../..
Mads Kiilerich
tests: fix for windows - slashes and no serve
r18506 abort: beans/../.. not under root '$TESTTMP/t' (glob)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk .hg
Simon Heimberg
tests: remove glob from output lines containing no glob character
r18682 abort: path contains illegal component: .hg
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/../.hg
Simon Heimberg
tests: remove glob from output lines containing no glob character
r18682 abort: path contains illegal component: .hg
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/../.hg/data
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 abort: path contains illegal component: .hg/data (glob)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/.hg
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 abort: path 'beans/.hg' is inside nested repo 'beans' (glob)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799
Matt Mackall
test-walk: enable absolute path tests
r11903 Test absolute paths:
$ hg debugwalk `pwd`/beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans(?:/|$))'>
Matt Mackall
test-walk: enable absolute path tests
r11903 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk `pwd`/..
Mads Kiilerich
tests: fix for windows - slashes and no serve
r18506 abort: $TESTTMP/t/.. not under root '$TESTTMP/t' (glob)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Matt Mackall
test-walk: enable absolute path tests
r11903
Test patterns:
Nicolas Dumazet
tests: unify test-walk
r11799
$ hg debugwalk glob:\*
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
Mads Kiilerich
tests: move tests in test-walk.t using ':' in filenames to conditional section...
r16983 #if eol-in-paths
$ echo glob:glob > glob:glob
$ hg addremove
adding glob:glob
warning: filename contains ':', which is reserved on Windows: 'glob:glob'
$ hg debugwalk glob:\*
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:[^/]*$)'>
Mads Kiilerich
tests: move tests in test-walk.t using ':' in filenames to conditional section...
r16983 f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
Nicolas Dumazet
tests: unify test-walk
r11799 f glob:glob glob:glob
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 $ hg debugwalk glob:glob
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:glob$)'>
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 glob: No such file or directory
$ hg debugwalk glob:glob:glob
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:glob\\:glob$)'>
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 f glob:glob glob:glob exact
$ hg debugwalk path:glob:glob
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^glob\\:glob(?:/|$))'>
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 f glob:glob glob:glob exact
Mads Kiilerich
tests: move tests in test-walk.t using ':' in filenames to conditional section...
r16983 $ rm glob:glob
$ hg addremove
removing glob:glob
#endif
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 'glob:**e'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:.*e$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/turtle beans/turtle
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 're:.*[kb]$'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:.*[kb]$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f fenugreek fenugreek
f mammals/skunk mammals/skunk
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk path:beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^beans\\/black(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black exact
$ hg debugwalk path:beans//black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:^beans\\/black(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black exact
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk relglob:Procyonidae
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 'relglob:Procyonidae/**'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
$ hg debugwalk 'relglob:Procyonidae/**' fennel
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$|fennel(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel fennel exact
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
$ hg debugwalk beans 'glob:beans/*'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans(?:/|$)|beans\\/[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk 'glob:mamm**'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mamm.*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk 'glob:mamm**' fennel
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mamm.*$|fennel(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel fennel exact
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk 'glob:j*'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:j[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk NOEXIST
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:NOEXIST(?:/|$))'>
Mads Kiilerich
tests: hide 'No such file or directory' messages...
r15521 NOEXIST: * (glob)
Nicolas Dumazet
tests: unify test-walk
r11799
Mads Kiilerich
tests: add some missing #if's / hghave requirements...
r16972 #if fifo
Nicolas Dumazet
tests: unify test-walk
r11799 $ mkfifo fifo
$ hg debugwalk fifo
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:fifo(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 fifo: unsupported file type (type is fifo)
Mads Kiilerich
tests: add some missing #if's / hghave requirements...
r16972 #endif
Nicolas Dumazet
tests: unify test-walk
r11799
$ rm fenugreek
$ hg debugwalk fenugreek
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:fenugreek(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fenugreek fenugreek exact
$ hg rm fenugreek
$ hg debugwalk fenugreek
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:fenugreek(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fenugreek fenugreek exact
$ touch new
$ hg debugwalk new
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:new(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f new new exact
$ mkdir ignored
$ touch ignored/file
$ echo '^ignored$' > .hgignore
$ hg debugwalk ignored
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:ignored(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk ignored/file
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:ignored\\/file(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f ignored/file ignored/file exact
Patrick Mezard
match: make 'listfile:' split on LF and CRLF...
r14248 Test listfile and listfile0
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c "file('listfile0', 'wb').write('fenugreek\0new\0')"
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 $ hg debugwalk -I 'listfile0:listfile0'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$))'>
Patrick Mezard
match: make 'listfile:' split on LF and CRLF...
r14248 f fenugreek fenugreek
f new new
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c "file('listfile', 'wb').write('fenugreek\nnew\r\nmammals/skunk\n')"
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 $ hg debugwalk -I 'listfile:listfile'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$)|mammals\\/skunk(?:/|$))'>
Patrick Mezard
match: make 'listfile:' split on LF and CRLF...
r14248 f fenugreek fenugreek
f mammals/skunk mammals/skunk
f new new
Nicolas Dumazet
tests: unify test-walk
r11799 $ cd ..
$ hg debugwalk -R t t/mammals/skunk
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk t/mammals/skunk exact
$ mkdir t2
$ cd t2
$ hg debugwalk -R ../t ../t/mammals/skunk
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk ../t/mammals/skunk exact
$ hg debugwalk --cwd ../t mammals/skunk
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk mammals/skunk exact
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..
Yuya Nishihara
match: fix NameError 'pat' on overflow of regex pattern length...
r21191
Test split patterns on overflow
$ cd t
$ echo fennel > overflow.list
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c "for i in xrange(20000 / 100): print 'x' * 100" >> overflow.list
Yuya Nishihara
match: fix NameError 'pat' on overflow of regex pattern length...
r21191 $ echo fenugreek >> overflow.list
Martin von Zweigbergk
debugwalk: also print matcher representation...
r32453 $ hg debugwalk 'listfile:overflow.list' 2>&1 | egrep -v '(^matcher: |^xxx)'
Yuya Nishihara
match: fix NameError 'pat' on overflow of regex pattern length...
r21191 f fennel fennel exact
f fenugreek fenugreek exact
$ cd ..