cpan Perl-Critic 1.080

latest releases: 1.156, 1.154, 1.152...
17 years ago

[New Features]

  • Allow a "## no critic" statement after a shebang on line 1 of a
    file. This allows users to block violations that apply to
    whole files and still allow shebangs.

[New Policies - funded by a Perl Foundation grant]

  • InputOutput::ProhibitExplicitStdin
  • RegularExpressions::ProhibitFixedStringMatches
  • RegularExpressions::RequireBracesForMultiline
  • RegularExpressions::ProhibitUnusualDelimiters
  • RegularExpressions::ProhibitUnusedCapture
  • RegularExpressions::ProhibitComplexRegexes
  • RegularExpressions::ProhibitSingleCharAlternation
  • RegularExpressions::ProhibitEscapedMetacharacters
  • RegularExpressions::ProhibitEnumeratedClasses
  • InputOutput::RequireBriefOpen
  • InputOutput::RequireCheckedSyscalls

[Other New Policies]

  • ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions

[Policy Changes]

  • Variables::ProhibitConditionalDeclarations now permits you to local-ize
    variables in conditional declarations. This makes sense, since
    C is actually a variable modifier, rather than a declaration.
    Thanks to David Golden for reporting this.

[New Developer Features]

  • Perl::Critic::Utils::PPIRegexp encapsulates interaction with
    the PPI Regexp token classes. Those classes have very sparse
    APIs, so this package hides away the ugly fiddling with PPI
    internals.
  • Added a new optional_modules parameter for the .run syntax.

[Bug Fixes]

[Internals]

  • Removed all use of Carp in favor of exceptions.

[Prerequisites]

  • Now requires PPI 1.201. A number of workarounds for PPI bugs have been
    removed.
  • New dependency upon Exception::Class.

[Installation]

  • Use Devel::CheckOS to see whether Perl::Critic is being installed on
    a Solaris system and warn about tar(1) chopping file names off if it
    is.

Don't miss a new Perl-Critic release

NewReleases is sending notifications on new releases.