./devel/p5-Perl-Critic, Perl 5 module providing a static Perl source code analysis engine

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.152, Package name: p5-Perl-Critic-1.152, Maintainer: pkgsrc-users

The Perl 5 module Perl::Critic is an extensible framework for
creating and applying coding standards to Perl source code.

Essentially, it is a static source code analysis engine. Perl::Critic
is distributed with a number of Perl::Critic::Policy modules that
attempt to enforce various coding guidelines. Most Policy modules
are based on Damian Conway's book Perl Best Practices. However,
Perl::Critic is not limited to PBP and will even support Policies
that contradict Conway. You can enable, disable, and customize
those Polices through the Perl::Critic interface. You can also
create new Policy modules that suit your own tastes.
A front-end script, perlcritic, is provided.


Required to run:
[lang/perl5] [devel/p5-Task-Weaken] [devel/p5-Exception-Class] [devel/p5-Config-Tiny] [devel/p5-List-MoreUtils] [devel/p5-Module-Pluggable] [devel/p5-String-Format] [devel/p5-IO-String] [devel/p5-B-Keywords] [devel/p5-Perl-Tidy] [devel/p5-PPI] [devel/p5-Readonly-XS] [devel/p5-Readonly] [devel/p5-File-Which] [textproc/p5-Pod-Spell] [devel/p5-PPIx-Regexp] [devel/p5-PPIx-Utilities] [textproc/p5-PPIx-QuoteLike]

Required to build:
[devel/p5-Module-Build] [pkgtools/cwrappers]

Master sites: (Expand)

Filesize: 646.9 KB

Version history: (Expand)


CVS history: (Expand)


   2023-12-19 13:25:23 by Makoto Fujiwara | Files touched by this commit (2)
Log message:
(devel/p5-Perl-Critic) Updated 1.150 to 1.152

1.152 Mon Oct 16 10:32:04 PM CDT 2023

    Now requires PPI 1.177.

    [Fixes]
    Fix a test failure for Subroutines::RequireArgUnpacking. Thanks, Christian
    Walde. (GH #1048)

    Fixed a test failure in t/06_violation.t on Perl 5.39.1 or above. Thanks,
    Yves Orton. (GH #1037)
   2023-07-06 11:43:03 by Thomas Klausner | Files touched by this commit (2483)
Log message:
*: recursive bump for perl 5.38
   2023-04-30 00:39:06 by Wen Heping | Files touched by this commit (2)
Log message:
Update to 1.150
Update DEPENDS

Upstream changes:
1.150 Sat Mar  4 21:17:45 CST 2023

    [Enhancements]
    Added Test::Builder and Text::Wrap to the list of default exceptions in
    Variables::ProhibitPackageVars. Thanks, Graham Knop. (GH #1025)

    [Internals]
    We now use PPIx::Utils instead of PPIx::Utilities, which is more recently
    maintained.
   2023-01-08 01:22:27 by Wen Heping | Files touched by this commit (2)
Log message:
Update to 1.148
Update DEPENDS

Upstream changes:
1.148 Sat Jan  7 15:20:07 CST 2023

    [Possible breakage]
    Removed Perl::Critic::Utils::DataConversion. Any add-on policies that used
    it will need to copy the functions from there into their own code.

    [Documentation]
    ProhibitCascadingIfElse no longer suggests using given/when.

    [Internals]
    We no longer require Test::Deep for testing.

    Test::Kwalitee is now only recommended, not required.

    Random microoptimizations, like using hashes for array contents checking,
    and using any() instead of calling grep as a boolean.

1.146 Wed Dec 21 21:05:20 CST 2022

    [New features]
    ProhibitBarewordDirHandles now checks for sysopen as well as open. Thanks,
    Tadeusz Sośnierz. (GH #732)

    Added a Dockerfile in the extras/ directory for those who want to run P::C
    in a container. Thanks, Isaac Gittins. (GH #832)

    Subroutines::ProhibitBuiltinHomonyms now can take an "allows" \ 
parameter to
    specify subroutines that won't violate the policy. Thanks, UTAGAWA Kiki.
    (GH #14, #932)

    ProhibitStringyEval now allows package declarations in evals when
    allow_includes = true. This is a common way packages are declared.
    Thanks, Chris Novakovic. (GH #908)

    [Bug Fixes]
    Fixed some problems with how Perl::Critic determined scope. Thanks, Tom
    Wyant. (GH #793)

    Fixed improper violation for lexical subroutines in
    Subroutines::ProhibitBuiltinHomonyms. Thanks, TOYAMA Nao. (GH #973, #955,
    #546)

    ValuesAndExpressions::RequireNumberSeparators no longer complains if your
    version numbers do not have number separators in them. Thanks, Tom Wyant.
    (GH #856, #904)

    Fixed a false positive with split() in ProhibitUnusedCapture. Thanks, Tom
    Wyant. (GH #888)

    [Internals]
    We no longer use or need IO::String. Thanks, Graham Knop. (GH #997)

    Removed requirements and mentions of modules no longer used:
    * Fatal
    * IO::String
    * IPC::Open2
    * Pod::Parser
    * Task::Weaken

1.144 Mon Dec  5 09:44:04 PM CST 2022

    Perl::Critic now requires Perl 5.10.1.

    [New features]
    The ProhibitAugmentedAssignmentInDeclaration policy now allows augmented
    assignments to "our" variables, if the allow_our option is enabled.
    Thanks, Graham Knop. (GH #993)

    ProhibitExplicitISA now recommends "use parent" instead of \ 
"use base".
    (GH #987)

    RequireUseWarnings now recognizes that "use v5.36" implies warnings.
    Thanks, Andrew Grechkin. (GH #984)

    Subroutines::ProhibitNestedSubs now allows lexical subroutines can
    now be inside of other subroutines. Thanks, TOYAMA Nao. (GH #946,
    #971, #972)

    RequireUseStrict now knows that Test::Spec enables it. (GH #906)

    ProhibitUnusedCapture now understands @{^CAPTURE} and %{^CAPTURE_ALL} that
    were added in Perl 5.26.0. Thanks, Tom Wyant. (GH #778)

    Allow numeric operators on special number strings 'NaN' and 'inf'. Thanks,
    Omer Gazit. (GH #803)

    [Fixes]
    Miscellanea::ProhibitUselessNoCritic no longer filters out errors about
    itself, just as Miscellanea::ProhibitUnrestrictedNoCritic cannot. Thanks,
    Bernhard Schmalhofer. (GH #939)

    Fixed GH #878: bareword filehandle dies on `open(CHECK, '/foo');`. Thanks,
    Tom Wyant.

    [Internals]
    Updated to using Perl 5.10.1. Starting migrating to Perl 5.10-isms like
    defined-or. Thanks, James Raspass.

    [Documentation]
    Updated some outdated docs in Perl::Critic::Utils. Thanks, Slaven Rezić.
    (GH #951)

1.142 Mon Nov 28 08:12:14 PM CST 2022

    This is the last version of Perl::Critic that will run on Perl 5.6.1.  The
    next release will require Perl 5.10.1.

    [New Features]
    Add new policy InputOutput::ProhibitBarewordDirHandles, comparable to
    ProhibitBarewordFilehanles.  Thanks, raf. (GH #912)

    References::ProhibitDoubleSigils policy now allows for Perl's
    postfix dereference syntax and does not report a policy violation.
    Thanks to Ilya Rassadin (GH #578)

    Added Test::Class::Moose and MooseX::MethodAttributes::Role to the
    list of modules that are equivalent to "use strict".  (GH #808, GH \ 
#886)

    Subroutines::RequireArgUnpacking now detects anonymous subroutines with
    attributes, prototypes or signatures.  Thanks, Tom Wyant. (GH #684)

    ProhibitVoidMap and ProhibitVoidGrep now detect void context inside subs,
    such as:

        sub { map { foo($_) } @list; return }

    Thanks, James Raspass. (GH #905)

    RequireArgUnpacking now allows a closure to be recognized as a way that
    subroutine arguments can be unpacked.  This is specified with an optional
    allow_closures configuration option.  Thanks, Tom Wyant. (GH #737)

    ProhibitTwoArgOpen now disallows one-arg opens as well. Also, it
    no longer allows two-arg opening of STDIN/STDOUT/STDERR.  Thanks,
    Dan Book. (GH #652, #653)

    [Fixes]
    ProhibitLeadingZeros would not handle sysopen and lexical variables
    correctly. This has been fixed. Thanks, Tom Wyant. (GH #789)

    [Documentation]
    We note that the any() function is available in both List::MoreUtils and
    List::SomeUtils.

    Added instructions to perlcritic on how to integrate with Visual Studio
    Code.  Thanks, sigzero.

    [Internals]
    Switch to using List::SomeUtils instead of List::MoreUtils.
   2022-06-28 13:38:00 by Thomas Klausner | Files touched by this commit (3952)
Log message:
*: recursive bump for perl 5.36
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2021-07-28 09:13:33 by Wen Heping | Files touched by this commit (2)
Log message:
Update to 1.140

Upstream changes:
1.140 Tue Mar 23 21:42:19 CDT 2021

    [New Features]
    Subroutines::RequireFinalReturn now lets you specify a
    terminal_methods parameter to specify methods that should been as
    terminal.  This is like the terminal_funcs parameter, but for methods.
    Thanks, Robin Smidsrød and Mike Bruins. (GH #920)

1.139_01 Tue Sep  1 23:52:18 CDT 2020

    [Fixes]
    Removed an extra /x in RequireInterpolationOfMetachars.pm that caused
    deprecation warnings in Perl 5.22 and higher.  (GH #822)

    Documentation::RequirePackageMatchesPodName now recognizes the package
    name if it's in C<< I<> >> or C<< B<> >> \ 
markup.  Thanks, Renée Bäcker.
    (GH #913)