i checked out parrot r18126, ran configure, and prove
t/codingstd/perlcritic.t. many tests failed. the output is below. it'd
be great to much of this cleaned up before 0.4.11 next
tuesday--patches welcome.
~jerry
D:\usr\local\parrot\clean>prove t\codingstd\perlcritic.t
t\codingstd\perlcritic....# Perl::Critic::Bangs not installed: not testing for T
ODO items in code
# Using tools/util/perltidy.conf for Perl::Tidy settings
## Please see file perltidy.ERR
t\codingstd\perlcritic....NOK 3
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: CodeLayout::ProhibitTrailingWhitespace failed in 6 files:
# D:\usr\local\parrot\clean\config\auto\gcc.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Messages.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Options.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Distribution.pm:1.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\pod.t:1.1
# D:\usr\local\parrot\clean\t\examples\shootout.t:1.1
t\codingstd\perlcritic....NOK 4
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: CodeLayout::RequireTidyCode failed in 32 files:
# D:\usr\local\parrot\clean\Configure.pl:1.1
# D:\usr\local\parrot\clean\compilers\pirc\t\pirc.t:1.1
# D:\usr\local\parrot\clean\config\auto\gcc.pm:1.1
# D:\usr\local\parrot\clean\config\gen\makefiles.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Options.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Distribution.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\Section\C.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Utils.pm:1.1
# D:\usr\local\parrot\clean\lib\Parrot\Vtable.pm:1.1
# D:\usr\local\parrot\clean\t\codingstd\c_parens.t:1.1
# D:\usr\local\parrot\clean\t\codingstd\linelength.t:1.1
# D:\usr\local\parrot\clean\t\codingstd\perlcritic.t:1.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\pod.t:1.1
# D:\usr\local\parrot\clean\t\configure\01-options.t:1.1
# D:\usr\local\parrot\clean\t\configure\02-messages.t:1.1
# D:\usr\local\parrot\clean\t\distro\file_metadata.t:1.1
# D:\usr\local\parrot\clean\t\doc\pod.t:1.1
# D:\usr\local\parrot\clean\t\examples\shootout.t:1.1
# D:\usr\local\parrot\clean\t\op\stringu.t:1.1
# D:\usr\local\parrot\clean\t\pmc\class.t:1.1
# D:\usr\local\parrot\clean\t\pmc\exporter.t:1.1
# D:\usr\local\parrot\clean\t\pmc\iterator.t:1.1
# D:\usr\local\parrot\clean\t\pmc\namespace.t:1.1
# D:\usr\local\parrot\clean\t\pmc\pccmethod_test.t:1.1
# D:\usr\local\parrot\clean\t\stm\llqueue.t:1.1
# D:\usr\local\parrot\clean\t\stm\runtime.t:1.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\01-new.t:1.1
# D:\usr\local\parrot\clean\t\tools\pmc2cutils\05-gen_c.t:1.1
# D:\usr\local\parrot\clean\tools\dev\mk_manifest_and_skip.pl:1.1
# D:\usr\local\parrot\clean\tools\dev\ops_not_tested.pl:1.1
t\codingstd\perlcritic....NOK 5
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: CodeLayout::UseParrotCoda failed in 3 files:
# D:\usr\local\parrot\clean\t\configure\01-options.t:243.1
# D:\usr\local\parrot\clean\t\configure\02-messages.t:77.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\01-new.t:164.1
t\codingstd\perlcritic....NOK 6
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: InputOutput::ProhibitBarewordFileHandles failed in 52 files:
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:437.5
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:438.5
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:584.5
# D:\usr\local\parrot\clean\lib\Parrot\Revision.pm:43.9
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:252.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:253.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:331.5
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:30.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:52.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:74.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:97.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:146.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:178.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:214.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:251.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:309.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:347.9
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:359.9
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:362.9
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:372.9
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\file.t:374.9
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\macro.t:158.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\macro.t:177.1
# D:\usr\local\parrot\clean\t\compilers\imcc\syn\pod.t:55.1
# D:\usr\local\parrot\clean\t\examples\shootout.t:72.5
# D:\usr\local\parrot\clean\t\pmc\os.t:218.5
# D:\usr\local\parrot\clean\tools\dev\as2c.pl:53.5
# D:\usr\local\parrot\clean\tools\dev\as2c.pl:94.5
# D:\usr\local\parrot\clean\tools\dev\cc_flags.pl:35.1
# D:\usr\local\parrot\clean\tools\dev\check_source_standards.pl:59.5
# D:\usr\local\parrot\clean\tools\dev\lib_deps.pl:104.5
# D:\usr\local\parrot\clean\tools\dev\lib_deps.pl:218.9
# D:\usr\local\parrot\clean\tools\dev\mk_manifests.pl:120.5
# D:\usr\local\parrot\clean\tools\dev\parrot_api.pl:152.10
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:100.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:195.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:233.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:276.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:336.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:337.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:353.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:354.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:370.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:371.5
# D:\usr\local\parrot\clean\tools\dev\parrotbench.pl:221.1
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:38.5
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:49.5
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:61.9
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:72.9
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:127.5
# D:\usr\local\parrot\clean\tools\dev\run_indent.pl:86.5
# D:\usr\local\parrot\clean\tools\dev\symlink.pl:55.6
t\codingstd\perlcritic....NOK 7# Failed test (t\codingstd\perlcritic.t at li
ne 195)
# Policy: InputOutput::ProhibitTwoArgOpen failed in 12 files:
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:441.5
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:449.5
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:450.5
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:592.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:256.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:291.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:292.5
# D:\usr\local\parrot\clean\t\configure\01-options.t:44.1
# D:\usr\local\parrot\clean\t\pmc\os.t:218.5
# D:\usr\local\parrot\clean\t\tools\pmc2cutils\07-open_file.t:134.5
# D:\usr\local\parrot\clean\tools\dev\nm.pl:301.10
# D:\usr\local\parrot\clean\tools\dev\parrot_api.pl:178.6
t\codingstd\perlcritic....NOK 8
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: NamingConventions::ProhibitAmbiguousNames failed in 7 files:
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Data.pm:104.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\File.pm:383.13
# D:\usr\local\parrot\clean\lib\Parrot\Docs\File.pm:393.13
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:669.5
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:734.9
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:734.9
# D:\usr\local\parrot\clean\t\run\options.t:37.1
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: Subroutines::ProhibitBuiltinHomonyms failed in 8 files:
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Data.pm:164.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Directory.pm:542.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\File.pm:107.1
t\codingstd\perlcritic....NOK 9# D:\usr\local\parrot\clean\lib\Parrot\IO\File.pm
:124.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\File.pm:282.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Path.pm:212.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Path.pm:224.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:99.1
t\codingstd\perlcritic....NOK 10
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: Subroutines::ProhibitExplicitReturnUndef failed in 1 files:
# D:\usr\local\parrot\clean\tools\dev\extract_file_descriptions.pl:256.5
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: Subroutines::ProhibitSubroutinePrototypes failed in 19 files:
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Data.pm:178.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Directory.pm:187.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Directory.pm:201.1
t\codingstd\perlcritic....NOK 11# D:\usr\local\parrot\clean\lib\Parrot\IO\Direct
ory.pm:213.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Library.pm:61.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Library.pm:155.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:117.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:118.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:119.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:122.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:130.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:137.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\UtilFunctions.pm:152.1
# D:\usr\local\parrot\clean\lib\Parrot\Test\APL.pm:23.1
# D:\usr\local\parrot\clean\lib\Parrot\Test\Cardinal.pm:23.1
# D:\usr\local\parrot\clean\t\compilers\imcc\imcpasm\optc.t:310.1
# D:\usr\local\parrot\clean\t\tools\smartlinks.t:38.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-client.pl:10.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-client.pl:87.5
t\codingstd\perlcritic....NOK 12
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: Subroutines::RequireFinalReturn failed in 222 files:
# D:\usr\local\parrot\clean\config\auto\cpu\i386\auto.pm:21.1
# D:\usr\local\parrot\clean\config\auto\cpu\ppc\auto.pm:21.1
# D:\usr\local\parrot\clean\config\auto\cpu\sun4\auto.pm:37.1
# D:\usr\local\parrot\clean\config\auto\cpu\sun4\auto.pm:42.1
# D:\usr\local\parrot\clean\config\auto\cpu\x86_64\auto.pm:19.1
# D:\usr\local\parrot\clean\config\gen\cpu\i386\auto.pm:24.1
# D:\usr\local\parrot\clean\config\gen\cpu\x86_64\auto.pm:17.1
# D:\usr\local\parrot\clean\config\gen\makefiles.pm:35.1
# D:\usr\local\parrot\clean\config\gen\makefiles.pm:59.1
# D:\usr\local\parrot\clean\config\init\hints\aix.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\cygwin.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\darwin.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\dec_osf.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\freebsd.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\hpux.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\irix.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\linux.pm:11.1
# D:\usr\local\parrot\clean\config\init\hints\mswin32.pm:10.1
# D:\usr\local\parrot\clean\config\init\hints\msys.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\netbsd.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\openbsd.pm:10.1
# D:\usr\local\parrot\clean\config\init\hints\os2.pm:9.1
# D:\usr\local\parrot\clean\config\init\hints\solaris.pm:11.1
# D:\usr\local\parrot\clean\config\init\hints\vms.pm:9.1
# D:\usr\local\parrot\clean\config\inter\pmc.pm:74.1
# D:\usr\local\parrot\clean\examples\benchmarks\mops.pl:41.1
# D:\usr\local\parrot\clean\examples\benchmarks\oo5.pl:19.1
# D:\usr\local\parrot\clean\examples\benchmarks\oo5.pl:25.1
# D:\usr\local\parrot\clean\examples\benchmarks\oo6.pl:19.1
# D:\usr\local\parrot\clean\examples\benchmarks\oo6.pl:25.1
# D:\usr\local\parrot\clean\examples\benchmarks\oofib.pl:22.1
# D:\usr\local\parrot\clean\examples\benchmarks\overload.pl:8.1
# D:\usr\local\parrot\clean\examples\benchmarks\overload.pl:13.1
# D:\usr\local\parrot\clean\examples\mops\mops.pl:42.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure.pm:208.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure.pm:221.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Data.pm:178.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Messages.pm:14.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Messages.pm:30.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Options.pm:66.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Options.pm:72.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:154.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:246.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:474.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:490.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:568.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step\Base.pm:102.1
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step\Base.pm:120.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\File.pm:215.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\HTMLPage.pm:36.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\HTMLPage.pm:81.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\Item.pm:96.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:108.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:139.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:162.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:216.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:257.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:303.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:324.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:351.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:391.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\POD2HTML.pm:560.1
# D:\usr\local\parrot\clean\lib\Parrot\Docs\Section\Parrot.pm:92.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Capture\Mini.pm:7.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Capture\Mini.pm:12.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Directory.pm:542.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Directory.pm:560.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\File.pm:124.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\File.pm:143.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\File.pm:282.1
# D:\usr\local\parrot\clean\lib\Parrot\IO\Path.pm:224.1
# D:\usr\local\parrot\clean\lib\Parrot\OpTrans\CGoto.pm:85.1
# D:\usr\local\parrot\clean\lib\Parrot\OpTrans\CGoto.pm:104.1
# D:\usr\local\parrot\clean\lib\Parrot\OpTrans\Compiled.pm:52.1
# D:\usr\local\parrot\clean\lib\Parrot\OpTrans\Compiled.pm:71.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:298.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:314.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:326.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:409.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:426.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:437.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:450.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:512.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:552.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:653.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:687.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:771.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:894.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:921.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2c\Utils.pm:956.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2pm\Utils.pm:163.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2pm\Utils.pm:388.1
# D:\usr\local\parrot\clean\lib\Parrot\Ops2pm\Utils.pm:437.1
# D:\usr\local\parrot\clean\lib\Parrot\OpsFile.pm:425.1
# D:\usr\local\parrot\clean\lib\Parrot\OpsFile.pm:662.1
# D:\usr\local\parrot\clean\lib\Parrot\OpsFile.pm:732.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:53.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:209.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:227.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:243.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:331.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:861.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:1091.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:1123.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c.pm:1156.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Library.pm:61.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Library.pm:88.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Library.pm:155.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Null.pm:20.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:262.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:444.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\PCCMETHOD.pm:448.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\StandardConst.pm:26.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\StandardRO.pm:39.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\StmRef.pm:10.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\UtilFunctions.pm:52.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\UtilFunctions.pm:76.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\UtilFunctions.pm:152.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\Utils.pm:69.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\deleg_pmc.pm:15.1
# D:\usr\local\parrot\clean\lib\Parrot\Pmc2c\delegate.pm:19.1
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:217.1
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:340.1
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:361.1
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:826.1
# D:\usr\local\parrot\clean\lib\Parrot\Test\Harness.pm:58.1
# D:\usr\local\parrot\clean\lib\Parrot\Test\Harness.pm:111.1
# D:\usr\local\parrot\clean\lib\Parrot\Test\Perl6.pm:84.1
# D:\usr\local\parrot\clean\lib\Parrot\Test\Perl6.pm:99.1
# D:\usr\local\parrot\clean\lib\Parrot\Vtable.pm:194.1
# D:\usr\local\parrot\clean\t\codingstd\c_indent.t:47.1
# D:\usr\local\parrot\clean\t\codingstd\c_parens.t:52.1
# D:\usr\local\parrot\clean\t\codingstd\cppcomments.t:39.1
# D:\usr\local\parrot\clean\t\compilers\imcc\imcpasm\optc.t:310.1
# D:\usr\local\parrot\clean\t\compilers\pge\03-optable.t:84.1
# D:\usr\local\parrot\clean\t\compilers\pge\pge.t:58.1
# D:\usr\local\parrot\clean\t\configure\config_steps.t:28.1
# D:\usr\local\parrot\clean\t\distro\test_file_coverage.t:71.1
# D:\usr\local\parrot\clean\t\doc\opcode-doc.t:35.1
# D:\usr\local\parrot\clean\t\doc\opcode-doc.t:59.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:97.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:98.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:99.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:101.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:115.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:133.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:148.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:162.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:176.1
# D:\usr\local\parrot\clean\t\op\cc_params.t:186.1
# D:\usr\local\parrot\clean\t\op\cc_state.t:97.1
# D:\usr\local\parrot\clean\t\op\cc_state.t:104.1
# D:\usr\local\parrot\clean\t\op\string_cclass.t:310.1
# D:\usr\local\parrot\clean\t\perl\Parrot_Docs.t:140.1
# D:\usr\local\parrot\clean\t\perl\Parrot_IO.t:183.1
# D:\usr\local\parrot\clean\t\pmc\bignum.t:270.1
# D:\usr\local\parrot\clean\t\pmc\io.t:25.1
# D:\usr\local\parrot\clean\t\pmc\signal.t:52.1
# D:\usr\local\parrot\clean\t\pmc\signal.t:56.1
# D:\usr\local\parrot\clean\t\pmc\signal.t:80.1
# D:\usr\local\parrot\clean\t\run\exit.t:36.1
# D:\usr\local\parrot\clean\t\src\io.t:29.1
# D:\usr\local\parrot\clean\t\src\io.t:41.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\01-new.t:147.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\03-print_c_header_file.t:77.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\04-print_c_source_top.t:61.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\05-print_c_source_bottom.t:64.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\06-dynamic.t:102.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\07-make_incdir.t:103.1
# D:\usr\local\parrot\clean\t\tools\ops2cutils\09-dynamic_nolines.t:72.1
# D:\usr\local\parrot\clean\t\tools\pbc_merge.t:39.1
# D:\usr\local\parrot\clean\t\tools\pbc_merge.t:50.1
# D:\usr\local\parrot\clean\t\tools\pmc2c.t:36.1
# D:\usr\local\parrot\clean\t\tools\smartlinks.t:38.1
# D:\usr\local\parrot\clean\tools\dev\as2c.pl:19.1
# D:\usr\local\parrot\clean\tools\dev\as2c.pl:32.1
# D:\usr\local\parrot\clean\tools\dev\as2c.pl:51.1
# D:\usr\local\parrot\clean\tools\dev\as2c.pl:92.1
# D:\usr\local\parrot\clean\tools\dev\check_source_standards.pl:58.1
# D:\usr\local\parrot\clean\tools\dev\check_source_standards.pl:104.1
# D:\usr\local\parrot\clean\tools\dev\check_source_standards.pl:110.1
# D:\usr\local\parrot\clean\tools\dev\check_source_standards.pl:116.1
# D:\usr\local\parrot\clean\tools\dev\gen_charset_tables.pl:94.1
# D:\usr\local\parrot\clean\tools\dev\lib_deps.pl:79.1
# D:\usr\local\parrot\clean\tools\dev\lib_deps.pl:216.1
# D:\usr\local\parrot\clean\tools\dev\nm.pl:160.1
# D:\usr\local\parrot\clean\tools\dev\nm.pl:164.1
# D:\usr\local\parrot\clean\tools\dev\nm.pl:271.1
# D:\usr\local\parrot\clean\tools\dev\nm.pl:377.17
# D:\usr\local\parrot\clean\tools\dev\ops_not_tested.pl:76.1
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:193.1
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:230.1
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:273.1
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:324.1
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:387.5
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:428.1
# D:\usr\local\parrot\clean\tools\dev\parrot_coverage.pl:442.1
# D:\usr\local\parrot\clean\tools\dev\parrotbench.pl:255.1
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:47.1
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:56.1
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:70.1
# D:\usr\local\parrot\clean\tools\dev\pbc_header.pl:86.1
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:72.1
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:85.1
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:96.1
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:106.1
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:114.1
# D:\usr\local\parrot\clean\tools\dev\rebuild_miniparrot.pl:151.1
# D:\usr\local\parrot\clean\tools\util\ncidef2pasm.pl:197.1
# D:\usr\local\parrot\clean\tools\util\ncidef2pasm.pl:209.1
# D:\usr\local\parrot\clean\tools\util\ncidef2pasm.pl:214.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-client.pl:87.5
# D:\usr\local\parrot\clean\tools\util\smokeserv-client.pl:97.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:70.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:104.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:112.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:120.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:171.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:199.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:246.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:324.1
# D:\usr\local\parrot\clean\tools\util\smokeserv-server.pl:349.1
# Failed test (t\codingstd\perlcritic.t at line 195)
# Policy: Variables::ProhibitConditionalDeclarations failed in 8 files:
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:433.5
# D:\usr\local\parrot\clean\lib\Parrot\Configure\Step.pm:434.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:248.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:249.5
# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:513.13
t\codingstd\perlcritic....NOK 18# D:\usr\local\parrot\clean\lib\Parrot\Test.pm:5
91.13
# D:\usr\local\parrot\clean\lib\Parrot\Test\Harness.pm:125.5
# D:\usr\local\parrot\clean\lib\Parrot\Test\Perl6.pm:136.13
# Looks like you failed 11 tests of 18.
t\codingstd\perlcritic....dubious
Test returned status 11 (wstat 2816, 0xb00)
DIED. FAILED tests 3-12, 18
Failed 11/18 tests, 38.89% okay
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t\codingstd\perlcritic.t 11 2816 18 11 61.11% 3-12 18
Failed 1/1 test scripts, 0.00% okay. 11/18 subtests failed, 38.89% okay.
let me start with a side point, sorry for the early tangent. why isn't
perlcritic.t using a Getopt:: module--it should be. that'd be a good
cage task, and would make one of my suggestions easier to implement.
arranging the %policies as a HoH would make it easier to add groupings
as we please. something like:
my %policies = ( default => { ... }, extra => { ... }, );
have one flag to select which group of policies to run. the special
value 'all' would run all groups. 'default' would be the default. for
example:
perl t/codingstd/perlcritic.t --group=extra
i should have started with this: it's a good idea. the set of perl
coding standard tests that should be passing consistently should be
run by default. and we should not have false positives (tests expected
to fail) in the trunk for any length of time, as it makes spotting
real bugs harder to do. this patch correctly addresses both those
points.
~jerry
> let me start with a side point, sorry for the early tangent. why isn't
> perlcritic.t using a Getopt:: module--it should be. that'd be a good
> cage task, and would make one of my suggestions easier to implement.
As discussed on #parrot, this was already a TODO ticket and Getopt
argument parsing has been implemented as of r19319.
> arranging the %policies as a HoH would make it easier to add groupings
> as we please. something like:
> my %policies = ( default => { ... }, extra => { ... }, );
>
> have one flag to select which group of policies to run. the special
> value 'all' would run all groups. 'default' would be the default. for
> example:
> perl t/codingstd/perlcritic.t --group=extra
I've implemented the --group command line argument, but I decided it
was easier to implement separate hashes for 'default' and 'extra'
policies. It is then simple to create a general hash for specifying
which policies need to be processed in any given run. See r19332 for
more details. If you think my implementation can be improved, please
say! I'm always up to learn more :-)
Thanks for the feedback! It helps me sharpen my perl skills.
Paul
The PerlCritic test seems to try to test nqp and perl6 .pl files as well; this causes false negatives.
perlcritic is passing all tests at the moment. Added back to the set of
default tests run in r26591. Closing ticket.
I'm re-opening this ticket due to problems I have experienced since
r26591 with t/codingstd/perlcritic.t on two different OSes.
t/codingstd/perlcritic.t is failing to detect the presence of a
sufficiently recent (>=1.03) Perl::Critic on *both* my ppc-darwin (OS X
10.4) iBook and my 386-linux-debian server. Moreover, on darwin the
failure to detect Perl::Critic is generating noisy warnings.
Linux:
$ perldoc -m Perl::Critic
##############################################################################
# $URL:
http://perlcritic.tigris.org/svn/perlcritic/branches/Perl-Critic-1.
073/lib/Perl/Critic.pm $
# $Date: 2007-09-15 09:36:06 -0500 (Sat, 15 Sep 2007) $
from 'make test' log at r26707 (2008-04-02):
t/codingstd/pccmethod_deps.....................ok
t/codingstd/perlcritic.........................skipped: Perl::Critic not
installed
t/codingstd/pir_code_coda......................ok
Darwin:
$ perldoc -m Perl::Critic
##############################################################################
# $URL:
http://perlcritic.tigris.org/svn/perlcritic/tags/Perl-Critic-1.053/
lib/Perl/Critic.pm $
from 'make test' log r26689 on 2008-04-01:
t/codingstd/perlcritic.........................Couldn't require
Perl::Critic::Policy::CodeLayout::RequireConsistentNewlines : Can't
locate Clone.pm in @INC (@INC contains:
[skip @INC listings]
skipped: Perl::Critic not installed
On Darwin, searching for the nonfeasant Clone.pm, I get:
[perl6] 568 $ locate Clone.pm
/usr/local/lib/perl5/site_perl/5.8.8/darwin-2level/Clone.pm
... but I find no reference to Clone.pm in the relevant Perl::Critic module.
$ grep -n Clone
/usr/local/lib/perl5/site_perl/5.8.8/Perl/Critic/Policy/CodeLayout/RequireConsi
stentNewlines.pm
... nada.
Perhaps t/codingstd/perlcritic.t is not yet really ready for prime time?
kid51
Can you try upgrading to Perl::Critic 1.082 (cpan-latest) and see if that works for you?
This is very strange. On Linux, at r26853, with Perl::Critic $VERSION =
'1.082', calling 'make test', I get:
t/codingstd/perlcritic.........................skipped: Perl::Critic not
installed
But if I try to run the test directly, Perl::Critic is successfully located:
$ prove t/codingstd/perlcritic.t
t/codingstd/perlcritic......ok
All tests successful.
Files=1, Tests=15, 28 wallclock secs ( 0.02 usr 0.00 sys + 23.64 cusr
0.10 csys = 23.76 CPU)
Result: PASS
Similar results on Darwin:
$ prove t/codingstd/perlcritic.t
t/codingstd/perlcritic......# Perl::Critic::Bangs not installed: not
testing for TODO items in code
t/codingstd/perlcritic......ok
All tests successful.
Files=1, Tests=14, 138 wallclock secs ( 0.03 usr 0.02 sys + 113.64 cusr
2.48 csys = 116.17 CPU)
Result: PASS
So why is 'make test' failing to find Perl::Critic when 'prove' does so
handily?
kid51
$ perl t/harness t/codingstd/perlcritic.t
t/codingstd/perlcritic......ok
All tests successful.
Files=1, Tests=15, 29 wallclock secs ( 0.00 usr 0.00 sys + 24.11 cusr
0.11 csys = 24.22 CPU)
Result: PASS
... which makes the 'make test' failure even weirder, since 'make test'
is nothing more than a 't/harness' call with specified args. Cf.
config/gen/makefiles/root.in:
test : test_prep
$(PERL) t/harness $(EXTRA_TEST_ARGS) $(PARROT_ARGS)
+ use Data::Dumper;$Data::Dumper::Indent=1;
BEGIN {
+ print STDERR Dumper [ @INC ];
eval { require Perl::Critic };
if ($@) {
plan skip_all => 'Perl::Critic not installed';
}
my $required_version = 1.03;
if ( $Perl::Critic::VERSION < $required_version ) {
plan skip_all => "Perl::Critic v$required_version required,
v$Perl::Critic::VERSION found";
}
}
Output from 'make test':
t/codingstd/perlcritic.........................$VAR1 = [
'.',
'lib',
'../lib',
'../../lib',
'/usr/local/lib/perl5/5.10.0/i686-linux',
'/usr/local/lib/perl5/5.10.0',
'/usr/local/lib/perl5/site_perl/5.10.0/i686-linux',
'/usr/local/lib/perl5/site_perl/5.10.0',
'/usr/local/lib/perl5/site_perl/5.8.7',
'/usr/local/lib/perl5/site_perl'
];
t/codingstd/perlcritic.........................ok
$ fnsa t/ '*.t' | xargs grep -n 'eval.*require'
t//codingstd/perlcritic.t:19: eval { require Perl::Critic };
t//codingstd/perlcritic.t:156: eval { require Perl::Critic::Bangs; };
t//codingstd/perlcritic.t:180: eval { require Perl::Tidy; };
t//tools/smartlinks.t:34: eval { require Moose };
... and when I run 'make test' I get this for t/tools/smartlinks.t:
[li11-226:parrot] 511 $ grep -n smartlinks make.test.log
557:t/tools/smartlinks.............................skipped: Moose not
installed
>
> ... and when I run 'make test' I get this for t/tools/smartlinks.t:
>
> [li11-226:parrot] 511 $ grep -n smartlinks make.test.log
> 557:t/tools/smartlinks.............................skipped: Moose not
> installed
But this was a scarlet herring. I actually do not have Moose installed.
It looks like perlcritic.t is still in the list of codingstd tests to
run by default: Jim, have you had any further trouble with this test?
>
> It looks like perlcritic.t is still in the list of codingstd tests to
> run by default: Jim, have you had any further trouble with this test?
No, the problems have cleared up -- although I am stumped as to why/how?
Checking my test logs, on my Linux server I got:
./20080408.26853.parrot.test.txt.gz:606:t/codingstd/perlcritic.........................skipped:
Perl::Critic not installed
./20080410.26901.parrot.test.txt.gz:608:t/codingstd/perlcritic.........................ok
... which suggests something got fixed between April 08 and 10. But on
my Mac I got:
20080402.26707.parrot.test.txt:605:t/codingstd/perlcritic.......................
..Couldn't require
Perl::Critic::Policy::CodeLayout::RequireConsistentNewlines :
Can't locate Clone.pm in @INC (@INC contains: . lib ../lib ../../lib
/usr/local
/lib/perl5/5.10.0/darwin-2level /usr/local/lib/perl5/5.10.0
/usr/local/lib/perl5
/site_perl/5.10.0/darwin-2level /usr/local/lib/perl5/site_perl/5.10.0
/usr/local
/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl/5.8.7
/usr/local/lib/p
erl5/site_perl/5.8.4 /usr/local/lib/perl5/site_perl) at
/usr/local/lib/perl5/sit
e_perl/5.8.8/PPI/Element.pm line 29.
20080415.26991.parrot.test.2.txt:666:t/codingstd/perlcritic.....................
..skipped
20080417.27021.parrot.test.txt:666:t/codingstd/perlcritic.......................
skipped
20080419.27043.parrot.test.txt:669:t/codingstd/perlcritic.......................
skipped
20080420.27056.parrot.test.txt:671:t/codingstd/perlcritic.......................
skipped
20080426.27185.renamemethod.test.txt:673:t/codingstd/perlcritic.................
......skipped
20080505.27328.parrot.test.txt:623:t/codingstd/perlcritic.......................
..# Perl::Critic::Bangs not installed: not testing for TODO items in code
... which suggests that things didn't get fixed until sometime between
Apr 26 and May 05!
Weird! But I see no impediment to closing this ticket. Thanks.