Re: [PATCH v4 00/12] Wildmatch v4
On Fri, Oct 12, 2012 at 10:05:06AM -0700, Junio C Hamano wrote: > Nguyen, how about updating the match () shell function in 3070 so > that it not just says not-ok, but indicates what failed (wildmatch > failed, or wildmatch passed but fnmatch failed), at least when the > test is run as "./t3070-*.sh -v -i"? You could squash this to the "Integrate wildmatch to git" patch, or just put it at the end of the series (I'll need to send a series update anyway). This splits fnmatch and wildmatch tests separately so we can easily identify which one fails. -- 8< -- diff --git a/t/t3070-wildmatch.sh b/t/t3070-wildmatch.sh index c3ee729..4f97923 100755 --- a/t/t3070-wildmatch.sh +++ b/t/t3070-wildmatch.sh @@ -5,20 +5,28 @@ test_description='wildmatch tests' . ./test-lib.sh match() { -test_expect_success "wildmatch $*" " - if [ $1 = 1 ]; then +if [ $1 = 1 ]; then + test_expect_success "wildmatch:match $3 $4" " test-wildmatch wildmatch '$3' '$4' - else + " +else + test_expect_success "wildmatch: no match $3 $4" " ! test-wildmatch wildmatch '$3' '$4' - fi && - if [ $2 = 1 ]; then + " +fi +if [ $2 = 1 ]; then + test_expect_success "fnmatch: match $3 $4" " test-wildmatch fnmatch '$3' '$4' - elif [ $2 = x ]; then - true - else + " +elif [ $2 = 0 ]; then + test_expect_success "fnmatch: no match $3 $4" " ! test-wildmatch fnmatch '$3' '$4' - fi -" + " +#else +# test_expect_success BROKEN_FNMATCH "fnmatch: $3 $4" " +# test-wildmatch fnmatch '$3' '$4' +# " +fi } # Basic wildmat features -- 8< -- -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
On 10/12/2012 07:05 PM, Junio C Hamano wrote: Some problems even here (Mac OS) commit 2aeb6d4d7884f4c4425 not ok 61 - wildmatch 0 0 \ \ not ok 62 - wildmatch 0 0 /\ */\ not ok 69 - wildmatch 1 1 [ab] [[:]ab] not ok 71 - wildmatch 1 1 [ab] [[:digit]ab] not ok 80 - wildmatch 1 0 1 [[:digit:][:upper:][:space:]] not ok 81 - wildmatch 0 0 1 [[:digit:][:upper:][:spaci:]] not ok 88 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]] not ok 89 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]] not ok 93 - wildmatch 1 1 y [a-c[:digit:]x-z] Nguyen, how about updating the match () shell function in 3070 so that it not just says not-ok, but indicates what failed (wildmatch failed, or wildmatch passed but fnmatch failed), at least when the test is run as "./t3070-*.sh -v -i"? It seams to be the fnmatch, since removing the fnmatch makes t3070 pass. However, pullling in compat/fnmatch in the Makefile ifeq ($(uname_S),Darwin) + NO_FNMATCH = YesPlease gives this result: ./t3070-wildmatch.sh 2>&1 | grep "not ok" not ok 23 - wildmatch 1 1 a]b a[]]b not ok 25 - wildmatch 1 1 a]b a[]-]b not ok 43 - wildmatch 1 1 /foo **/foo not ok 79 - wildmatch 1 1 A [[:digit:][:upper:][:space:]] not ok 84 - wildmatch 1 1 . [[:digit:][:punct:][:space:]] not ok 85 - wildmatch 1 1 5 [[:xdigit:]] not ok 86 - wildmatch 1 1 f [[:xdigit:]] not ok 87 - wildmatch 1 1 D [[:xdigit:]] not ok 90 - wildmatch 1 1 . [^[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:lower:][:space:][:upper:][:xdigit:]] not ok 92 - wildmatch 1 1 b [a-c[:digit:]x-z] not ok 95 - wildmatch 1 1 ] [\\-^] not ok 98 - wildmatch 1 1 ] [\]] (Confused) -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
Torsten Bögershausen writes: > On 11.10.12 13:56, Nguyen Thai Ngoc Duy wrote: >> On Thu, Oct 11, 2012 at 11:33 AM, Junio C Hamano wrote: >>> Junio C Hamano writes: >>> Nguyễn Thái Ngọc Duy writes: > Really small updates. I did not want to resend it this soon but this > may fix the compile errors for Junio. >>> >>> t3070 seems to break TAP, >>> >>> *** prove *** >>> t3070-wildmatch.sh .. Failed 1/151 subtests >>> >>> Test Summary Report >>> --- >>> t3070-wildmatch.sh (Wstat: 0 Tests: 150 Failed: 0) >>> Parse errors: Tests out of sequence. Found (76) but expected (75) >>> Tests out of sequence. Found (77) but expected (76) >>> Tests out of sequence. Found (78) but expected (77) >>> Tests out of sequence. Found (79) but expected (78) >>> Tests out of sequence. Found (80) but expected (79) >>> Displayed the first 5 of 77 TAP syntax errors. >>> >>> This probably is due to this part of the output: >>> >>> ok 72 - wildmatch 1 1 [ab] [\[:]ab] >>> ok 73 - wildmatch 1 1 ?a?b \??\?b >>> ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo >>> ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o] >>> ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]] >>> >> >> It seems to prove fine here with perl 5.12.3, Test-Harness-3.230, >> bash-4.0_p38. What version do you use? >> > Some problems even here (Mac OS) commit 2aeb6d4d7884f4c4425 > > not ok 61 - wildmatch 0 0 \ \ > not ok 62 - wildmatch 0 0 /\ */\ > not ok 69 - wildmatch 1 1 [ab] [[:]ab] > not ok 71 - wildmatch 1 1 [ab] [[:digit]ab] > not ok 80 - wildmatch 1 0 1 [[:digit:][:upper:][:space:]] > not ok 81 - wildmatch 0 0 1 [[:digit:][:upper:][:spaci:]] > not ok 88 - wildmatch 1 0 _ > [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]] > not ok 89 - wildmatch 1 0 _ > [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]] > not ok 93 - wildmatch 1 1 y [a-c[:digit:]x-z] > > I have 2 perls,... The problem under discussion was that the output from passing tests were mangled and not interpreted correctly by a program that analyzes them, which happens to be written in Perl. Even in that context, it was pointless to ask for Perl versions, as it was clear that the input to that Perl-written program, i.e. output from the tests, were not formatted correctly to say "ok NN message". If you are getting "not ok", I do not think you need to look at your Perl. The wildmatch tests are failing, and it is far more likely that the wildmatch code is failing in your environment, than the test harness that runs wildmatch code is failing. Neither the wildmatch code itself (in C), nor the test harness that is giving you the above "not ok" (in shell) depends on Perl. Thanks for a report, but the debugging needs to see how the matching code in mildmatch misbehaves. I suspect it is another case where the platform fnmatch (from MacOS) is not behaving as these tests expect. Nguyen, how about updating the match () shell function in 3070 so that it not just says not-ok, but indicates what failed (wildmatch failed, or wildmatch passed but fnmatch failed), at least when the test is run as "./t3070-*.sh -v -i"? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
On 11.10.12 13:56, Nguyen Thai Ngoc Duy wrote: > On Thu, Oct 11, 2012 at 11:33 AM, Junio C Hamano wrote: >> Junio C Hamano writes: >> >>> Nguyễn Thái Ngọc Duy writes: >>> Really small updates. I did not want to resend it this soon but this may fix the compile errors for Junio. >> >> t3070 seems to break TAP, >> >> *** prove *** >> t3070-wildmatch.sh .. Failed 1/151 subtests >> >> Test Summary Report >> --- >> t3070-wildmatch.sh (Wstat: 0 Tests: 150 Failed: 0) >> Parse errors: Tests out of sequence. Found (76) but expected (75) >> Tests out of sequence. Found (77) but expected (76) >> Tests out of sequence. Found (78) but expected (77) >> Tests out of sequence. Found (79) but expected (78) >> Tests out of sequence. Found (80) but expected (79) >> Displayed the first 5 of 77 TAP syntax errors. >> >> This probably is due to this part of the output: >> >> ok 72 - wildmatch 1 1 [ab] [\[:]ab] >> ok 73 - wildmatch 1 1 ?a?b \??\?b >> ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo >> ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o] >> ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]] >> > > It seems to prove fine here with perl 5.12.3, Test-Harness-3.230, > bash-4.0_p38. What version do you use? > Some problems even here (Mac OS) commit 2aeb6d4d7884f4c4425 not ok 61 - wildmatch 0 0 \ \ not ok 62 - wildmatch 0 0 /\ */\ not ok 69 - wildmatch 1 1 [ab] [[:]ab] not ok 71 - wildmatch 1 1 [ab] [[:digit]ab] not ok 80 - wildmatch 1 0 1 [[:digit:][:upper:][:space:]] not ok 81 - wildmatch 0 0 1 [[:digit:][:upper:][:spaci:]] not ok 88 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]] not ok 89 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]] not ok 93 - wildmatch 1 1 y [a-c[:digit:]x-z] I have 2 perls, I'm not sure which versin is used by git these days. which perl /opt/local/bin/perl tb@birne:~/projects/git/git.pu/t> perl --version This is perl, v5.8.9 built for darwin-2level /usr/bin/perl --version This is perl, v5.10.0 built for darwin-thread-multi-2level (with 2 registered patches, see perl -V for more detail) -- If I can do more debugging/testing please let me know /Torsten -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
Junio C Hamano writes: > Ahh, it must be this bits from t/test-lib.sh > > t/test-lib.sh | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git i/t/test-lib.sh w/t/test-lib.sh > index 514282c..489bc80 100644 > --- i/t/test-lib.sh > +++ w/t/test-lib.sh > @@ -230,7 +230,7 @@ else > say_color() { > test -z "$1" && test -n "$quiet" && return > shift > - echo "$*" > + printf "%s\n" "$*" > } > fi I'll queue this fix separately before your series on 'pu'. -- >8 -- Subject: [PATCH] test-lib: Fix say_color () not to interpret \a\b\c in the message When running with color disabled (e.g. under prove to produce TAP output), say_color() helper function is defined to use echo to show the message. With a message that ends with "\c", echo is allowed to interpret it as "Do not end the line with LF". Use printf "%s\n" to emit the message literally. Signed-off-by: Junio C Hamano --- t/test-lib.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/t/test-lib.sh b/t/test-lib.sh index c0d04c4..280b3aa 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -169,7 +169,7 @@ else say_color() { test -z "$1" && test -n "$quiet" && return shift - echo "$*" + printf "%s\n" "$*" } fi -- 1.8.0.rc1.82.ga68bb49 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
Junio C Hamano writes: >>> This probably is due to this part of the output: >>> >>> ok 72 - wildmatch 1 1 [ab] [\[:]ab] >>> ok 73 - wildmatch 1 1 ?a?b \??\?b >>> ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo >>> ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o] >>> ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]] >> ... > > I suspect that this is the immediate culprit: > > match 1 1 'abc' '\a\b\c' > > The symptom looks like that somebody is interpreting \a as BEL, \b > as backspace, etc. when showing the "ok ..." line, no? Ahh, it must be this bits from t/test-lib.sh t/test-lib.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git i/t/test-lib.sh w/t/test-lib.sh index 514282c..489bc80 100644 --- i/t/test-lib.sh +++ w/t/test-lib.sh @@ -230,7 +230,7 @@ else say_color() { test -z "$1" && test -n "$quiet" && return shift - echo "$*" + printf "%s\n" "$*" } fi -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
Nguyen Thai Ngoc Duy writes: > On Thu, Oct 11, 2012 at 11:33 AM, Junio C Hamano wrote: >> Junio C Hamano writes: >> >>> Nguyễn Thái Ngọc Duy writes: >>> Really small updates. I did not want to resend it this soon but this may fix the compile errors for Junio. >> >> t3070 seems to break TAP, >> >> *** prove *** >> t3070-wildmatch.sh .. Failed 1/151 subtests >> >> Test Summary Report >> --- >> t3070-wildmatch.sh (Wstat: 0 Tests: 150 Failed: 0) >> Parse errors: Tests out of sequence. Found (76) but expected (75) >> Tests out of sequence. Found (77) but expected (76) >> Tests out of sequence. Found (78) but expected (77) >> Tests out of sequence. Found (79) but expected (78) >> Tests out of sequence. Found (80) but expected (79) >> Displayed the first 5 of 77 TAP syntax errors. >> >> This probably is due to this part of the output: >> >> ok 72 - wildmatch 1 1 [ab] [\[:]ab] >> ok 73 - wildmatch 1 1 ?a?b \??\?b >> ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo >> ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o] >> ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]] >> > > It seems to prove fine here with perl 5.12.3, Test-Harness-3.230, > bash-4.0_p38. What version do you use? I seem to have Perl 5.10.1, Test::Harness 3.17, Dash 0.5.5.1. But as you can see above, what is _fed_ to the Perl-side is broken (notice the concatenation at the end of "ok 74"), so I do not think versions of Perl-side matters. I suspect that this is the immediate culprit: match 1 1 'abc' '\a\b\c' The symptom looks like that somebody is interpreting \a as BEL, \b as backspace, etc. when showing the "ok ..." line, no? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
On Thu, Oct 11, 2012 at 11:33 AM, Junio C Hamano wrote: > Junio C Hamano writes: > >> Nguyễn Thái Ngọc Duy writes: >> >>> Really small updates. I did not want to resend it this soon but this >>> may fix the compile errors for Junio. > > t3070 seems to break TAP, > > *** prove *** > t3070-wildmatch.sh .. Failed 1/151 subtests > > Test Summary Report > --- > t3070-wildmatch.sh (Wstat: 0 Tests: 150 Failed: 0) > Parse errors: Tests out of sequence. Found (76) but expected (75) > Tests out of sequence. Found (77) but expected (76) > Tests out of sequence. Found (78) but expected (77) > Tests out of sequence. Found (79) but expected (78) > Tests out of sequence. Found (80) but expected (79) > Displayed the first 5 of 77 TAP syntax errors. > > This probably is due to this part of the output: > > ok 72 - wildmatch 1 1 [ab] [\[:]ab] > ok 73 - wildmatch 1 1 ?a?b \??\?b > ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo > ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o] > ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]] > It seems to prove fine here with perl 5.12.3, Test-Harness-3.230, bash-4.0_p38. What version do you use? -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
Junio C Hamano writes: > Nguyễn Thái Ngọc Duy writes: > >> Really small updates. I did not want to resend it this soon but this >> may fix the compile errors for Junio. t3070 seems to break TAP, *** prove *** t3070-wildmatch.sh .. Failed 1/151 subtests Test Summary Report --- t3070-wildmatch.sh (Wstat: 0 Tests: 150 Failed: 0) Parse errors: Tests out of sequence. Found (76) but expected (75) Tests out of sequence. Found (77) but expected (76) Tests out of sequence. Found (78) but expected (77) Tests out of sequence. Found (79) but expected (78) Tests out of sequence. Found (80) but expected (79) Displayed the first 5 of 77 TAP syntax errors. This probably is due to this part of the output: ok 72 - wildmatch 1 1 [ab] [\[:]ab] ok 73 - wildmatch 1 1 ?a?b \??\?b ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o] ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]] -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 00/12] Wildmatch v4
Nguyễn Thái Ngọc Duy writes: > Really small updates. I did not want to resend it this soon but this > may fix the compile errors for Junio. Thanks; queued and pushed out on 'pu'. Comments later. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html