Start 2010-11-16T16:40:11 ActivePerl-818 CPAN-1.9402 Going to read '/home/fly818/var/cpan/Metadata' Database was generated on Tue, 16 Nov 2010 22:33:29 GMT Running make for P/PE/PETDANCE/ack-1.94.tar.gz Checksum for /net/nas/data/cpan/authors/id/P/PE/PETDANCE/ack-1.94.tar.gz ok Will not use Archive::Tar, need 1.00 ack-1.94/ ack-1.94/ack ack-1.94/ack-base ack-1.94/ack-help-types.txt ack-1.94/ack-help.txt ack-1.94/Ack.pm ack-1.94/Basic.pm ack-1.94/capture-stderr ack-1.94/Changes ack-1.94/etc/ ack-1.94/Intro.pod ack-1.94/Makefile.PL ack-1.94/MANIFEST ack-1.94/META.yml ack-1.94/Plugin.pm ack-1.94/README.markdown ack-1.94/Repository.pm ack-1.94/Resource.pm ack-1.94/squash ack-1.94/t/ ack-1.94/TODO ack-1.94/t/00-load.t ack-1.94/t/ack-1.t ack-1.94/t/ack-a.t ack-1.94/t/ack-binary.t ack-1.94/t/ack-c.t ack-1.94/t/ack-color.t ack-1.94/t/ack-column.t ack-1.94/t/ack-env.t ack-1.94/t/ack-g.t ack-1.94/t/ack-group.t ack-1.94/t/ack-h.t ack-1.94/t/ack-ignore-dir.t ack-1.94/t/ack-line.t ack-1.94/t/ack-match.t ack-1.94/t/ack-o.t ack-1.94/t/ack-passthru.t ack-1.94/t/ack-print0.t ack-1.94/t/ack-text.t ack-1.94/t/ack-type.t ack-1.94/t/ack-u.t ack-1.94/t/ack-v.t ack-1.94/t/ack-w.t ack-1.94/t/code.t ack-1.94/t/command-line-files.t ack-1.94/t/context.t ack-1.94/t/encoding.t ack-1.94/t/etc/ ack-1.94/t/file-permission.t ack-1.94/t/filetypes.t ack-1.94/t/illegal-regex.t ack-1.94/t/incomplete-last-line.t ack-1.94/t/interesting.t ack-1.94/t/longopts.t ack-1.94/t/module.t ack-1.94/t/multiline.t ack-1.94/t/pod.t ack-1.94/t/rc.t ack-1.94/t/standalone.t ack-1.94/t/swamp/ ack-1.94/t/tar.t ack-1.94/t/text/ ack-1.94/t/Util.pm ack-1.94/t/zero.t ack-1.94/t/text/4th-of-july.txt ack-1.94/t/text/boy-named-sue.txt ack-1.94/t/text/freedom-of-choice.txt ack-1.94/t/text/me-and-bobbie-mcgee.txt ack-1.94/t/text/science-of-myth.txt ack-1.94/t/text/shut-up-be-happy.txt ack-1.94/t/swamp/#emacs-workfile.pl# ack-1.94/t/swamp/0 ack-1.94/t/swamp/blib/ ack-1.94/t/swamp/c-header.h ack-1.94/t/swamp/c-source.c ack-1.94/t/swamp/crystallography-weenies.f ack-1.94/t/swamp/file.bar ack-1.94/t/swamp/file.foo ack-1.94/t/swamp/groceries/ ack-1.94/t/swamp/html.htm ack-1.94/t/swamp/html.html ack-1.94/t/swamp/incomplete-last-line.txt ack-1.94/t/swamp/javascript.js ack-1.94/t/swamp/Makefile ack-1.94/t/swamp/Makefile.PL ack-1.94/t/swamp/moose-andy.jpg ack-1.94/t/swamp/not-an-#emacs-workfile# ack-1.94/t/swamp/notaMakefile ack-1.94/t/swamp/notaRakefile ack-1.94/t/swamp/options.pl ack-1.94/t/swamp/options.pl.bak ack-1.94/t/swamp/parrot.pir ack-1.94/t/swamp/perl-test.t ack-1.94/t/swamp/perl-without-extension ack-1.94/t/swamp/perl.cgi ack-1.94/t/swamp/perl.pl ack-1.94/t/swamp/perl.pm ack-1.94/t/swamp/perl.pod ack-1.94/t/swamp/perl.tar.gz ack-1.94/t/swamp/pipe-stress-freaks.F ack-1.94/t/swamp/Rakefile ack-1.94/t/swamp/sample.rake ack-1.94/t/swamp/solution8.tar ack-1.94/t/swamp/groceries/another_subdir/ ack-1.94/t/swamp/groceries/CVS/ ack-1.94/t/swamp/groceries/fruit ack-1.94/t/swamp/groceries/junk ack-1.94/t/swamp/groceries/meat ack-1.94/t/swamp/groceries/RCS/ ack-1.94/t/swamp/groceries/subdir/ ack-1.94/t/swamp/groceries/subdir/fruit ack-1.94/t/swamp/groceries/subdir/junk ack-1.94/t/swamp/groceries/subdir/meat ack-1.94/t/swamp/groceries/RCS/fruit ack-1.94/t/swamp/groceries/RCS/junk ack-1.94/t/swamp/groceries/RCS/meat ack-1.94/t/swamp/groceries/CVS/fruit ack-1.94/t/swamp/groceries/CVS/junk ack-1.94/t/swamp/groceries/CVS/meat ack-1.94/t/swamp/groceries/another_subdir/CVS/ ack-1.94/t/swamp/groceries/another_subdir/fruit ack-1.94/t/swamp/groceries/another_subdir/junk ack-1.94/t/swamp/groceries/another_subdir/meat ack-1.94/t/swamp/groceries/another_subdir/RCS/ ack-1.94/t/swamp/groceries/another_subdir/RCS/fruit ack-1.94/t/swamp/groceries/another_subdir/RCS/junk ack-1.94/t/swamp/groceries/another_subdir/RCS/meat ack-1.94/t/swamp/groceries/another_subdir/CVS/fruit ack-1.94/t/swamp/groceries/another_subdir/CVS/junk ack-1.94/t/swamp/groceries/another_subdir/CVS/meat ack-1.94/t/swamp/blib/ignore.pir ack-1.94/t/swamp/blib/ignore.pm ack-1.94/t/swamp/blib/ignore.pod ack-1.94/t/etc/buttonhook.html.xxx ack-1.94/t/etc/buttonhook.noxml.xxx ack-1.94/t/etc/buttonhook.rfc.xxx ack-1.94/t/etc/buttonhook.rss.xxx ack-1.94/t/etc/buttonhook.xml.xxx ack-1.94/t/etc/core.2112 ack-1.94/t/etc/shebang.empty.xxx ack-1.94/t/etc/shebang.foobar.xxx ack-1.94/t/etc/shebang.php.xxx ack-1.94/t/etc/shebang.pl.xxx ack-1.94/t/etc/shebang.py.xxx ack-1.94/t/etc/shebang.rb.xxx ack-1.94/t/etc/shebang.sh.xxx ack-1.94/etc/ack.bash_completion.sh CPAN.pm: Going to build P/PE/PETDANCE/ack-1.94.tar.gz >>> /home/fly818/ap818/bin/perl-static Makefile.PL Checking if your kit is complete... Looks good Writing Makefile for ack >>> make cp Ack.pm blib/lib/App/Ack.pm cp Repository.pm blib/lib/App/Ack/Repository.pm cp Plugin.pm blib/lib/App/Ack/Plugin.pm cp Resource.pm blib/lib/App/Ack/Resource.pm cp Basic.pm blib/lib/App/Ack/Plugin/Basic.pm /home/fly818/ap818/bin/perl-static squash ack-base File::Next Ack.pm Repository.pm Resource.pm Basic.pm > ack Reading ack-base Reading /home/fly818/var/megalib/File/Next.pm Reading Ack.pm Reading Repository.pm Reading Resource.pm Reading Basic.pm chmod 0755 ack /home/fly818/ap818/bin/perl-static -T -c ack ack syntax OK /home/fly818/ap818/bin/perl-static -T ack --noenv --help > ack-help.txt || perl -e0 /home/fly818/ap818/bin/perl-static -T ack --noenv --help=types > ack-help-types.txt || perl -e0 /home/fly818/ap818/bin/perl-static -T ack --noenv --help=dirs > ack-help-dirs.txt || perl -e0 cp ack blib/script/ack /home/fly818/ap818/bin/perl-static -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/ack Manifying blib/man1/ack.1 PETDANCE/ack-1.94.tar.gz make -- OK Running make test >>> make test TEST_VERBOSE=1 PERL_DL_NONLAZY=1 /home/fly818/ap818/bin/perl-static "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Testing App::Ack 1.94, File::Next 1.06, Perl 5.008008, /home/fly818/ap818/bin/perl-static t/00-load.t ............... 1..4 ok 1 - use App::Ack; ok 2 - use App::Ack::Repository; ok 3 - use App::Ack::Resource; ok 4 - use File::Next; ok t/ack-1.t ................. 1..10 ok 1 - Should have no output to stderr: ack Sue -1 -h --text t/text ok 2 - Looking for first instance of Sue! ok 3 - Should have no output to stderr: ack Sue -1 -h -v --text t/text/boy-named-sue.txt ok 4 - Looking for first non-match ok 5 - Should have no output to stderr: ack -1 -f t/swamp ok 6 - Should only get one file back ok 7 - One of the files from the swamp ok 8 - Should have no output to stderr: ack -1 -g Makefile t/ ok 9 - Should only get one file back from Makefile ok 10 - The one file matches one of the two Makefile files ok t/ack-a.t ................. 1..2 ok 1 - Should have no output to stderr: ack -f -a t/etc ok 2 - File lists match ok t/ack-binary.t ............ 1..4 ok 1 - Should have no output to stderr: ack -f --binary t ok 2 - Looking for binary ok 3 - Should have no output to stderr: ack -a sRGB t/swamp ok 4 - Looking for binary ok t/ack-c.t ................. 1..12 ok 1 - Should have no output to stderr: ack religion -i -a -l t/text ok 2 - Looking for religion with -l ok 3 - Should have no output to stderr: ack religion -a -L t/text ok 4 - Looking for religion with -L ok 5 - Should have no output to stderr: ack religion -a -l -v t/text ok 6 - Looking for religion with -l -v ok 7 - Should have no output to stderr: ack boy -i -a -c t/text ok 8 - Boy counts ok 9 - Should have no output to stderr: ack religion -i -a -l -c t/text ok 10 - Religion counts -l -c ok 11 - Piping into ack --count should return one line of results ok 12 - Piping into ack --count should return "-:" ok t/ack-color.t ............. 1..10 ok 1 - Should have no output to stderr: ack called --color --text t/text/boy-named-sue.txt ok 2 ok 3 - Should have no output to stderr: ack (called).*\1 --text --color t/text/boy-named-sue.txt ok 4 - backref pattern matches once ok 5 ok 6 - Should have no output to stderr: ack called --colour --text t/text/boy-named-sue.txt ok 7 ok 8 - Should have no output to stderr: ack v.+?m|c.+?n -w --color --text t/text/freedom-of-choice.txt ok 9 - multiple matches on 1 line ok 10 - multiple matches highlighted ok t/ack-column.t ............ 1..4 ok 1 - Should have no output to stderr: ack the -w -i --with-filename --noenv --column t/text/science-of-myth.txt ok 2 - Checking column numbers ok 3 - Should have no output to stderr: ack the -w -i --with-filename --noenv --no-column t/text/science-of-myth.txt ok 4 - Checking without column numbers ok t/ack-env.t ............... 1..10 ok 1 - Should have no output to stderr: ack Sue! -h --text --env --nocolor t/text ok 2 - Looking for first instance of Sue! with --env ok 3 - Should have no output to stderr: ack Sue! -h --text --noenv t/text ok 4 - Looking for Sue! with --noenv ok 5 - Should have no output to stderr: ack --nocolor -- --noenv t/swamp t/text ok 6 - Looking for Sue! with --noenv ok 7 - Should have no output to stderr: ack Sue! -h --text --noenv --env --nocolor t/text ok 8 - Looking for first instance of Sue! with --noenv --env ok 9 - Should have no output to stderr: ack Sue! -h --text --env --noenv t/text ok 10 - Looking for Sue! with --env --noenv ok t/ack-g.t ................. 1..57 ok 1 - No STDOUT for non-existent file ok 2 - One line of STDERR for non-existent file ok 3 - Correct warning message for non-existent file ok 4 - Should have no output to stderr: ack -g Makefile t/ ok 5 - Looking for Makefile ok 6 - Should have no output to stderr: ack -g swam.......htm t/ ok 7 - Looking for swam.......htm ok 8 - Should have no output to stderr: ack -g ^t.st t ok 9 - Looking for ^t.st ok 10 - Should have no output to stderr: ack -a -g pg$ t ok 11 - Looking for pg$ ok 12 - Should have no output to stderr: ack -i -g PIPE . ok 13 - Looking for -i -g PIPE ok 14 - Should have no output to stderr: ack -g (?i:PIPE) . ok 15 - Looking for (?i:PIPE) ok 16 - Should have no output to stderr: ack -g emacs t/swamp/\#emacs-workfile.pl\# ok 17 - File on command line is always searched ok 18 - Should have no output to stderr: ack --html -g parrot t/swamp/parrot.pir ok 19 - File on command line is always searched, even with wrong type. ok 20 - Should have no output to stderr: ack -G Makefile the t/swamp ok 21 - Looking for the in files matching Makefile ok 22 - Should have no output to stderr: ack --perl -G \.t$ -i ack -l t/swamp ok 23 - Looking for ack (case insensitive) in files matching \.t$ ok 24 - Should have no output to stderr: ack --perl -i -G \.t$ ack -l t/swamp ok 25 - Looking for ack (case insensitive) in files matching \.t$ ok 26 - Should have no output to stderr: ack --perl -i -G \.T$ ack -l t/swamp ok 27 - Looking for ack in files matching \.T$ ok 28 - Should have no output to stderr: ack --perl -i -G \.T$ -i ack -l t/swamp ok 29 - Looking for ack in files matching \.T$ (both case insensitive) ok 30 - Should have no output to stderr: ack -a -G swamp.*[fb][oa][or] file -l t/swamp ok 31 - Looking for file in all files matching swamp.*[fb][oa][or] ok 32 - Should have no output to stderr: ack -u -G swamp[\\/][^\\/]+\.pl file -l t/swamp ok 33 - Looking for file in unrestricted files matching swamp[\\/][^\\/]+\.pl ok 34 - Should have no output to stderr: ack -Q -g ack-g.t$ t ok 35 - Looking for ack-g.t$ with quotemeta. ok 36 - Should have no output to stderr: ack -l -G print0.t$ -Q ... t ok 37 - Looking for ... (quotemeta) in files matching print0.t$. ok 38 - Should have no output to stderr: ack -l -Q ... -G print0.t$ t ok 39 - Looking for ... (quotemeta) in files matching print0.t$ - swapped. ok 40 - Should have no output to stderr: ack -a -w -g free t/text/ ok 41 - Looking for free with '-w'. ok 42 - Should have no output to stderr: ack -a -v -g of t/text/ ok 43 - Looking for filenames NOT matching of. ok 44 - Should have no output to stderr: ack -a -l -G of -v are t/text/ ok 45 - Looking for files without are in files matching of ok 46 - Should have no output to stderr: ack -a -l -v are -G of t/text/ ok 47 - Looking for files without are in files matching of - swapped ok 48 - Should have no output to stderr: ack -a --invert-file-match -g of t/text/ ok 49 - Looking for file names that do not match of ok 50 - Specifying both -g and --match must lead to an error RC ok 51 - No normal output ok 52 - One line of stderr output ok 53 - Error message must contain "(Sue)" ok 54 - Specifying both -f and --match must lead to an error RC ok 55 - No normal output ok 56 - One line of stderr output ok 57 - Error message must contain "(Sue)" ok t/ack-group.t ............. 1..12 ok 1 - Should have no output to stderr: ack -a --nogroup --nocolor free t/text/4th-of-july.txt t/text/boy-named-sue.txt t/text/freedom-of-choice.txt t/text/me-and-bobbie-mcgee.txt t/text/science-of-myth.txt t/text/shut-up-be-happy.txt ok 2 - No grouping ok 3 - Should have no output to stderr: ack -a --nobreak --noheading --nocolor free t/text/4th-of-july.txt t/text/boy-named-sue.txt t/text/freedom-of-choice.txt t/text/me-and-bobbie-mcgee.txt t/text/science-of-myth.txt t/text/shut-up-be-happy.txt ok 4 - No grouping ok 5 - Should have no output to stderr: ack -a --group --nocolor free t/text/4th-of-july.txt t/text/boy-named-sue.txt t/text/freedom-of-choice.txt t/text/me-and-bobbie-mcgee.txt t/text/science-of-myth.txt t/text/shut-up-be-happy.txt ok 6 - Standard grouping ok 7 - Should have no output to stderr: ack -a --heading --break --nocolor free t/text/4th-of-july.txt t/text/boy-named-sue.txt t/text/freedom-of-choice.txt t/text/me-and-bobbie-mcgee.txt t/text/science-of-myth.txt t/text/shut-up-be-happy.txt ok 8 - Standard grouping ok 9 - Should have no output to stderr: ack -a --heading --nobreak --nocolor free t/text/4th-of-july.txt t/text/boy-named-sue.txt t/text/freedom-of-choice.txt t/text/me-and-bobbie-mcgee.txt t/text/science-of-myth.txt t/text/shut-up-be-happy.txt ok 10 - Standard grouping ok 11 - Should have no output to stderr: ack -a --break --noheading --nocolor free t/text/4th-of-july.txt t/text/boy-named-sue.txt t/text/freedom-of-choice.txt t/text/me-and-bobbie-mcgee.txt t/text/science-of-myth.txt t/text/shut-up-be-happy.txt ok 12 - No grouping ok t/ack-h.t ................. 1..12 ok 1 - Should have no output to stderr: ack strict t/swamp/options.pl ok 2 - Looking for strict in one file ok 3 - Should have no output to stderr: ack strict t/swamp/options.pl t/swamp/pipe-stress-freaks.F ok 4 - Looking for strict in multiple files ok 5 - Should have no output to stderr: ack -H strict t/swamp/options.pl ok 6 - Looking for strict in one file with -H ok 7 - Should have no output to stderr: ack --with-filename strict t/swamp/options.pl ok 8 - Looking for strict in one file with --with-filename ok 9 - Should have no output to stderr: ack -h strict t/swamp/options.pl t/swamp/crystallography-weenies.f ok 10 - Looking for strict in multiple files with -h ok 11 - Should have no output to stderr: ack --no-filename strict t/swamp/options.pl t/swamp/crystallography-weenies.f ok 12 - Looking for strict in multiple files with --no-filename ok t/ack-ignore-dir.t ........ 1..26 ok 1 - Should have no output to stderr: ack -u --noenv -la apple t/swamp ok 2 - test data contents are as expected ok 3 - Should have no output to stderr: ack --ignore-dir=subdir --noenv -la apple t/swamp ok 4 - --ignore-dir=subdir ok 5 - Should have no output to stderr: ack --ignore-dir=subdir/ --noenv -la apple t/swamp ok 6 - --ignore-dir=subdir/ ok 7 - Should have no output to stderr: ack --ignore-dir=subdir --ignore-dir=another_subdir --noenv -la apple t/swamp ok 8 - --ignore-dir=subdir --ignore-dir=another_subdir ok 9 - Should have no output to stderr: ack --noignore-dir=CVS --noenv -la apple t/swamp ok 10 - --noignore-dir=CVS ok 11 - Should have no output to stderr: ack --noignore-dir=CVS --noignore-dir=RCS --noenv -la apple t/swamp ok 12 - --noignore-dir=CVS --noignore-dir=RCS ok 13 - Should have no output to stderr: ack --noignore-dir=CVS --ignore-dir=subdir --noenv -la apple t/swamp ok 14 - --noignore-dir=CVS --ignore-dir=subdir ok 15 - Should have no output to stderr: ack --noignore-dir=CVS --ignore-dir=CVS --noenv -la apple t/swamp ok 16 - --noignore-dir=CVS --ignore-dir=CVS ok 17 - Should have no output to stderr: ack --noignore-dir=CVS --ignore-dir=CVS --noignore-dir=CVS --noenv -la apple t/swamp ok 18 - --noignore-dir=CVS --ignore-dir=CVS --noignore-dir=CVS ok 19 - Should have no output to stderr: ack --ignore-dir=subdir --noignore-dir=subdir --noenv -la apple t/swamp ok 20 - --ignore-dir=subdir --noignore-dir=subdir ok 21 - Should have no output to stderr: ack --ignore-dir=subdir --noignore-dir=subdir --ignore-dir=subdir --noenv -la apple t/swamp ok 22 - --ignore-dir=subdir --noignore-dir=subdir --ignore-dir=subdir ok 23 - Should have no output to stderr: ack -u --ignore-dir=subdir --noenv -la apple t/swamp ok 24 - -u --ignore-dir=subdir ok 25 - Should have no output to stderr: ack --ignore-dir=t/swamp/groceries/another_subdir --noenv -la apple t/swamp ok 26 - ignore relative paths instead of just directory names ok t/ack-line.t .............. 1..22 ok 1 - Should have no output to stderr: ack --lines=1 --text t/text/boy-named-sue.txt ok 2 - Looking for line 1 ok 3 - Should have no output to stderr: ack --lines=1 --lines=5 --text t/text/boy-named-sue.txt ok 4 - Looking for lines 1 and 5 ok 5 - Should have no output to stderr: ack --lines=1,5 --text t/text/boy-named-sue.txt ok 6 - Looking for lines 1, 5 ok 7 - Should have no output to stderr: ack --lines=1-5 --text t/text/boy-named-sue.txt ok 8 - Looking for lines 1 to 5 ok 9 - Should have no output to stderr: ack t/text/boy-named-sue.txt --lines=3 -C --text ok 10 - Looking for line 3 with two lines of context ok 11 - Should have no output to stderr: ack --lines=1,5,1000 --text t/text/boy-named-sue.txt ok 12 - Looking for non existent line ok 13 - Should have no output to stderr: ack --lines=2 --passthru t/swamp/perl.pod ok 14 - Checking --passthru behaviour with --line ok 15 - Should have no output to stderr: ack --cc --lines=1 t/swamp/ ok 16 - Looking for first line in multiple files ok 17 - Should have no output to stderr: ack --cc --lines=1 --after=3 --sort t/swamp/ ok 18 - Looking for first line in multiple files ok 19 - Specifying both --line and --match must lead to an error RC ok 20 - No normal output ok 21 - One line of stderr output ok 22 - Error message must contain "(Sue)" ok t/ack-match.t ............. 1..16 ok 1 - Should have no output to stderr: ack -a Sue t/text ok 2 - Should have no output to stderr: ack -a t/text --match Sue ok 3 - Same output for regex 'Sue'. ok 4 - Should have no output to stderr: ack -a -i boy t/text ok 5 - Should have no output to stderr: ack -a -i t/text --match boy ok 6 - Same output for regex 'boy'. ok 7 - Should have no output to stderr: ack -a -Q ll+ t/text ok 8 - Should have no output to stderr: ack -a -Q t/text --match ll+ ok 9 - Same output for regex 'll+'. ok 10 - Should have no output to stderr: ack -a -w gon t/text ok 11 - Should have no output to stderr: ack -a -w t/text --match gon ok 12 - Same output for regex 'gon'. ok 13 - Should have no output to stderr: ack --match Sue ok 14 - ack should return an error when piped into without a regex ok 15 - ack should return no STDOUT when piped into without a regex ok 16 - ack should return one line of error message when piped into without a regex ok t/ack-o.t ................. 1..6 ok 1 - Should have no output to stderr: ack the\s+\S+ --text t/text/boy-named-sue.txt ok 2 - Find all the things without -o ok 3 - Should have no output to stderr: ack the\s+\S+ --text -o t/text/boy-named-sue.txt ok 4 - Find all the things with -o ok 5 - Should have no output to stderr: ack --output=x$1x -a question(\S+) t/text/ ok 6 - Find all the things with --output function ok t/ack-passthru.t .......... 1..6 ok 1 - Should have no output to stderr: ack you --text t/text/4th-of-july.txt ok 2 - I'm lookin' for you ok 3 - Should have no output to stderr: ack you --text --passthru t/text/4th-of-july.txt ok 4 - Still lookin' for you, in passthru mode ok 5 - Got all the lines back ok 6 - Only two lines are highlighted ok t/ack-print0.t ............ 1..16 ok 1 - Should have no output to stderr: ack -g of --text --sort-files t/text/ ok 2 - Files found with -g and without --print0 ok 3 - ... no null byte in output ok 4 - Should have no output to stderr: ack -g of --text --sort-files --print0 t/text ok 5 - Only one line of output with --print0 ok 6 - Files found with -g and with --print0 ok 7 - Should have no output to stderr: ack -f --text --print0 t/text/ ok 8 - Only one line of output with -f and --print0 ok 9 - ... and null bytes in output ok 10 - Should have no output to stderr: ack -l --text --print0 of t/text/ ok 11 - Only one line of output with -l and --print0 ok 12 - ... and null bytes in output ok 13 - Should have no output to stderr: ack --count --text --print0 of t/text/ ok 14 - Only one line of output with --count and --print0 ok 15 - ... and null bytes in output ok 16 - ... and ":\d+" in output, so the counting also works ok t/ack-text.t .............. 1..4 ok 1 - Should have no output to stderr: ack -f --text t/text t/swamp t/etc ok 2 - Looking for text files ok 3 - Should have no output to stderr: ack -f --xml t/etc ok 4 - Looking for XML files ok t/ack-type.t .............. 1..74 ok 1 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --perl ok 2 - File lists match via --perl ok 3 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --perl --noruby ok 4 - File lists match via --perl --noruby ok 5 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --ruby ok 6 - File lists match via --ruby ok 7 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --ruby --noperl ok 8 - File lists match via --ruby --noperl ok 9 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --perl --ruby ok 10 - File lists match via --perl --ruby ok 11 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --ruby --perl ok 12 - File lists match via --ruby --perl ok 13 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type=perl ok 14 - File lists match via --type=perl ok 15 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type=perl --type=noruby ok 16 - File lists match via --type=perl --type=noruby ok 17 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type=ruby ok 18 - File lists match via --type=ruby ok 19 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type=ruby --type=noperl ok 20 - File lists match via --type=ruby --type=noperl ok 21 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type=perl --type=ruby ok 22 - File lists match via --type=perl --type=ruby ok 23 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type=ruby --type=perl ok 24 - File lists match via --type=ruby --type=perl ok 25 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --perl --type=noruby ok 26 - File lists match via --perl --type=noruby ok 27 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --ruby --type=noperl ok 28 - File lists match via --ruby --type=noperl ok 29 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --perl --type=ruby ok 30 - File lists match via --perl --type=ruby ok 31 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --ruby --type=perl ok 32 - File lists match via --ruby --type=perl ok 33 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --cc ok 34 - File lists match via --cc ok 35 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --hh ok 36 - File lists match via --hh ok 37 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --cc --nohh ok 38 - File lists match via --cc --nohh ok 39 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --fortran ok 40 - File lists match via --fortran ok 41 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --skipped ok 42 - File lists match via --skipped ok 43 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-set foo-type=.foo --foo-type ok 44 - File lists match via --type-set foo-type=.foo --foo-type ok 45 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-set foo-type=.foo --type=foo-type ok 46 - File lists match via --type-set foo-type=.foo --type=foo-type ok 47 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-set foo-type=.foo,.bar --foo-type ok 48 - File lists match via --type-set foo-type=.foo,.bar --foo-type ok 49 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-set foo-type=.foo --type-set bar-type=.bar --foo-type --bar-type ok 50 - File lists match via --type-set foo-type=.foo --type-set bar-type=.bar --foo-type --bar-type ok 51 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-add xml=.foo --xml ok 52 - File lists match via --type-add xml=.foo --xml ok 53 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-add xml=.foo,.bar --xml ok 54 - File lists match via --type-add xml=.foo,.bar --xml ok 55 - Should have no output to stderr: ack t/swamp/ t/etc/ -f --type-set cc=.foo --cc ok 56 - File lists match via --type-set cc=.foo --cc ok 57 - Located stderr message: ack: --type-set: Builtin type "make" cannot be changed. ok 58 - Only one line of stderr for message: ack: --type-set: Builtin type "make" cannot be changed. ok 59 - Located stderr message: ack: --type-add: Builtin type "make" cannot be changed. ok 60 - Only one line of stderr for message: ack: --type-add: Builtin type "make" cannot be changed. ok 61 - Located stderr message: ack: --type-set: Builtin type "skipped" cannot be changed. ok 62 - Only one line of stderr for message: ack: --type-set: Builtin type "skipped" cannot be changed. ok 63 - Located stderr message: ack: --type-add: Builtin type "skipped" cannot be changed. ok 64 - Only one line of stderr for message: ack: --type-add: Builtin type "skipped" cannot be changed. ok 65 - Located stderr message: ack: --type-set: Builtin type "text" cannot be changed. ok 66 - Only one line of stderr for message: ack: --type-set: Builtin type "text" cannot be changed. ok 67 - Located stderr message: ack: --type-add: Builtin type "text" cannot be changed. ok 68 - Only one line of stderr for message: ack: --type-add: Builtin type "text" cannot be changed. ok 69 - Located stderr message: ack: --type-set: Builtin type "binary" cannot be changed. ok 70 - Only one line of stderr for message: ack: --type-set: Builtin type "binary" cannot be changed. ok 71 - Located stderr message: ack: --type-add: Builtin type "binary" cannot be changed. ok 72 - Only one line of stderr for message: ack: --type-add: Builtin type "binary" cannot be changed. ok 73 - Located stderr message: ack: --type-add: Type "foo" does not exist, creating with ".foo" ... ok 74 - Only one line of stderr for message: ack: --type-add: Type "foo" does not exist, creating with ".foo" ... ok t/ack-u.t ................. 1..12 ok 1 - Should have no output to stderr: ack -f t/swamp/ ok 2 - Should have no output to stderr: ack -f -u t/swamp/ ok 3 - \#emacs-workfile.pl\# found with -u in t/swamp/ ok 4 - \#emacs-workfile.pl\# not found without -u in t/swamp/ ok 5 - Should have no output to stderr: ack -f t/etc/ ok 6 - Should have no output to stderr: ack -f -u t/etc/ ok 7 - core.2112 found with -u in t/etc/ ok 8 - core.2112 not found without -u in t/etc/ ok 9 - Should have no output to stderr: ack -f t/swamp/ ok 10 - Should have no output to stderr: ack -f -u t/swamp/ ok 11 - ignore.pod found with -u in t/swamp/ ok 12 - ignore.pod not found without -u in t/swamp/ ok t/ack-v.t ................. 1..6 ok 1 - Should have no output to stderr: ack -v are -a -h -m1 t/text/boy-named-sue.txt ok 2 - First line of a file that does not contain "are". ok 3 - Should have no output to stderr: ack religion -i -a -v -l t/text ok 4 - No religion please ok 5 - Should have no output to stderr: ack religion -i -a -v -c t/text ok 6 - Non-religion counts ok t/ack-w.t ................. 1..6 ok 1 - Should have no output to stderr: ack Sue! -w -h --text t/text ok 2 - Looking for Sue! ok 3 - Should have no output to stderr: ack mu\w -w -h --text t/text ok 4 - Looking for mu\w not ok 5 - Automatically fail stderr check for TODO tests. # TODO I can't figure why the -w works from the command line, but not inside this test # Failed (TODO) test 'Automatically fail stderr check for TODO tests.' # at t/Util.pm line 59. not ok 6 - Looking for mu. # TODO I can't figure why the -w works from the command line, but not inside this test # Failed (TODO) test 'Looking for mu.' # at t/ack-w.t line 51. # +----+--------------------------------------------------------------+----+--------------------------------------------------------------+ # | Elt|Got | Elt|Expected | # +----+--------------------------------------------------------------+----+--------------------------------------------------------------+ # * 0|And he didn't leave very much for my Ma and me * | | # * 1|Well, he must have thought that it was quite a joke * | | # | 2|At an old saloon on a street of mud, | 0|At an old saloon on a street of mud, | # | 3|Kicking and a-gouging in the mud and the blood and the beer. | 1|Kicking and a-gouging in the mud and the blood and the beer. | # * 4|He kicked like a mule and he bit like a crocodile. * | | # * 5|Science and religion are not mutually exclusive * | | # +----+--------------------------------------------------------------+----+--------------------------------------------------------------+ ok t/code.t .................. 1..42 ok 1 - ack should have no embedded tabs ok 2 - ack-base should have no embedded tabs ok 3 - Ack.pm should have no embedded tabs ok 4 - t/00-load.t should have no embedded tabs ok 5 - t/ack-1.t should have no embedded tabs ok 6 - t/ack-a.t should have no embedded tabs ok 7 - t/ack-binary.t should have no embedded tabs ok 8 - t/ack-c.t should have no embedded tabs ok 9 - t/ack-color.t should have no embedded tabs ok 10 - t/ack-column.t should have no embedded tabs ok 11 - t/ack-env.t should have no embedded tabs ok 12 - t/ack-g.t should have no embedded tabs ok 13 - t/ack-group.t should have no embedded tabs ok 14 - t/ack-h.t should have no embedded tabs ok 15 - t/ack-ignore-dir.t should have no embedded tabs ok 16 - t/ack-line.t should have no embedded tabs ok 17 - t/ack-match.t should have no embedded tabs ok 18 - t/ack-o.t should have no embedded tabs ok 19 - t/ack-passthru.t should have no embedded tabs ok 20 - t/ack-print0.t should have no embedded tabs ok 21 - t/ack-text.t should have no embedded tabs ok 22 - t/ack-type.t should have no embedded tabs ok 23 - t/ack-u.t should have no embedded tabs ok 24 - t/ack-v.t should have no embedded tabs ok 25 - t/ack-w.t should have no embedded tabs ok 26 - t/code.t should have no embedded tabs ok 27 - t/command-line-files.t should have no embedded tabs ok 28 - t/context.t should have no embedded tabs ok 29 - t/encoding.t should have no embedded tabs ok 30 - t/file-permission.t should have no embedded tabs ok 31 - t/filetypes.t should have no embedded tabs ok 32 - t/illegal-regex.t should have no embedded tabs ok 33 - t/incomplete-last-line.t should have no embedded tabs ok 34 - t/interesting.t should have no embedded tabs ok 35 - t/longopts.t should have no embedded tabs ok 36 - t/module.t should have no embedded tabs ok 37 - t/multiline.t should have no embedded tabs ok 38 - t/pod.t should have no embedded tabs ok 39 - t/rc.t should have no embedded tabs ok 40 - t/standalone.t should have no embedded tabs ok 41 - t/tar.t should have no embedded tabs ok 42 - t/zero.t should have no embedded tabs ok t/command-line-files.t .... 1..6 ok 1 - Should have no output to stderr: ack notaword t/swamp ok 2 - One hit for specifying a dir ok 3 - Should have no output to stderr: ack notaword t/swamp/options.pl t/swamp/options.pl.bak ok 4 - Two hits for specifying the file ok 5 - Error if there's no file ok 6 - Find the one file that has a hit ok t/context.t ............... 1..22 ok 1 - Should have no output to stderr: ack --text -B1 left t/text/boy-named-sue.txt ok 2 - Looking for left - before ok 3 - Should have no output to stderr: ack --text -B2 laugh t/text ok 4 - Looking for laugh - before with line numbers ok 5 - Should have no output to stderr: ack --text -A2 [nN]amed Sue t/text/boy-named-sue.txt ok 6 - Looking for [nN]amed Sue - after ok 7 - Should have no output to stderr: ack --text -C giggle t/text/boy-named-sue.txt ok 8 - Looking for giggle - context defaults to 2 ok 9 - Should have no output to stderr: ack --text -1 -C giggle t/text/boy-named-sue.txt ok 10 - Looking for giggle with -1 ok 11 - Should have no output to stderr: ack --text -m3 -C1 ya t/text/boy-named-sue.txt ok 12 - Looking for ya with -m3 ok 13 - Only two lines are highlighted ok 14 - Expecting altogether 18 lines back ok 15 - Should have no output to stderr: ack --python --group -C python ok 16 - Looking for python in Python files with grouping ok 17 - Should have no output to stderr: ack --text --group -B1 --sort-files left t/text/ ok 18 - Looking for left in multiple files with grouping ok 19 - Should have no output to stderr: ack t/ -C2 -g swam.......htm ok 20 - Looking for swam.......htm - no change with -g ok 21 - Should have no output to stderr: ack the\s+\S+ --text -o -C2 t/text/boy-named-sue.txt ok 22 - Context is disabled with -o ok t/encoding.t .............. 1..1 ok 1 - ./ack has no hi-bit characters ok t/file-permission.t ....... 1..10 ok 1 - chmodded t/file-permission.t to 0000 from 100644 ok 2 - Search normal: exit code ONE for no output for GREP compatibility ok 3 - Search normal: no normal output ok 4 - Search normal: one line of stderr output ok 5 - Search normal: warning message ok ok 6 - Search normal: exit code ONE for no output for GREP compatibility ok 7 - Search normal: no normal output ok 8 - Search normal: one line of stderr output ok 9 - Search normal: warning message ok ok 10 - chmodded t/file-permission.t back to 100644 ok t/filetypes.t ............. 1..34 ok 1 - use App::Ack; ok 2 - foo.pod can be multiple things ok 3 - Bongo.pm ok 4 - Makefile.PL ok 5 - Unknown ok 6 - foo.pod can be perl ok 7 - foo.pod can be parrot ok 8 - foo.pod can be parrot ok 9 - foo.pod cannot be ruby ok 10 - foo.handler.pod can be perl ok 11 - /tmp/wango/foo.pod can be perl ok 12 - /tmp/wango/foo.handler.pod can be perl ok 13 - /tmp/blongo/makefile is a makefile ok 14 - Rakefile is a rakefile ok 15 - Makefile is a makefile ok 16 - makefile is a makefile ok 17 - GNUmakefile is a makefile ok 18 - part1.mk is a makefile ok 19 - part2.mak is a makefile ok 20 - correctly skip backup file ok 21 - correctly skip files starting and ending with hash mark ok 22 - correctly skip files named core.NNNN ok 23 - Checking t/etc/buttonhook.xml.xxx ok 24 - Checking t/etc/shebang.php.xxx ok 25 - Checking t/etc/shebang.pl.xxx ok 26 - Checking t/etc/shebang.py.xxx ok 27 - Checking t/etc/shebang.rb.xxx ok 28 - Checking t/etc/shebang.sh.xxx ok 29 - Checking t/swamp/Makefile ok 30 - Checking t/swamp/Makefile.PL ok 31 - Checking t/swamp/buttonhook.xml ok 32 - empty file returns "binary" ok 33 - file could not be identified from shebang line ok 34 - no found, so no filetype ok t/illegal-regex.t ......... 1..12 ok 1 - No STDOUT for illegal pattern ok 2 - Two lines of STDERR for illegal pattern ok 3 - Correct ack error message for illegal pattern ok 4 - Correct type of error for illegal pattern ok 5 - No STDOUT for illegal -g regex ok 6 - Two lines of STDERR for illegal -g regex ok 7 - Correct ack error message for illegal -g regex ok 8 - Correct type of error for illegal -g regex ok 9 - No STDOUT for illegal -G regex ok 10 - Two lines of STDERR for illegal -G regex ok 11 - Correct ack error message for illegal -G regex ok 12 - Correct type of error for illegal -G regex ok t/incomplete-last-line.t .. 1..2 ok 1 - Should have no output to stderr: ack last -a -h --nogroup t/swamp/incomplete-last-line.txt t/text/shut-up-be-happy.txt ok 2 - Incomplete line gets a newline appended. ok t/interesting.t ........... 1..8 ok 1 - use App::Ack; ok 2 - PERL_FILES ok 3 - PERL_FILES_GLOBBED ok 4 - PARROT_FILES_DESCEND ok 5 - PARROT_FILES_NODESCEND ok 6 - PARROT_FILES_NODESCEND_EMPTY ok 7 - PERL_FILES_BY_NAME ok 8 - BINARY_FILES ok t/longopts.t .............. 1..51 ok 1 - Should have no output to stderr: ack --help ok 2 - --help output is correct ok 3 - Found --help in usage ok 4 - Should have no output to stderr: ack --version ok 5 - --version output is correct ok 6 - Found --version in usage ok 7 - Should have no output to stderr: ack -i upper case t/swamp/options.pl ok 8 - -i works correctly for ascii ok 9 - Found -i in usage ok 10 - Should have no output to stderr: ack --ignore-case upper case t/swamp/options.pl ok 11 - --ignore-case works correctly for ascii ok 12 - Found --ignore-case in usage ok 13 - Should have no output to stderr: ack --smart-case upper case t/swamp/options.pl ok 14 - --smart-case turn on ignore-case when PATTERN has no upper ok 15 - Should have no output to stderr: ack --smart-case Upper case t/swamp/options.pl ok 16 - --smart-case does nothing when PATTERN has upper ok 17 - Found --[no]smart-case in usage ok 18 - Should have no output to stderr: ack --smart-case -i UpPer CaSe t/swamp/options.pl ok 19 - -i overrides --smart-case, forcing ignore case, even when PATTERN has upper ok 20 - Should have no output to stderr: ack -v use warnings t/swamp/options.pl ok 21 - -v works correctly ok 22 - Found -v in usage ok 23 - Should have no output to stderr: ack --invert-match use warnings t/swamp/options.pl ok 24 - --invert-match works correctly ok 25 - Found --invert-match in usage ok 26 - Should have no output to stderr: ack -w word t/swamp/options.pl ok 27 - -w ignores non-words ok 28 - -w ignores non-words ok 29 - Found -w in usage ok 30 - Should have no output to stderr: ack --word-regexp word t/swamp/options.pl ok 31 - --word-regexp ignores non-words ok 32 - --word-regexp ignores non-words ok 33 - Found --word-regexp in usage ok 34 - Should have no output to stderr: ack -Q [abc] t/swamp/options.pl ok 35 - -Q matches a literal string ok 36 - Found -Q in usage ok 37 - Should have no output to stderr: ack --literal [abc] t/swamp/options.pl ok 38 - --literal matches a literal string ok 39 - Found --literal in usage ok 40 - Should have no output to stderr: ack -l use strict t/swamp/options.pl ok 41 - -l prints matching files ok 42 - Found -l in usage ok 43 - Should have no output to stderr: ack --files-with-matches use strict t/swamp/options.pl ok 44 - --files-with-matches prints matching files ok 45 - Found --files-with-matches in usage ok 46 - Should have no output to stderr: ack -L use snorgledork t/swamp/options.pl ok 47 - -L prints matching files ok 48 - Found -L in usage ok 49 - Should have no output to stderr: ack --files-without-matches use snorgledork t/swamp/options.pl ok 50 - --files-without-matches prints matching files ok 51 - Found --files-without-matches in usage ok t/module.t ................ 1..57 ok 1 - use App::Ack; ok 2 - Copyright ok 3 - free software ok 4 - Copyright ok 5 - parrot is supported filetype ok 6 - At least 39 filetypes are supported ok 7 - Bill the Cat ok 8 - get_starting_points ok 9 - get_iterator returns CODE isa CODE ok 10 - get_starting_points ok 11 - The reference isa CODE ok 12 ok 13 - no warning ok 14 - get_starting_points ok 15 - different iterators ok 16 - The reference isa CODE ok 17 ok 18 ok 19 - no warning not ok 20 - get_starting_points # TODO remove the non-existing directory from the starting_points # Failed (TODO) test 'get_starting_points' # at t/module.t line 200. # +----+-------------+----+----------+ # | Elt|Got | Elt|Expected | # +----+-------------+----+----------+ # | 0|t/text | 0|t/text | # * 1|t/nosuchdir * | | # +----+-------------+----+----------+ ok 21 - warning ok 22 - get_starting_points ok 23 - The reference isa CODE ok 24 - XXX ok 25 - no warning ok 26 - get_starting_points ok 27 - The reference isa CODE ok 28 ok 29 - no warning ok 30 - get_starting_points ok 31 - The reference isa CODE ok 32 ok 33 - no warning ok 34 - get_starting_points ok 35 - The reference isa CODE ok 36 ok 37 - no warning ok 38 - get_starting_points ok 39 - The reference isa CODE ok 40 ok 41 - no warning ok 42 - get_starting_points ok 43 - The reference isa CODE ok 44 ok 45 - no warning ok 46 - get_starting_points ok 47 - The reference isa CODE ok 48 ok 49 - no warning ok 50 - get_starting_points ok 51 - The reference isa CODE ok 52 ok 53 - no warning ok 54 - get_starting_points ok 55 - The reference isa CODE ok 56 ok 57 - no warning ok t/multiline.t ............. 1..4 ok 1 - Should have no output to stderr: ack --text -h -i ^science t/text ok 2 - Looking for anchored science ok 3 - Should have no output to stderr: ack --text -h -i science t/text ok 4 - Looking for unanchored science ok t/pod.t ................... 1..6 ok 1 - POD test for blib/script/ack ok 2 - POD test for blib/lib/App/Ack.pm ok 3 - POD test for blib/lib/App/Ack/Repository.pm ok 4 - POD test for blib/lib/App/Ack/Plugin.pm ok 5 - POD test for blib/lib/App/Ack/Resource.pm ok 6 - POD test for blib/lib/App/Ack/Plugin/Basic.pm ok t/rc.t .................... 1..6 ok 1 - Should have no output to stderr: ack Sue! -1 -h --text t/text ok 2 - Looking for first instance of Sue! ok 3 - found Sue so good RC needed ok 4 - Should have no output to stderr: ack Pumpkin --text t/text/boy-named-sue.txt ok 5 - No Pumpkin so bad RC needed ok 6 - No Pumpkin while piping, so bad RC needed ok t/standalone.t ............ 1..5 ok 1 - exists ok 2 - readable ok 3 - executable ok 4 - Should have no output to stderr: ack ^package -h ack ok 5 - Looking for packages ok t/tar.t ................... skipped: Testing the uncompleted feature of acking through a tar file. t/zero.t .................. 1..4 ok 1 - use App::Ack; ok 2 - HANDLE_ZEROES ok 3 - Should have no output to stderr: ack -f --perl t/swamp ok 4 - DASH_F ok All tests successful. Files=39, Tests=601, 12 wallclock secs ( 0.23 usr 0.06 sys + 8.01 cusr 0.82 csys = 9.12 CPU) Result: PASS PETDANCE/ack-1.94.tar.gz make test TEST_VERBOSE=1 -- OK Andy Lester <andy@petdance.com> A grep-like program specifically for large source trees >>> (cd /home/fly818/var/cpan/build/ack-1.94-F5IKb8 && tar cvf - ack-1.94.ppd blib) | gzip -c >/home/fly818/var/REPO/P/PE/PETDANCE/ack-1.94.tar.gz ack-1.94.ppd blib/ blib/lib/ blib/lib/App/ blib/lib/App/Ack.pm blib/lib/App/Ack/ blib/lib/App/Ack/Repository.pm blib/lib/App/Ack/Plugin.pm blib/lib/App/Ack/Resource.pm blib/lib/App/Ack/Plugin/ blib/lib/App/Ack/Plugin/Basic.pm blib/script/ blib/script/ack blib/man1/ blib/man1/ack.1 >>> mv /home/fly818/var/cpan/build/ack-1.94-F5IKb8/ack-1.94.ppd /home/fly818/var/REPO/P/PE/PETDANCE Finished 2010-11-16T16:40:26