This is another framework for writing test scripts. It is loosely
inspired by Test::More, and has most of it's functionality, but it
is not a drop-in replacement.
Test::More (and other existing test frameworks) suffer from two weaknesses:
None offer the ability to access specific tests in a reasonably
interactive fashion
None offer the ability to write the tests in whatever format
would make the tests the most readable
Version 6.10 2010-04-29
Fixed a bug where Date_ConvTZ not working correctly with timezones specified
by offset. Chris Butler
Fixed a documentation bug in Date::Manip::TZ where "stdonly" was listed as the
default value for $dstflag, but in actuality, "std" is the default.
Changed Date::Manip::TZ::zone so "dst" is sometimes the default $dstflag.
Based on the bug report by Chris Butler.
OpenUNIX puts a colon at the start of some timezones. It's removed. Jean Hassler
Fixed a bug where business mode calculations involving minutes was not handled
correctly. Damien Moore
*** Combined 5.xx and 6.xx releases into one distribution so cpan/cpanp will
work correctly.
Newest zoneinfo data (tzdata 2010i)
Fixed a bug where business mode calculations failed in some cases. RT 56638
Converted tests to Test::Inter
Version 6.11 2010-04-30
Fixed a problem in Build.PL that had an incorrect module requirement.
Version 3.82
A complete list of bugs fixed in this version is available here:
http://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=104&set=custom
* Compiling GNU make now requires a conforming ISO C 1989 compiler and
standard runtime library.
* WARNING: Future backward-incompatibility!
Wildcards are not documented as returning sorted values, but up to and
including this release the results have been sorted and some makefiles are
apparently depending on that. In the next release of GNU make, for
performance reasons, we may remove that sorting. If your makefiles
require sorted results from wildcard expansions, use the $(sort ...)
function to request it explicitly.
* WARNING: Backward-incompatibility!
The POSIX standard for make was changed in the 2008 version in a
fundamentally incompatible way: make is required to invoke the shell as if
the '-e' flag were provided. Because this would break many makefiles that
have been written to conform to the original text of the standard, the
default behavior of GNU make remains to invoke the shell with simply '-c'.
However, any makefile specifying the .POSIX special target will follow the
new POSIX standard and pass '-e' to the shell. See also .SHELLFLAGS
below.
* WARNING: Backward-incompatibility!
The '$?' variable now contains all prerequisites that caused the target to
be considered out of date, even if they do not exist (previously only
existing targets were provided in $?).
* WARNING: Backward-incompatibility!
As a result of parser enhancements, three backward-compatibility issues
exist: first, a prerequisite containing an "=" cannot be escaped with a
backslash any longer. You must create a variable containing an "=" and
use that variable in the prerequisite. Second, variable names can no
longer contain whitespace, unless you put the whitespace in a variable and
use the variable. Third, in previous versions of make it was sometimes
not flagged as an error for explicit and pattern targets to appear in the
same rule. Now this is always reported as an error.
* WARNING: Backward-incompatibility!
The pattern-specific variables and pattern rules are now applied in the
shortest stem first order instead of the definition order (variables
and rules with the same stem length are still applied in the definition
order). This produces the usually-desired behavior where more specific
patterns are preferred. To detect this feature search for 'shortest-stem'
in the .FEATURES special variable.
* WARNING: Backward-incompatibility!
The library search behavior has changed to be compatible with the standard
linker behavior. Prior to this version for prerequisites specified using
the -lfoo syntax make first searched for libfoo.so in the current
directory, vpath directories, and system directories. If that didn't yield
a match, make then searched for libfoo.a in these directories. Starting
with this version make searches first for libfoo.so and then for libfoo.a
in each of these directories in order.
* New command line option: --eval=STRING causes STRING to be evaluated as
makefile syntax (akin to using the $(eval ...) function). The evaluation
is performed after all default rules and variables are defined, but before
any makefiles are read.
* New special variable: .RECIPEPREFIX allows you to reset the recipe
introduction character from the default (TAB) to something else. The
first character of this variable value is the new recipe introduction
character. If the variable is set to the empty string, TAB is used again.
It can be set and reset at will; recipes will use the value active when
they were first parsed. To detect this feature check the value of
$(.RECIPEPREFIX).
* New special variable: .SHELLFLAGS allows you to change the options passed
to the shell when it invokes recipes. By default the value will be "-c"
(or "-ec" if .POSIX is set).
* New special target: .ONESHELL instructs make to invoke a single instance
of the shell and provide it with the entire recipe, regardless of how many
lines it contains. As a special feature to allow more straightforward
conversion of makefiles to use .ONESHELL, any recipe line control
characters ('@', '+', or '-') will be removed from the second and
subsequent recipe lines. This happens _only_ if the SHELL value is deemed
to be a standard POSIX-style shell. If not, then no interior line control
characters are removed (as they may be part of the scripting language used
with the alternate SHELL).
* New variable modifier 'private': prefixing a variable assignment with the
modifier 'private' suppresses inheritance of that variable by
prerequisites. This is most useful for target- and pattern-specific
variables.
* New make directive: 'undefine' allows you to undefine a variable so that
it appears as if it was never set. Both $(flavor) and $(origin) functions
will return 'undefined' for such a variable. To detect this feature search
for 'undefine' in the .FEATURES special variable.
* The parser for variable assignments has been enhanced to allow multiple
modifiers ('export', 'override', 'private') on the same line as variables,
including define/endef variables, and in any order. Also, it is possible
to create variables and targets named as these modifiers.
* The 'define' make directive now allows a variable assignment operator
after the variable name, to allow for simple, conditional, or appending
multi-line variable assignment.
Release 8.10 25-Jun-2010
------------------------
There are two major additions: support for (*MARK) and friends, and the option
PCRE_UCP, which changes the behaviour of \b, \d, \s, and \w (and their
opposites) so that they make use of Unicode properties. There are also a number
of lesser new features, and several bugs have been fixed. A new option,
--line-buffered, has been added to pcregrep, for use when it is connected to
pipes.
1.6.2 (2010-08-02)
This release addresses a regression in the color extension.
* color: pass write/write_err to win32print correctly (issue2312)
* convert/progress: use plural and avoid retrieving
* color: call correct superclass method in write_err
1.6.1 (2010-08-01)
This is a scheduled monthly minor bugfix release.
* alias: ensure checksignature() is applied directly to the command (issue2286)
* bash/zsh completion: use HGPLAIN when invoking hg (issue2297)
* bookmarks: don't allow name to contain whitespaces only
* bookmarks: ensure current bookmark is updated when specified with -r .
* bundle: lookup revisions after addbranchrevs
* color/progress: subclass ui instead of using wrapfunction (issue2096)
* commit: only warn when reopening the workdir's branch
* dispatch: give better error message when cwd doesn't exist (issue2293)
* doc: make sure we use our own code for generating man pages
* filelog: cmp: don't read data if hashes are identical (issue2273)
* filelog: test behaviour for data starting with "\1\n"
* hg.clone: fix branch value when passing a repo object (issue2267)
* hgweb.wsgi: add a URL to the corresponding wiki documentation
* hgwebdir: allow pure relative globs in paths
* hgwebdir: use template paths configured in the hgrc (issue2281)
* init: create target directory recursively
* inotify: check all components of filenames against hgignore (issue884)
* keyword: move collecting of [keyword] patterns to reposetup (issue2303)
* log: fix missing diff output for hg log -p in subdirectory
* log: follow filenames through renames (issue647)
* mail: ensure that Python2.4 to 2.7 use the same header format
*
mercurial.spec: rename docutils to python-docutils in BuildRequires
* mq: clarify the fact that qimport is trying to read a file
* mq: cleanup status if applied mq is stripped (issue1881)
* mq: fixed ENOENT when qrename to new/directory.patch
* mq: reset self.added after the mq transaction instead of inside qimport
* qpush --move: move the right patch even with comment lines
* rebase: re-add patches to mq repo after rebase
* revert: rename original to .orig instead of copying (issue2282)
* revset: fix ancestor subset handling (issue2298)
* runrst: try to be more helpful if docutils is not installed
* tag: do not allow tag names to consist solely of whitespace (issue2307)
* transplant: crash if repo.commit() finds nothing to commit
Upstream changes:
Release 0.68 - 5th August 2010
- Fix gcov2perl to work with large numbers (Thomas Dorner) (rt 45028).
- Fix "gcov -l" include files (Thomas Dorner) (rt 44864).
- Test against 5.12.1.
- Gross workaround for for regexp evals (Florian Ragwitz).
0.2.4 (2010-06-30)
=====
- Close file on saving trie. [Bug report from Xu Jiandong]
- Add trie_store_if_absent() API which fails on adding duplicated key.
This is useful for preventing race condition in multi-thread applications.
[Suggestion from Dan Searle]
- Add trie_fread() and trie_fwrite() APIs for reading/writing trie data in
an open file, allowing trie to be embeded as part of a bigger file.
[Suggestion from NIIBE Yutaka]
pkgsrc changes:
- adjust dependencies
Upstream changes:
1.1800 Mon Jul 26 16:02:06 EDT 2010
Changed:
- "sending test report..." message now shows transport method, not
the old email list address for less confusion when using non-email
transports
- Enhances missing "email_from" prompt to clarify why an email is
still needed under non-email transports for legacy compatibililty
pkgsrc changes:
- add license definition
Upstream changes:
2.16 May 11 2010
- Drop signature self test in order to fix rt#57359
- fix missing use base (Yan Fitterer / Martyn J. Pearce)
- fix case of "LICENSE" key and upgrade Makefile.PL
(cpanservice@chorny.net)
Pkgsrc changes:
- set HOMEPAGE, LICENSE and USE_LANGUAGES
Upstream changes:
0.14 Sun Jun 27 09:34:22 EDT 2010
- corrected some documentation errors. cidrvalidate() will validate
either an IP address or a CIDR, either one. Reimplemented addr2cidr.
New implementation does not use Math::BigInt, much faster with ipv6
addresses.
Pkgsrc changes:
- set PERL5_MODULE_TYPE to Module::Install::Bundled
Upstream changes:
0.11 THu May 13 14:31:00 CEST 2010
- Fix doc typo. jawnsy++
0.10 Wed May 12 17:53:56 CEST 2010
- Stop pretending the created classes are anonymous.
They used to close over their own metaclass, so they were never
cleaned up anyway and only made debugging unnecessarily hard as
all instances referenced the metaclass as well.
- Require newer version of MX::Role::Parameterized in the parameterized
role test. (RT#49873).
0.09 Tue Apr 6 22:51:40 CDT 2010
- Class->with_traits(...)->new is now preferred over
Class->new_with_traits(...).
Pkgsrc changes:
- Adjust dependencies
Upstream changes:
0.07 - May 22, 2010
- Reverse order of testing config files so that latter options on the
command line (when multiple are specified) take precedence. (RT#57027)
- Reduce exception thrown by being unable to find a config file to a
warning (RT#57027)
- Fixed configfile attribute examples
- Added metadata to Makefile.PL
0.06 - Apr 12, 2010
- Depend on at least version 0.19 of Config::Any for flatten_to_hash
support.
Pkgsrc changes:
- Adjust dependencies
Upstream changes:
0.23 01 july 2010
- Changes to the return value of ->validate that hopefully is both
backwardly compatible as well as more detailed. Now if you have
a deeply recursive of repeated type constraints inside other
type constraints you will get a drill down report to show the
actual type constraint that failed
0.22 01 June 2010
- Added tests to demonstrate type constraint equality problem
introduced in Moose 1.05
0.21 26 March 2010
- Removed unneed module from test
- additional contributed documentation fixes
Pkgsrc changes:
- Adjust dependencies
Upstream changes:
0.35 Mon, 19 Jul 2010 05:50:08 +0200
* Updated to avoid warnings from Moose 1.09 (Dave Rolsky).
* Switch from Module::Install to Dist::Zilla.
0.34 Tue, 08 Jun 2010 14:00:00 -0300
* Provides a version of reify that replaces the original version and
now finally CatalystX::Declare and MooseX::MultiMethods work.
0.33 Thu, 01 Jun 2010 13:47:34 -0300
* CatalystX::Declare seems to create a method object without a code
reference at all.
0.32 Thu, 01 Jun 2010 13:47:34 -0300
* Detect usage of old MXMS::Meta::Method API and retro-compatibilize.
0.31 Thu, 01 Jun 2010 13:47:34 -0300
* Add support for "does" as a trait declarator
* Compatibilize MXMS::Meta::Method signature with Class::MOP::Method
so other traits can apply customizations to the actual body of the
method.
= 0.9.8 (645024765b2d92018efc511652e1174163844e39)
* Fixed bug "NameError raised when using Mocha as a Rails plug-in" -
http://floehopper.lighthouseapp.com/projects/22289/tickets/53. Since 0.9.6 the
Rails plugin has been broken. See bug report for details. You will need to
explicitly load Mocha *after* the test framework has been loaded, e.g. by
adding "require 'mocha'" at the bottom of test/test_helper.rb.
* Make Mocha::ParameterMatchers#regexp_matches, #includes, #has_value, #has_key
more robust. Thanks to Sander Hartlage.
* Allow passing a block to Mocha::Configuration methods to only change
configuration for the duration of the block. Thanks to Dan Manges.
* Fixed bug "doc generation fails in 0.9.7 gem" -
http://floehopper.lighthouseapp.com/projects/22289/tickets/51.
* Remove rdoc template incorporating google analytics from source control. The
file just needs to exist locally and be ignored by source control. This should
stop the warning showing up on e.g. RunCodeRun build results.
= 0.9.7 (80d816f250dc13aaf856f3f9cbd97ebe9c371839)
* Although I had provided a deprecation warning for people using
Mocha::Standalone, I had assumed people wouldn't be explicitly loading the
mocha/standalone.rb file. It turns out this assumption was incorrect at least
in the case of Rspec. This is now fixed.
= 0.9.6 (57f8f77d715b7f1d9efee2e1a9438f7905c0006b)
* Version 2.0.1 of the test-unit gem introduced a private 'run_test' method on
TestCase which clashed with the public TestRunner#run_test method. So this
latter method has been renamed to 'run_as_test'.
* Stop requiring rubygems - this should be an environmental choice for the user.
http://gist.github.com/54177 - describes why requiring rubygems in your
library code is a bad idea.
* It seems like overkill to vendorize coderay and meta_project when they're only needed to generate the examples for documentation and for publishing files on RubyForge. So I'm removing them and installing them locally as gems when I need them.
* Added support for 'test-unit' gem (version >= 2.0). Note that as with other
versions of Test::Unit I'm completely replacing the TestCase#run method.
Unfortunately in version 2.0.0 this method differs slightly from the same
method in version 2.0.1 & 2.0.2, so we have to provide different
implementations to ensure that the internal working of Test::Unit are not
compromised by Mocha. Note also that unless the 'test-unit' gem is loaded,
requiring 'test/unit' leads to a mixture of stdlib and gem classes being
loaded causing errors. To avoid a dependency on rubygems, the gem is loaded
only if MOCHA_OPTIONS is set to 'use_test_unit_gem' - this option is only
intended for use in running Mocha's own tests. It might be worthwhile to
create a shim gem like minitest_tu_shim to allow the test-unit gem to
completely replace the stdlib, but that's a job for another day. The changes
in the Rakefile are to make the default task run with the 'test-unit' gem
(version >= 2.0).
* Renamed Mocha::Standalone to Mocha::API to better reflect its purpose. Added a
deprecation warning for those who are referencing Mocha::Standalone.
* Fix exception raised by HasEntry#matches? if first param is not a Hash (thanks
to Taylor Barstow).
* Ken Collins reported [1] that Mocha is always loading MiniTest if it is
available and loading it causes some Rails/ActionPack tests to break. I've
removed the loading of MiniTest, but this now means the user has to ensure
that if they want to use MiniTest in conjunction with Mocha, he must load
MiniTest before loading Mocha.
[1] http://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/2060
* Implemented Bacon integration (thanks to Ubiratan Pires Alberton), but this
was then removed after deciding only to maintain integration with Test::Unit
and MiniTest which are both Ruby standard libraries. See mailing list for
details.
* Don't monkey-patch MiniTest if it's already been monkey-patched by Mocha.
* Fixed bug: MiniTest integration was counting ExpectationErrors as errors not
failures. http://floehopper.lighthouseapp.com/projects/22289-mocha/tickets/41.
* Fixed bug: Some Bacon tests were failing in Ruby 1.9.1.
http://floehopper.lighthouseapp.com/projects/22289-mocha/tickets/43.
* Chad Humphries pointed out that in Ruby 1.9.1, if you are not using Test::Unit
or MiniTest, Mocha will attempt to load and monkey-patch Test::Unit. Mocha
will now only monkey-patch Test::Unit and/or MiniTest if they have already
been loaded. MiniTest tests will now run in both Ruby 1.8.6 (with MiniTest
gem) and in Ruby 1.9.1 (with MiniTest std lib). See Ligthouse ticket -
http://floehopper.lighthouseapp.com/projects/22289/tickets/49.
* Made Mocha compatible with minitest 1.4.0 and above (thanks to Denis Defreyne).
= 0.9.5 (93cad010345ce5d68f31422cfc32ed9dd6de13ec)
* Fixed Lighthouse bug #32 - stub_everything should mean mock responds to
anything.
* Added Expectation#twice to improve readability. Thanks to pull request from
Celestino Gomes.
* In Ruby 1.9.1, requiring 'test/unit' loads a thin wrapper around MiniTest and
Test::Unit::TestCase ends up inheriting from MiniTest::Unit::TestCase. So we
need to avoid including the Mocha modules more than once to avoid nasty
consequences. Thanks to Matthias Hennemeyer for help with this.
* Ruby 1.9 includes rake, but not rake/contrib. For the moment I've moved the
sshpublisher require into the only rake task that needs it, so that I can at
least run the tests in Ruby 1.9. It looks like I will need to build a
rake/contrib gem or similar to get this working properly -
http://intertwingly.net/blog/2008/01/07/Rake-Contrib-for-1-9
= 0.9.4 (8a59c6ff0f99f34b02bd99f19536a7893be2b340)
* Added mocha.gemspec file generated with Chad Woolley's new rake task, so that
a floehopper-mocha gem will get built on GitHub.
* Add rake task to update mocha.gemspec with unique version, which will cause
gem to be auto-built on github
* As Tobias Crawley correctly pointed out in feature request #23055
"stubs(with_hash) not working with existing object" [1], following the
principle of least surprise, it should be possible to call
ObjectMethods#expects & ObjectMethods#stubs with a Hash of method_names vs
return_values like you can with Mock#expects & Mock#stubs. I've also updated &
improved the docs to reflect the changes.
[1] http://rubyforge.org/tracker/index.php?func=detail&aid=23055&group_id=1917&atid=7480
* Removed deprecated gem autorequire.
= 0.9.3 (8219bb2d2881c8529c93fc21e97a11d01203c759)
* Added support for MiniTest thanks to Jeff Smick.
* Fixed a possible bug with some of the non-default Configuration options
relating to the argument to Object#respond_to?
* As per Jay Fields recommendations [1] and with further impetus from a talk at
Ruby Manor, any methods added to core classes are now added by including a
module. This means that Mocha is a better citizen of the Ruby world and it's
behaviour is more easily extended.
[1] http://blog.jayfields.com/2008/07/ruby-underuse-of-modules.html &
http://blog.jayfields.com/2008/07/ruby-redefine-method-behavior.html
* Removed deprecated gem autorequire.
= 0.9.2 (r355)
* Improved documentation to address [#22530] 'Mock methods with multiple return
values not possible?'
* respond_with parameter matcher was not available in tests.
* Patch [#22630] Fix for a bug in running Rails tests with Ruby 1.8.7.
Array#flatten was being called which in turn was checking whether each element
responded to #to_ary. This check was using the two parameter version of
#respond_to?, but Mock was only defining a one parameter version.
pkgsrc changes:
- add module type
- remove x-bit from module files
Upstream changes:
0.13 Sun Aug 1 15:17:23 2010
- Fix tests for older perls
0.12 Sun Aug 1 15:11:34 2010
- Use ">= 0", instead of "== 0" for no_leaks_ok()
- Add count_sv() to count all the SVs in a perl interpreter
Upstream changes:
0.08 Sun Jun 20 19:13:19 EDT 2010
Fixed:
- Exceptions in captured coderef are caught, then handles are restored
before the exception is rethrown (RT #58208)
Upstream changes:
0.35 - or the "Yay! Open Source For The Win!" release [2010-04-28]
- Introducing Ovid & Mark Morgan in "Folk with commit bits who aren't
afraid to use them!"
- Add repository information to the META.yml (via Build.PL).
- Add dates to all releases in Change file. This resolves RT#45581
- If extra tests are found in the test control methods, report the
class name along with the method name.
pkgsrc changes:
- adding license definition
Upstream changes:
1.20 2010-05-02
- Make a copy of the environment variable array to stop
segmentation faults on some systems (ex. FreeBSD)
- t/readline.t skip the test of rl_readline_version for GNU
Readline Library 6.1 which may return a wrong value
- readline-6.1 support
new function
rl_free_keymap (disabled due to readline-6.1 bug)
new variable
rl_filename_rewrite_hook (not supported yet)
Upstream changes:
1.57 2010-03-26 00:13:18 EST5EDT
- Includes full 'perl -V' output, not just Config::mychanges
- Adds new 'X-Test-Reporter-Perl' header with Perl version
and optional "RCx" suffix to positively identify tests from
RC Perls
- Minimum perl version is now 5.006, matching the rest of the Perl toolchain
pkgsrc changes:
- adjust dependencies
Upstream changes:
[1.108] Released on 2010-06-22
This is the "Give Shawn Moore what we promised him a year ago and hurry up
and get this out before Brad Oaks gives his YAPC::NA talk" release.
New Policies:
* Documentation::RequirePodLinksIncludeText
* Subroutines::ProhibitUnusedPrivateSubroutines
New Features:
* There is a new global configuration item, 'program-extensions', which
configures Perl::Critic's idea of which file name extensions represent
programs. The desired extensions are specified as a space-separated list,
with leading '.' on each if that is desired. Files whose names end in
'.PL' will always be considered programs. This can be overridden by
command option --programs-extensions, which can be specified multiple
times.
* There is now a perlcritic --allow-unsafe switch. Without this switch,
Perl::Critic will silently refuse to load any Policy that is marked
unsafe. Unsafe Policies are usually ones that may compile or execute
untrusted code (see Perl::Critic::DynamicPolicy for an example); Policy
authors can mark their policies as unsafe by overriding the is_safe()
method.
* The framework that we use to test Perl::Critic Policies has been
packaged into a convenient module that you can use to test your own
Policies. See Test::Perl::Critic::Policy and Perl::Critic::TestUtils
for details.
Policy Changes
* BuiltInFunctions::ProhibitLvalueSubstr no longer complains when there
is a low-precedence operator between the substr() and the assignment
operator.
* 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.
scheduled update of devel/p5-Perl-Critic to 1.108.
The purpose of the PPIx-Regexp package is to parse regular expressions
in a manner similar to the way the PPI package parses Perl. This class
forms the root of the parse tree, playing a role similar to PPI::Document.