This is a live mirror of the Perl 5 development currently hosted at
11 years agoAdd command line tool to update cherrymaint
David Golden [Tue, 29 Jun 2010 23:49:03 +0000 (19:49 -0400)]
Add command line tool to update cherrymaint


  # to vote +1 to cherry pick the SHA1 'deadbeef'
  $ perl Porting/cherrymaint deadbeef

  # to mark as cherry picked
  $ perl Porting/cherrymaint --picked deadbeef

The commit ID can be any valid git revision reference, e.g. HEAD

The ssh tunnel from localhost:3000 to must
already exist.

LWP::UserAgent is required.

11 years agoSuppress deprecation warnings from test output for perl4 era libs.
Nicholas Clark [Tue, 29 Jun 2010 19:32:33 +0000 (20:32 +0100)]
Suppress deprecation warnings from test output for perl4 era libs.

A tweak to the pattern used by 96471c6b3e9cad6e, to match the current warning.

11 years agoIn pp_require, improve the code generating the exception when no file is found.
Nicholas Clark [Tue, 29 Jun 2010 18:57:51 +0000 (19:57 +0100)]
In pp_require, improve the code generating the exception when no file is found.

Make more use of DIE()'s ability to take a *printf formatter and argument list,
hence avoiding most use of SVs as temporary buffers, and building up SVs
section by section.

11 years agoAllow the "diag_listed_as" annotation to work on multi-line function calls.
Nicholas Clark [Tue, 29 Jun 2010 18:54:50 +0000 (19:54 +0100)]
Allow the "diag_listed_as" annotation to work on multi-line function calls.

Previously it would only work if the comment was on the line immediately
preceding the closing /\);/, which was fine for croak()/die()/etc function
calls all on one line, but not so useful for longer calls.

11 years agoWhen testing in core, ensure that the local $ENV{HOME} is absolute.
Nicholas Clark [Tue, 29 Jun 2010 17:25:29 +0000 (18:25 +0100)]
When testing in core, ensure that the local $ENV{HOME} is absolute.

Without this ppm.t and xs.t fail with ccache, because it can't create

11 years agoReinstate require error messages for .h and .ph
Nicholas Clark [Tue, 29 Jun 2010 16:23:41 +0000 (17:23 +0100)]
Reinstate require error messages for .h and .ph

These had been present since 5.000, but were inadvertently removed by the
refactoring b8f04b1b779ce1df.

Yes, files matching /.*.h\z/ get two pieces of advice in the error message, but
this was the exact behaviour pre-b8f04b1b779ce1df.

11 years agoIn pp_require, avoid changing PL_compiling if we're not about to compile.
Nicholas Clark [Tue, 29 Jun 2010 15:17:19 +0000 (16:17 +0100)]
In pp_require, avoid changing PL_compiling if we're not about to compile.

The original code order has existed since 5.000, and I think the change around
perl-5.003_97h to C<tryrsfp ? tryname : name> cured symptoms rather than the
underlying cause.

11 years agoIn pp_require and code refs in @INC, avoid using memory after free().
Nicholas Clark [Tue, 29 Jun 2010 13:29:23 +0000 (14:29 +0100)]
In pp_require and code refs in @INC, avoid using memory after free().

d8723a6a74b2c12e wasn't perfect, as the char * returned by SvPV*() can be
a temporary, freed at the next FREETMPS. There is a FREETMPS in pp_require,
so move the SvPV*() after it.

11 years agoUpdate to point to Dave Golden's guide to updating Module-Build in...
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 15:08:48 +0000 (16:08 +0100)]
Update to point to Dave Golden's guide to updating Module-Build in core

11 years agoUpdate Module-Build to CPAN version 0.3607
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 14:14:15 +0000 (15:14 +0100)]
Update Module-Build to CPAN version 0.3607


      0.3607 - Thu Apr  1 11:27:16 EDT 2010

        Bug fixes:

        - The 'dist' action now always ensures a clean dist directory before
          creating the tarball [David Golden]

      0.36_06 - Thu Apr  1 01:23:58 EDT 2010


        - Migrated repository to git and updated META.yml to match

        - Removed bugtracker URL (let use default)

        - Disabled SIGNATURE generation

      0.3605 - Wed Mar 31 12:05:11 EDT 2010

        - No changes from 0.36_04

      0.36_04 - Tue Mar 16 21:41:41 EDT 2010

      Bug fixes:

        - Added missing newline to "Changing sharpbang" messages under verbose
          output (RT#54474) [David Golden]

        - Added 'beos' to list of Unix-like os types (RT#53876) [Nigel Horne]

        - Sets $ENV{HOME} to a temporary directory during testing [David Golden]

        - For VMS: fixed prefix handling plus other test fixes [Craig Berry]

        - Support anonymous array of directories for c_source [Alberto Sim<C3><B5>es]

        - Small POD formatting fix [James Keenan]

11 years agoFix 3 remaining Test::Harness tests to work in core.
Nicholas Clark [Tue, 29 Jun 2010 14:52:27 +0000 (15:52 +0100)]
Fix 3 remaining Test::Harness tests to work in core.

11 years agoFixed up Test-Harness tests to work under core. There are still three outstanding...
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 13:27:34 +0000 (14:27 +0100)]
Fixed up Test-Harness tests to work under core. There are still three outstanding will ask AndyA to investigate

11 years agoRemove alloca() use from Time::Piece for portability.
Craig A. Berry [Tue, 29 Jun 2010 12:14:39 +0000 (07:14 -0500)]
Remove alloca() use from Time::Piece for portability.

In 1.17, T::P started using its own strptime (almost) everywhere,
and this _strptime contains a single reference to alloca().  The
Linux and BSD man pages recommend against using alloca(), the
function  doesn't exist on HP-UX or VMS, and it's impossible to
error check it.  So replace it here with malloc().

If getting three or four bytes from the heap instead of the stack
is considered a problem, an alternative would be researching the
maximum length of a timezone name and using an automatic variable
to hold it.

11 years agoFix the MANIFEST back after reverting the Module-Build commit
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 11:20:52 +0000 (12:20 +0100)]
Fix the MANIFEST back after reverting the Module-Build commit

11 years agoRevert "Update Module-Build to CPAN version 0.3607"
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 11:18:50 +0000 (12:18 +0100)]
Revert "Update Module-Build to CPAN version 0.3607"

This reverts commit 8f4d46e2e6b66d00df1e347dab564fd9799c8d94.

Way too much breakage for me to sanely resolve. Will leave it to
Dave Golden to try and integrate it

Signed-off-by: Chris 'BinGOs' Williams <>
11 years agoFix MANIFEST for files that have been removed with the previous updates for Module...
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 09:26:10 +0000 (10:26 +0100)]
Fix MANIFEST for files that have been removed with the previous updates for Module-Build and Test-Harness

11 years agoUpdate Test-Harness to CPAN version 3.21
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 09:16:45 +0000 (10:16 +0100)]
Update Test-Harness to CPAN version 3.21

  Mark UPSTREAM as 'cpan' in


  3.21    2010-01-30
        - Add test to ensure we're not depending on a module we no
          longer ship.
        - Fix up skip counts for Windows case - tests were failing
          on Windows.

  3.20    2010-01-22
        - Remove references / dependency on TAP::Parser::Source::Perl

  3.19    2010-01-20
        - Avoid depending on Module::Build. The resulting circular
          dependency made it impossible to install Test::Harness and/or
          Module::Build in some cases.

  3.18    2010-01-19
        - Handle the case where the filename of the perl executable
          contains space. Thanks to kmx.
        - Various documentation fixes.

  3.17_04 2010-01-04
        - Fix failures due to unknown location of Perl in t/source_handler.t.
        - Use EUMM style shebang magic to produce an executable 'psql'
          for t/source_handler.t.

  3.17_03 2009-11-19
        - Fix failures due to over-strict assertions in t/source.t.

  3.17_02 2009-11-17
        - Merge in Steve's missing changes. Oops.

  3.17_01 2009-11-17
        - Re-engineered source handling API to allow users to configure how
          TAP is sourced by the parser.  Introduced a new 'sources' param to
          TAP::Harness, and new options to prove, eg:

              prove --source XYZ --xyz-option foo=bar

          The new TAP::Parser::SourceHandler API makes it much easier to
          write plugins.  This breaks backwards compatibility for plugins &
          extenstions that rely on the following APIs:

              TAP::Parser, specifically:
                new: 'source' & 'tap' params

          Please see the TAP::Parser docs for more details.
          [Steve Purkis & David Wheeler]
        - Removed dependency on File::Spec [Schwern]
        - Made it possible to pass different args to each test [Lee Johnson]
        - Added HARNESS_SUBCLASS option to Test::Harness
        - Added TAP::Parser::SourceHandler::File which lets you to stream TAP
          from a text file (eg: *.tap).
        - Added TAP::Parser::SourceHandler::pgTAP. All the source handlers are
          new, but this is the only one to add major new functioality: the
          ability to run pgTAP tests (

11 years agoUpdate Module-Build to CPAN version 0.3607
Chris 'BinGOs' Williams [Tue, 29 Jun 2010 08:41:30 +0000 (09:41 +0100)]
Update Module-Build to CPAN version 0.3607


  0.3607 - Thu Apr  1 11:27:16 EDT 2010

    Bug fixes:

    - The 'dist' action now always ensures a clean dist directory before
      creating the tarball [David Golden]

  0.36_06 - Thu Apr  1 01:23:58 EDT 2010


    - Migrated repository to git and updated META.yml to match

    - Removed bugtracker URL (let use default)

    - Disabled SIGNATURE generation

  0.3605 - Wed Mar 31 12:05:11 EDT 2010

    - No changes from 0.36_04

  0.36_04 - Tue Mar 16 21:41:41 EDT 2010

  Bug fixes:

    - Added missing newline to "Changing sharpbang" messages under verbose
      output (RT#54474) [David Golden]

    - Added 'beos' to list of Unix-like os types (RT#53876) [Nigel Horne]

    - Sets $ENV{HOME} to a temporary directory during testing [David Golden]

    - For VMS: fixed prefix handling plus other test fixes [Craig Berry]

    - Support anonymous array of directories for c_source [Alberto Sim<C3><B5>es]

    - Small POD formatting fix [James Keenan]

11 years agoStop leaking temporary version objects from XS
gfx [Wed, 5 May 2010 10:54:11 +0000 (06:54 -0400)]
Stop leaking temporary version objects from XS

11 years agoPrevent object methods called as class methods
John Peacock [Wed, 24 Mar 2010 02:34:26 +0000 (22:34 -0400)]
Prevent object methods called as class methods

There are a number of object methods which make absolutely
no sense when called as class methods.  In addition, with
Perl 5.11.5/5.12.0, there are asserts which will trigger
SEGV's when you do that.

So we check in the XS code and refuse to continue if an
object method is called as a class method.

11 years agoDeprecate no space after s/a/b/ and keyword
Karl Williamson [Sat, 26 Jun 2010 23:41:40 +0000 (17:41 -0600)]
Deprecate no space after s/a/b/ and keyword

Pattern replacements need to have the deprecation added; the prior patch
on this ticket only changed m/a/keyword; this adds the s/a/b/keyword

11 years agoFix broken link in perlglossary.pod
Karl Williamson [Wed, 23 Jun 2010 16:02:31 +0000 (10:02 -0600)]
Fix broken link in perlglossary.pod

11 years agoperlrun.pod: Specify -0400 behavior
Karl Williamson [Tue, 22 Jun 2010 22:03:02 +0000 (16:03 -0600)]
perlrun.pod: Specify -0400 behavior

All values -0400 through -0777 have the same effect, even though
previously -0777 was the only one mentioned..

11 years agoPrefer 3 digit octal character constants
Karl Williamson [Tue, 22 Jun 2010 21:01:01 +0000 (15:01 -0600)]
Prefer 3 digit octal character constants

By example and a few wording changes, show that 3 digit octal character
constants have less ambiguity.

11 years agoNit in perlrebackslash.pod
Karl Williamson [Tue, 22 Jun 2010 20:47:29 +0000 (14:47 -0600)]
Nit in perlrebackslash.pod

11 years agoAdd perltodo entry for 0odddd, octal constant
Karl Williamson [Tue, 22 Jun 2010 20:44:53 +0000 (14:44 -0600)]
Add perltodo entry for 0odddd, octal constant

11 years agoChange to use a link in perltodo
Karl Williamson [Tue, 22 Jun 2010 20:44:00 +0000 (14:44 -0600)]
Change to use a link in perltodo

11 years agoperlre: Add heading to separate unrelated paragraphs
Karl Williamson [Tue, 22 Jun 2010 20:40:17 +0000 (14:40 -0600)]
perlre: Add heading to separate unrelated paragraphs

I don't know where the text for the stuff below this new heading should
go, but it clearly doesn't belon with what came before, so add a heading
to separate them, perhaps rearranging things later

11 years agoPrefer \g1 over \1 in pods
Karl Williamson [Tue, 22 Jun 2010 20:29:10 +0000 (14:29 -0600)]
Prefer \g1 over \1 in pods

\g was added to avoid ambiguities that \digit causes.  This updates the
pod documentation to use \g in examples, and to prefer it when
explaining the concepts.  Some non-symmetrical outlined text dealing
with it was also cleaned up.

11 years agoStandardize on use of 'capture group' over 'buffer'
Karl Williamson [Tue, 22 Jun 2010 15:45:23 +0000 (09:45 -0600)]
Standardize on use of 'capture group' over 'buffer'

Both terms 'capture group' and 'capture buffer' are used in the
documentation.  This patch changes most uses of the latter to the
former, as they are referenced using "\g".

11 years agoNits in perlre.pod
Karl Williamson [Tue, 22 Jun 2010 15:10:20 +0000 (09:10 -0600)]
Nits in perlre.pod

11 years agoAdd clarifying comment to toke.c
Karl Williamson [Tue, 22 Jun 2010 15:01:38 +0000 (09:01 -0600)]
Add clarifying comment to toke.c

11 years agoAdd the policy on compatibility and deprecation to perlpolicy.pod,
Jesse Vincent [Mon, 28 Jun 2010 23:16:21 +0000 (19:16 -0400)]
Add the policy on compatibility and deprecation to perlpolicy.pod,
aloing with definitions of terms like "deprecation"

11 years agodeprecation warning on deprecated-in-core .pl libs
Zefram [Sat, 17 Apr 2010 14:25:10 +0000 (15:25 +0100)]
deprecation warning on deprecated-in-core .pl libs

This is a mandatory warning, not obeying -X or lexical warning bits.
To make it behave like an internal deprecation warning would be a lot
of hassle to do in pure Perl.

The warning is modelled on that supplied by for
deprecated-in-core .pm libraries.  It points to the specific CPAN
distribution that contains the .pl libraries.  The CPAN version, of
course, does not generate the warning.

11 years agoUpdate: re pragma is lexically scoped since Perl 5.9.5.
Nick Johnston [Thu, 17 Jun 2010 13:13:18 +0000 (14:13 +0100)]
Update: re pragma is lexically scoped since Perl 5.9.5.

11 years agoAdd cautionary comment to .t
Karl Williamson [Sun, 30 May 2010 13:17:52 +0000 (07:17 -0600)]
Add cautionary comment to .t

11 years agoRemove BUG report from pod that is now fixed
Karl Williamson [Sat, 29 May 2010 19:34:55 +0000 (13:34 -0600)]
Remove BUG report from pod that is now fixed

viacode now works correctly for 0.

11 years agoFix charnames::viacode not accepting U+... param
Karl Williamson [Sat, 29 May 2010 19:29:53 +0000 (13:29 -0600)]
Fix charnames::viacode not accepting U+... param

The commit e10d7780a27dcfeb9c50ab28b66f2df8763d8016 introduced a bug in
which a parameter to viacode of the form U+... no longer worked.  This
is fixed, as well as tests added.

11 years agoUpdate charnames.t to modern style
Karl Williamson [Sat, 29 May 2010 19:25:43 +0000 (13:25 -0600)]
Update charnames.t to modern style

This now uses to define subroutines that make it easier to

11 years agoEliminate macro _XPVIO_TAIL by inlining it within struct xpvio.
Nicholas Clark [Mon, 28 Jun 2010 15:45:01 +0000 (16:45 +0100)]
Eliminate macro _XPVIO_TAIL by inlining it within struct xpvio.

_XPVIO_TAIL was added in 167f2c4d08e1e800, but has only been used in 1 location
since xpvio_allocated was removed in b6f609162799aa49. This restores the header
layout to the situation as it was before 167f2c4d08e1e800, although there are
changes to the structure itself.

11 years agoUpdated the Archive-Tar tests to remove PERL_CORE specific chdir() code.
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 21:36:01 +0000 (22:36 +0100)]
Updated the Archive-Tar tests to remove PERL_CORE specific chdir() code.

11 years agoAdded Archive-Tar update to perl5133delta
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 21:17:18 +0000 (22:17 +0100)]
Added Archive-Tar update to perl5133delta

11 years agoUpdate Archive-Tar to CPAN version 1.62
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 21:06:53 +0000 (22:06 +0100)]
Update Archive-Tar to CPAN version 1.62


  Important changes since 1.54 include: compatibility with busybox
  implementations of tar which was added by Mark Swayne; a fix so
  that write() and create_archive() close only handles
  they opened by Darrell K.; and a bug was fixed regarding the exit code
  of extract_archive which was spotted by and upstreamed from RedHat by
  Martin Cermak.

11 years agoAdded Archive-Extract update to perl5133delta
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 19:02:51 +0000 (20:02 +0100)]
Added Archive-Extract update to perl5133delta

11 years agoUpdate Archive-Extract to CPAN version 0.42
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 18:53:51 +0000 (19:53 +0100)]
Update Archive-Extract to CPAN version 0.42


  Updates since 0.38 include: a safe print method that Michael Schwern
  contributed, that guards Archive::Extract from changes to $\; a
  fix to the tests when run in core perl from Robin Barker; and
  support for TZ files contributed by Paul Marquess, who also supplied a
  modification for the lzma logic to favour IO::Uncompress::Unlzma

11 years agoRefactor loops in S_hsplit(), Perl_hv_ksplit() and Perl_ptr_table_split().
Nicholas Clark [Sun, 27 Jun 2010 21:38:58 +0000 (22:38 +0100)]
Refactor loops in S_hsplit(), Perl_hv_ksplit() and Perl_ptr_table_split().

Change from for() to do ... while() loops. Move variable initialisation to
variable declaration. Avoid needing to use the comma operator to allow
multiple statements in for(). Avoid using a continue statement where it
isn't actually needed to change flow control. Avoid relying on the optimiser
to know that the for loop conditional doesn't need testing on the first pass.

A current gcc's optimiser produces identical code despite these changes.
However, for the reasons given I consider the code to be much clearer.

11 years agoMove variable declarations inwards in S_hsplit() and Perl_hv_ksplit().
Nicholas Clark [Sun, 27 Jun 2010 21:19:37 +0000 (22:19 +0100)]
Move variable declarations inwards in S_hsplit() and Perl_hv_ksplit().

11 years agoAdded IPC-SysV update to perl5133delta
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 13:32:19 +0000 (14:32 +0100)]
Added IPC-SysV update to perl5133delta

11 years agoUpdate IPC-SysV to CPAN version 2.03
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 13:30:25 +0000 (14:30 +0100)]
Update IPC-SysV to CPAN version 2.03


  2.03 - 2010-05-23

    * fix CPAN #57530: IPC::Msg Documentation Bug
      (thanks to Jonathan Hartzog for spotting this)

  2.02 - 2010-03-07

    * fix CPAN #50762: mistaken use of $[
      (thanks to Zefram for spotting this)
    * no need to specify an empty MAN3PODS in the core anymore
      (thanks to Nicholas Clark for providing a patch)

11 years agoAdded Module-Load update to perl5133delta
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 10:56:24 +0000 (11:56 +0100)]
Added Module-Load update to perl5133delta

11 years agoUpdate the version of Pod-Simple listed in to be the actual version...
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 10:51:55 +0000 (11:51 +0100)]
Update the version of Pod-Simple listed in to be the actual version we have in core

11 years agoUpdate Module-Load to CPAN version 0.18
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 10:46:01 +0000 (11:46 +0100)]
Update Module-Load to CPAN version 0.18


  Changes for 0.18    Tue Mar  2 15:54:30 2010
  * Documentation fix from Michael Schwern RT #55123

11 years agoPOD fix
Rafael Garcia-Suarez [Mon, 28 Jun 2010 10:25:13 +0000 (12:25 +0200)]
POD fix

11 years agoAdded Digest-SHA update to the perl5133delta
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 09:14:28 +0000 (10:14 +0100)]
Added Digest-SHA update to the perl5133delta

11 years agoUpdate Digest-SHA to CPAN version 5.48
Chris 'BinGOs' Williams [Mon, 28 Jun 2010 09:09:36 +0000 (10:09 +0100)]
Update Digest-SHA to CPAN version 5.48


  5.48  Mon Jan  4 16:32:52 MST 2010
        - fixed "shasum -a0" option (ref. #53319)
                -- incorrectly accepted 0 as a valid algorithm
                        -- thanks to Zefram for patch
        - updated URL for NIST test vectors
                -- ref. files t/nistbit.t, t/nistbyte.t
                        -- thanks to Leon Brocard for patch

11 years agoadd first batch of updates to perl5133delta
David Golden [Mon, 28 Jun 2010 04:59:18 +0000 (00:59 -0400)]
add first batch of updates to perl5133delta

11 years agoAdd more templates to git-deltatool
David Golden [Mon, 28 Jun 2010 04:42:27 +0000 (00:42 -0400)]
Add more templates to git-deltatool

Also fixes some docs and adds TODO notes

11 years agoUpdate perl5133delta to reflect the new template
David Golden [Mon, 28 Jun 2010 04:29:42 +0000 (00:29 -0400)]
Update perl5133delta to reflect the new template

11 years agorevise and reorder the perldelta template
David Golden [Mon, 28 Jun 2010 04:26:07 +0000 (00:26 -0400)]
revise and reorder the perldelta template

The re-ordering is intended to cluster similar things together based
on a potential audience.  I've consolidated and and rolled up some
things for better structure and clarity.  This work was done based on
some analysis of the various outlines used for perldeltas in the past

11 years agominor improvements to git-deltatool
David Golden [Mon, 28 Jun 2010 03:01:49 +0000 (23:01 -0400)]
minor improvements to git-deltatool

Refactors comment stripping to be sure it always is applied before
committing the note to git

Adds some white space between commits for easier reading

11 years agoimprove =item template for git-deltatool
David Golden [Mon, 28 Jun 2010 02:00:19 +0000 (22:00 -0400)]
improve =item template for git-deltatool

11 years agoAdd a tool for writing a perldelta using git notes
David Golden [Thu, 24 Jun 2010 18:26:35 +0000 (14:26 -0400)]
Add a tool for writing a perldelta using git notes

I've written this tool to help me annotate commits for perldelta.
It scans back through commits, prompting for a perldelta section
for each commit (or to ignore the commit).  It then opens up an
editor to write a perldelta snippet into a git note on the commit.

It also supports some very primative workflow, including reviewing
existing annotations and "rendering" annotations properly grouped
by section to cut/paste into perldelta.

It does have some non-core dependencies including Git::Wrapper and
Term::ReadKey, so is intended to be run using an installed perl with
these module from CPAN, not the freshly built one.

Documentation is sparse.

N.B. Git notes are *local* -- they are kept in a detached branch and
will not be pushed upstream.  This makes them well-suited for a
release manager to keep working notes (as for perldelta) that will
become irrelevant over time.  It's not clear whether they have broader

11 years agoResort MANIFEST.
Nicholas Clark [Sun, 27 Jun 2010 22:10:34 +0000 (00:10 +0200)]

11 years agoUpdate Unicodee-Collate to CPAN version 0.53
Chris 'BinGOs' Williams [Sun, 27 Jun 2010 19:06:30 +0000 (20:06 +0100)]
Update Unicodee-Collate to CPAN version 0.53


  0.53  Sun Feb 14 20:46:27 2010
    - Now UCA Revision 18 (based on Unicode 5.1.0).
    - DUCET is also upgrated (for Unicode 5.1.0) as Collate/allkeys.txt,
      which is not required to test this module.
    ! Please notice that allkeys.txt will be overwritten if you have had
      other allkeys.txt already.
    - U+9FBC..U+9FC3 are new CJK Unified Ideographs.

11 years agoUpdate Unicode-Normalize to CPAN release 1.06
Chris 'BinGOs' Williams [Sun, 27 Jun 2010 18:51:20 +0000 (19:51 +0100)]
Update Unicode-Normalize to CPAN release 1.06


  1.06  Thu Feb 11 16:19:54 2010
    - Pure Perl/mkheader: fixed the internal _getHexArray() for perl 5.11.3
      changes (Bug #53197).

  1.05  Mon Sep 28 21:43:17 2009
    - normalize_partial() and NFX_partial(). { NFX =~ /^NFK?[CD]\z/ }
    - added partial1.t for NFX_partial().
    - added partial2.t for normalize_partial().

  1.04  Wed Sep 23 22:32:57 2009
    - doc: splitOnLastStarter() since 0.24 is now documented.
    - test: some new tests are added to split.t.

11 years agoAdd Perl_croak_no_modify() to implement Perl_croak("%s", PL_no_modify).
Nicholas Clark [Sun, 27 Jun 2010 12:06:12 +0000 (13:06 +0100)]
Add Perl_croak_no_modify() to implement Perl_croak("%s", PL_no_modify).

This reduces object code size, reducing CPU cache pressure on the non-exception

11 years agoReturn DIE(...) to *return*ing Perl_die(...).
Nicholas Clark [Sun, 27 Jun 2010 17:34:36 +0000 (18:34 +0100)]
Return DIE(...) to *return*ing Perl_die(...).

Much simplification ensues - witness the diffstat.

Changes Perl_die_unwind() to use Perl_croak() rather than DIE().

Reverses an unwise part of bb4c52e023e0fcad.
Reverts 9e95c6350a60744d and 805bf316c58ab2d7.

11 years agoUpdate autodie to CPAN version 2.10
Chris 'BinGOs' Williams [Sun, 27 Jun 2010 15:53:07 +0000 (16:53 +0100)]
Update autodie to CPAN version 2.10


  2.10  Sat Feb 27 14:01:18 AUSEST 2010
        * BUGFIX: Fatal and autodie no longer leak Carp functions
          into the caller's namespace.  Thanks to Schwern.

        * TEST: Multi-arg open tests are really really skipped
          under Windows now.

        * DOCUMENTATION: Many more people are properly attributed
          in the 'AUTHORS' file.

  2.09  Tue Feb 23 00:33:09 AUSEST 2010
        * DOCS: Fixed documentation typo.  RT #48575
          Thanks to David Taylor.

        * TEST: Tests involved multi-arg open are skipped
          on Windows (where multi-arg pipe is not implemented).

  2.08  Mon Feb  8 14:24:26 AUSEST 2010
        * BUGFIX: Addeds support for chmod.  Many thanks to
          Jonathan Yu for reporting this (RT #50423).

        * BUGFIX: Multi-arg open is now supported by open.
          Many thanks to Nick Cleaton for finding and fix this
          bug.  (RT #52427)

        * BUILD: Updated to Module::Install 0.93

  2.07  Fri Jul 31 16:35:40 BST 2009

        * FEATURE: Added ->eval_error to autodie::exception, which
          stores the contents of $@ at the time autodie throws its
          own exception.  This is useful when dealing with modules
          such as Text::Balanced which set (but do not throw)
          $@ on error.

        * TEST: Checking for flock() support no longer causes
          test failures on older VMS sysstems. (RT #47812)
          Thanks to Craig A. Berry for supplying a patch.

        * TEST: hints.t tests should no longer cause bogus
          failures relating to File::Copy on VMS and Windows
          systems prior to Perl 5.10.2.

11 years agoUpdate ExtUtils-CBuilder to CPAN version 0.2703
Chris 'BinGOs' Williams [Sun, 27 Jun 2010 14:09:32 +0000 (15:09 +0100)]
Update ExtUtils-CBuilder to CPAN version 0.2703


  0.2703 - Tue Mar 16 17:10:55 EDT 2010

  Bugs fixed:
  - fixed tests for Windows and MSVC [Jan Dubois]

  0.2702 - Mon Feb 22 15:10:52 EST 2010

  Bugs fixed:
  - compile() changes in 0.2701 did not work on Windows.  Now fixed.

  0.2701 - Tue Feb 16 09:12:45 EST 2010

  Bugs fixed:
  - compile() now accepts both string & array for 'include_dirs'
    argument, as documented.(RT#54606) [Alberto Sim<F5>es]

11 years agoUpdate ExtUtils-Manifest to CPAN version 1.58
Chris 'BinGOs' Williams [Sun, 27 Jun 2010 14:03:19 +0000 (15:03 +0100)]
Update ExtUtils-Manifest to CPAN version 1.58


  1.58  Sun, Nov 21, 2009
    - add MYMETA files to default skip list:
      (suggested by DAGOLDEN)
    - Avoid Devel::Cover and Devel::CoverX::Covered files
      (suggested by daxim)

11 years agoUpdate to match the version of Safe that is included in core
Chris 'BinGOs' Williams [Sun, 27 Jun 2010 07:59:46 +0000 (08:59 +0100)]
Update to match the version of Safe that is included in core

11 years agoUpdate Time-HiRes to CPAN version 1.9721
Chris 'BinGOs' Williams [Sat, 26 Jun 2010 22:30:33 +0000 (23:30 +0100)]
Update Time-HiRes to CPAN version 1.9721


  1.9721 [2010-03-17]
        - Address [ #54196] alarm and ularm return values are bogus,
          additional fix from Gisle Aas
        - Address [ #55665] "Bad plan" on Windows,
          report and fix from Jan Dubois

  1.9720 [2010-02-14]
        - Address [ #54196] alarm and ularm return values are bogus,
          report and fix from Nicholas Clark

11 years agoUpdate Attribute-Handlers to CPAN version 0.88
Chris 'BinGOs' Williams [Sat, 26 Jun 2010 18:40:05 +0000 (19:40 +0100)]
Update Attribute-Handlers to CPAN version 0.88


  0.88    Mon Apr  5 16:33:00 CET 2010
        - Avoid clobbering $_ (perl #74052, LanX)

11 years agoUpdate the version for Data-Dumper in to match both core and CPAN
Chris 'BinGOs' Williams [Sat, 26 Jun 2010 18:35:52 +0000 (19:35 +0100)]
Update the version for Data-Dumper in to match both core and CPAN

11 years agoUpdate the dist listed for version in to match what is on CPAN and...
Chris 'BinGOs' Williams [Sat, 26 Jun 2010 18:33:42 +0000 (19:33 +0100)]
Update the dist listed for version in to match what is on CPAN and core.

11 years agoOnly use home-rolled prototypes on VMS when really necessary.
Craig A. Berry [Sat, 26 Jun 2010 15:15:51 +0000 (10:15 -0500)]
Only use home-rolled prototypes on VMS when really necessary.

The prototypes removed here, while in some ways superior to those
provided in the system-supplied headers, in other ways conflict
with them.  The conflicts were masked in the default build by the
fact that the macros mapping lower case names to upper case were
undefined, so at compile time there were really two different
prototypes even though at link time the symbols were the same.

But the conflict broke the build when compiling with /NAMES=AS_IS
to preserve symbol name case.  Overall, whatever modest benefit
maintaining our own prototypes might provide, it's just not worth
the risk of conflict.  A better approach would be to define
__NEW_STARLET and work through whatever the compiler complains

For sys$sigprc and lib$initialize, we do continue to provide our
own prototypes (and add lower case to upper case mapping macros)
because there are no system-supplied prototypes for them.

11 years agoInstall git_version.h on VMS.
Craig A. Berry [Sat, 26 Jun 2010 15:06:51 +0000 (10:06 -0500)]
Install git_version.h on VMS.

This was an oversight in 5.12.0 and without it some extension builds

11 years agoUpdate Time-Piece to CPAN version 1.20
Chris 'BinGOs' Williams [Sat, 26 Jun 2010 14:04:03 +0000 (15:04 +0100)]
Update Time-Piece to CPAN version 1.20


    - Fix for alloca broke Solaris
    - Fixed documentation buggette about strptime
    - Added ->pretty() method for Time::Seconds objects
        - Add %s support to strptime

    - Fix for alloca broke FreeBSD

    - Fix for alloca on IRIX

    - Force all to use internal strptime then everyone gets %z even OSX
    - Finally figured out the timezone test failures on Win32 and fixed

        - Implement %z for the internal implementation of strptime().
          Unfortunately this doesn't get picked up everywhere, so there are no
          tests for it (yet - patches welcome).
        - Fix for major bug in add_months() using negative months which were
          multiples of 12. Also affected add_years() with negative years.
        - Fix for object creation bug in get_epochs which called new from object
          but that wasn't supported in the new() code.
        - Added docs about the weakness of using epoch seconds internally and
          suggested alternatives.
        - Removed useless "use UNIVERSAL qw(isa)" line.
        - Fix for installing over core perl version.

11 years agoRT 75902: Add prototypes for tie() and untie() to allow overloading
Father Chrysostomos [Fri, 25 Jun 2010 12:10:36 +0000 (22:10 +1000)]
RT 75902: Add prototypes for tie() and untie() to allow overloading

11 years agoRT #75812: apply get magic before checking flags, PVX
Tony Cook [Thu, 17 Jun 2010 08:58:04 +0000 (18:58 +1000)]
RT #75812: apply get magic before checking flags, PVX

The code was checking flags with applying any get magic, so when a
match was doing putting a numeric string into $1, none of the flags
checked were set, so producing the "non-numeric process ID" error.

11 years agoIn pp_sort, ensure that @_ is freed correctly.
Nicholas Clark [Thu, 24 Jun 2010 19:44:07 +0000 (20:44 +0100)]
In pp_sort, ensure that @_ is freed correctly.

Before this, if @_ had become AvREAL(), it retains reference on its elements.

11 years agowhen disabling regex implicit check string we must reset anchored flag
Yves Orton [Sat, 19 Jun 2010 11:41:10 +0000 (13:41 +0200)]
when disabling regex implicit check string we must reset anchored flag

It seems that if a regex check string is determined to be "not useful"
it is permananently disabled. However, it appears that when doing this
we dont necessarily reset any flags that are related to it.

Worse, the behaviour is not determinisitic, so it is quite possible that
a given program may experience this bug "randomly" based on what strings
it was matching. Thus it may be difficult to reproduce.

Resetting the RXc_ANCH_MBOL when we know that it is implicit
(PREGf_IMPLICIT) seems to fix /this/ particular example. But it wouldn't
surprise me to discover that other "random" bugs we encounter can be
traced back to this behaviour.

This fixes RT #75878 which is derived from ActiveState Bug #87173.

11 years agoUpdate Term-ANSIColor to CPAN version 3.00
Chris 'BinGOs' Williams [Thu, 24 Jun 2010 08:46:50 +0000 (09:46 +0100)]
Update Term-ANSIColor to CPAN version 3.00


  Add bright versions of the basic eight foreground
  and background colors using the 9x and 10x codes, supported by
  emulators with 16 color support. (Jakob Ilves)

  Add some basic tests for bright color support. (Russ Allbery)

  Reorganize the documentation and be clearer about
  the function interface parameters.  Reword the explanation of
  bright and regular colors, and provide some advice about which to
  use. (Russ Allbery)

11 years agoUpdate the CPAN distribution version for Module::CoreList
Chris 'BinGOs' Williams [Thu, 24 Jun 2010 08:36:44 +0000 (09:36 +0100)]
Update the CPAN distribution version for Module::CoreList

11 years agoIn S_sortcv_stacked(), handle @_ correctly. Fix for #72334.
Gerard Goossen [Wed, 23 Jun 2010 15:26:58 +0000 (16:26 +0100)]
In S_sortcv_stacked(), handle @_ correctly. Fix for #72334.

Remove AvREAL from @_, and set AvALLOC when reallocating @_.

11 years ago[PATCH] Fix d_u32align probe on ARM
H.Merijn Brand [Wed, 23 Jun 2010 14:34:04 +0000 (16:34 +0200)]
[PATCH] Fix d_u32align probe on ARM

From: Marc Pignat <>
Date: Wed, 23 Jun 2010 15:38:37 +0200

My proposed solution is to use the 'volatile' keyword to make sure the
compiler will really do the job.

Please note that it does not work with -O3, but the configure script
compile with -O2, so this should be fine.

At this time I've only tested the Configure scripts, which now detects
the align problem on ARM. I'm compiling the whole thing to check if the
md5 bug goes away!

I hope this will fix this *5 years* old bug, and the upstream bug as

Signed-off-by: H.Merijn Brand <>
11 years agoRemove MacOS classic support from DynaLoader.
Nicholas Clark [Mon, 21 Jun 2010 20:40:27 +0000 (21:40 +0100)]
Remove MacOS classic support from DynaLoader.

ExtUtils::MakeMaker removed MacOS support in 6.25, merged to blead in December
2004, so this code is vestigial, and a small maintenance penalty.

11 years agoRemove MacOS classic support from File::{Copy,DosGlob,Find,Glob,stat}.
Nicholas Clark [Mon, 21 Jun 2010 20:10:40 +0000 (21:10 +0100)]
Remove MacOS classic support from File::{Copy,DosGlob,Find,Glob,stat}.

ExtUtils::MakeMaker removed MacOS support in 6.25, merged to blead in December
2004, so this code is vestigial, and a small runtime penalty.

11 years agoRemove MacOS classic support from File::Basename.
Nicholas Clark [Mon, 21 Jun 2010 20:09:52 +0000 (21:09 +0100)]
Remove MacOS classic support from File::Basename.

ExtUtils::MakeMaker removed MacOS support in 6.25, merged to blead in December
2004, so this code is vestigial, and a small runtime penalty.

11 years agoRemove MacOS classic support from blib, diagnostics and Term::ReadLine.
Nicholas Clark [Mon, 21 Jun 2010 19:42:38 +0000 (20:42 +0100)]
Remove MacOS classic support from blib, diagnostics and Term::ReadLine.

ExtUtils::MakeMaker removed MacOS support in 6.25, merged to blead in December
2004, so this code is vestigial, and a small runtime penalty.

11 years agoRemove MacOS classic support from the debugger.
Nicholas Clark [Mon, 21 Jun 2010 19:42:10 +0000 (20:42 +0100)]
Remove MacOS classic support from the debugger.

ExtUtils::MakeMaker removed MacOS support in 6.25, merged to blead in December
2004, so this code is vestigial, and a small runtime penalty.

11 years agoRemove MacOS classic support from lib.
Nicholas Clark [Mon, 21 Jun 2010 19:25:53 +0000 (20:25 +0100)]
Remove MacOS classic support from lib.

ExtUtils::MakeMaker removed MacOS support in 6.25, merged to blead in December
2004, so this code in lib is vestigial, and a small runtime penalty.

11 years agoTweak the generated slightly. Shorter and slightly fewer ops.
Nicholas Clark [Tue, 22 Jun 2010 08:59:49 +0000 (09:59 +0100)]
Tweak the generated slightly. Shorter and slightly fewer ops.

Use our directly at the first assignment, rather than on a line by itself.
Add editor readonly blocks, consistent with most other generated files.
require Exporter, rather than using it with an empty import list. We don't need
it at compile time.

11 years agoMove parameter validation, and carp/croak generation into warnings::__chk.
Nicholas Clark [Sun, 20 Jun 2010 17:00:31 +0000 (18:00 +0100)]
Move parameter validation, and carp/croak generation into warnings::__chk.

This results in enabled, fatal_enabled, warnif, and warn as wrappers to __chk
selecting their desired behaviour, and eliminates duplicated code.

11 years agoMove the repeated vec logic into warnings::__chk.
Nicholas Clark [Sun, 20 Jun 2010 15:23:38 +0000 (16:23 +0100)]
Move the repeated vec logic into warnings::__chk.

11 years agoNo need to return $i from warnings::__chk, as the value is not used.
Nicholas Clark [Sun, 20 Jun 2010 13:40:33 +0000 (14:40 +0100)]
No need to return $i from warnings::__chk, as the value is not used.

$i holds the depth of the caller frame from which the warnings bitmask is read.
The value has not been used by any caller of __chk() since c3186b657097c822.

11 years agoMake warnings::__chk default the returned caller's bitmask to 0.
Nicholas Clark [Sun, 20 Jun 2010 13:12:38 +0000 (14:12 +0100)]
Make warnings::__chk default the returned caller's bitmask to 0.

This removes defined checks in subsequence code paths, reducing complexity.

11 years agoIn Config::import, avoid assigning to $pkg, which is never read.
Nicholas Clark [Sun, 20 Jun 2010 10:37:40 +0000 (11:37 +0100)]
In Config::import, avoid assigning to $pkg, which is never read.

Avoid the use of sprintf - __PACKAGE__ is a constant, so can be inlined within
the message string. Don't store '%Config' in %Export_Cache, as that's only used
to deal with exported functions. The variable %Config is special-cased.

On this platform, cachegrind shows a 1% reduction in instruction count and
L1 cache references as a result.

11 years agoIn vars::import, avoid assigning to $pack, which is never read.
Nicholas Clark [Sat, 19 Jun 2010 21:43:41 +0000 (22:43 +0100)]
In vars::import, avoid assigning to $pack, which is never read.

On this platform, cachegrind shows a 0.5% reduction in instruction count and
L1 cache references as a result. A tiny gain for every instance of use vars ...;

11 years agoMerge the guts of warnings::import and warnings::bits into _bits.
Nicholas Clark [Sat, 19 Jun 2010 21:32:33 +0000 (22:32 +0100)]
Merge the guts of warnings::import and warnings::bits into _bits.

Additionally, removing the scope entry caused by the {} in the fast path of
&import reduces instruction count and L1 cache misses for warnings->import()
by 3%.