CPAN-Changes
view release on metacpan or search on metacpan
corpus/dists/Perl-Critic.changes view on Meta::CPAN
* CodeLayout::ProhibitParensWithBuiltins now allows 'state ($foo)'. RT
#52029
* ErrorHandling::RequireCarping now has an
allow_in_main_if_not_in_subroutine option to allow "die" directly in
the default namespace.
* InputOutput::RequireBriefOpen now recognizes CORE::open(),
CORE::close(), CORE::GLOBAL::open(), and CORE::GLOBAL::close(). RT
#52391
* Modules::ProhibitEvilModules now complains by default about the modules
deprecated by the Perl 5 Porters in 5.12.
* Modules::RequireVersionVar documentation updated to make clear that "my
$VERSION" does not work as a module version declaration. RT #56667
* The RegularExpressions::* policies have been converted from using
Regexp::Parser to using PPIx::Regexp for their heavy lifting.
* RegularExpressions::ProhibitCaptureWithoutTest now allows capture
variables inside when() {}. RT #36081.
* RegularExpressions::ProhibitUnusedCapture now checks for unused named
captures.
* Subroutines::ProhibitManyArgs revised to count only characters in the
prototype that represent arguments. RT #56627
* Subroutines::ProhibitNestedSubs no longer complains about scheduled
blocks (BEGIN, etc.) inside subroutines and vice versa.
* Subroutines::RequireFinalReturn should now understand a final given/when
statement, and declare an error if there is no 'default' block or if any
branch does not return.
* TestingAndDebugging::RequireUseStrict now accepts 'use 5.011' or greater
as equivalent to 'use strict'.
* ValuesAndExpressions::ProhibitMismatchedOperators false positive with
"'foo' x 15 . 'bar'". RT #54524
* Variables::ProhibitPunctuationVars gave false positives on qr// regexp's
ending in '$'. RT #55604
Bug Fixes:
* The "## no critic" annotations now respect #line directives.
* Annotations on statements spanning more than one line (e.g.
my $foo =
'$bar'; ## no critic (RequireInterpolationOfMetachars)
) are now handled as single-line annotations, not block annotations.
* All instances of L<Foo> in the POD have been changed to L<Foo|Foo>.
L</bar> and L<Foo/bar> were allowed to stand. RT #37485
* Spaces are now allowed immediately inside the enclosing parentheses in
"## no critic ( Foo )". RT #52038
* With the introduction of PPIx::Regexp, Perl::Critic no longer dies
when it encounters a Perl 5.010 regexp. RT #49442.
* DEVELOPER.pod typo in link to
ValuesAndExpressions::ProhibitConstantPragma policy. RT #57818
* Spelling errors in documentation. RT #57375
* "die" used instead of "croak". RT #56619
* Fixed regex test that caused test failures on every Perl 5.11
(credit Tom Wyant).
* t/20_policy_pod_spelling.t now works (or at least no longer fails)
in non-English locales (again). RT #43291 and RT #48986.
* Perldoc hae broken link for McCabe score definition. RT #53219
* RT #33935 and #49679 were fixed by upgrading to PPI 1.208
Other Changes:
* Perl::Critic::Utils::is_unchecked_call() updated to include chmod in the
set of things covered by autodie (this happened in autodie v2.08). The
primary effect of this is on InputOutput::RequireCheckedSyscalls.
* Now depends upon Task::Weaken to ensure that we only install with perls
where Scalar::Util::weaken() works.
* Email::Address was optional, but is now required. So everyone
gets the optimal behavior from RequireInterpolationOfMetachars.
* Some infrastructure has been extracted to the new PPIx-Utilities
distro. It is also a required dependency here. Over time a good
portion of Perl::Critic::Utils* will be migrated to this distribution.
* Perl::Critic::Utils::PPI::get_constant_name_element_from_declaring_statement()
is deprecated because it doesn't handle multiple constants being
declared within a single "use constant" statement. Use
PPIx::Utilities::Statement::get_constant_name_elements_from_declaring_statement()
instead.
* Removed all uses of Perl::Critic::Utils::PPIRegep. Since the
PPIx::Regexp update, Perl::Critic only used get_match_string() and
friends, which were superseded by the corresponding PPI methods.
Perl::Critic now depends on PPI-1.208 or newer.
* Moved Perl::Critic::Utils::PPIRegexp to the Perl-Critic-Deprecated.
* The PolicySummary.pod file is now generated when the distribution
is created, rather than when you install it. This ensures the file
will be available on http://search.cpan.org. Thanks to Bear Longyear
for bringing this to our attention.
[1.107_001] Released on 2010-06-20
Changes summarized into 1.108 above. For exact details, see Changes on
BackPAN.
[1.106] Released on 2010-05-10
Bug Fixes:
* NamingConventions::Capitalization fix for PPI 1.212. RT #57348
[1.105_03] Released on 2010-03-21
[1.105_02] Released on 2010-01-23
[1.105_01] Released on 2010-01-16
Changes summarized into 1.108 above. For exact details, see Changes on
BackPAN.
[1.105] Released on 2009-09-07
Bug Fixes:
* Variables::ProhibitPunctuationVars would complain about "%-" appearing
anywhere in a string. RT #49016
Policy Changes:
* InputOutput::RequireCheckedSyscalls now complains about unchecked "say"
by default. RT #37487
[1.104] Released on 2009-08-23
This release is dedicated to Tom Wyant in appreciation of the amount of
effort he put into the enhancements and bug fixes in this release, for
having the patience to wait for the amount of time that it took to get
them out, and for overall awesomeness. Thank you, Tom.
New Policies:
Objects::ProhibitIndirectSyntax
ValuesAndExpressions::ProhibitComplexVersion
ValuesAndExpressions::RequireConstantVersion
New Optional Requirement:
( run in 0.775 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )