This is a live mirror of the Perl 5 development currently hosted at
11 years agoReorganize dist/threads
Jerry D. Hedden [Wed, 30 Jun 2010 15:15:50 +0000 (11:15 -0400)]
Reorganize dist/threads

Move to lib/ and remove Makefile.PL

11 years agocautionary note about "no VERSION"
Ricardo Signes [Tue, 6 Jul 2010 15:41:53 +0000 (11:41 -0400)]
cautionary note about "no VERSION"

Signed-off-by: David Golden <>
11 years agoChange of address for Bo Lindbergh
Bo Lindbergh [Tue, 6 Jul 2010 15:13:12 +0000 (17:13 +0200)]
Change of address for Bo Lindbergh

Signed-off-by: David Golden <>
11 years agoAdd Bo Lindburgh alternate email to
David Golden [Tue, 6 Jul 2010 12:27:13 +0000 (08:27 -0400)]
Add Bo Lindburgh alternate email to

11 years agoCode for allowing uppercase X/B in hexadecimal/binary numbers (#76296).
Bo Lindbergh [Sun, 4 Jul 2010 23:31:01 +0000 (01:31 +0200)]
Code for allowing uppercase X/B in hexadecimal/binary numbers (#76296).

Signed-off-by: David Golden <>
11 years agoTests for allowing uppercase X/B in hexadecimal/binary numbers (#76296).
Bo Lindbergh [Sun, 4 Jul 2010 22:04:46 +0000 (00:04 +0200)]
Tests for allowing uppercase X/B in hexadecimal/binary numbers (#76296).

Signed-off-by: David Golden <>
11 years agoClean up new Locale-Maketest test for use in core
David Golden [Tue, 6 Jul 2010 05:38:12 +0000 (01:38 -0400)]
Clean up new Locale-Maketest test for use in core

11 years agoLocale::Maketext external cache support
Todd Rinaldo [Tue, 6 Jul 2010 05:28:00 +0000 (01:28 -0400)]
Locale::Maketext external cache support

This patch with tests provides RO support for lexicon hashes in
Locale::Maketext.  This allows you to have GDBM language files owned by
root which can be accessed by non-root, but not altered.

If your lexicon is a tied hash the simple act of caching the compiled
value can be fatal.

For example a GDBM_File GDBM_READER tied hash will die with something

  gdbm store returned -1, errno 2, key "..." at ...

All you need to do is turn on caching outside of the lexicon hash itself
like so:

  sub init {
      my ($lh) = @_;
      $lh->{'use_external_lex_cache'} = 1;

And then instead of storing the compiled value in the lexicon hash it
will store it in $lh->{'_external_lex_cache'}

I've verified that blead is the authoritative location for
Locale::Maketext source.

Signed-off-by: David Golden <>
11 years agoreplace spaces with tabs in MANIFEST
David Golden [Tue, 6 Jul 2010 04:42:53 +0000 (00:42 -0400)]
replace spaces with tabs in MANIFEST

11 years agoDon't set strict for 'no 6;'
David Golden [Tue, 6 Jul 2010 04:33:31 +0000 (00:33 -0400)]
Don't set strict for 'no 6;'

Commit faee19b51573e81abe8811f1256a1d27777d6d04 was incomplete
and only stopped features from being enabled under 'no'.

This patch merges all 'use N.NN' type logic into a single if clause
and then checks version numbers in separate if statements within it.

11 years agoIgnore generated files from Time-HiRes
David Golden [Tue, 6 Jul 2010 04:10:03 +0000 (00:10 -0400)]
Ignore generated files from Time-HiRes

11 years agoEnsure new arg to watchdog() in t/ gets initialized
Jerry D. Hedden [Mon, 5 Jul 2010 18:50:04 +0000 (14:50 -0400)]
Ensure new arg to watchdog() in t/ gets initialized

11 years agoadded a "list" command to list open tickets that might have patches
Jesse Vincent [Mon, 5 Jul 2010 11:46:48 +0000 (12:46 +0100)]
added a "list" command to list open tickets that might have patches

11 years agowe can't depend on patches having filenames. Thanks git!
Jesse Vincent [Mon, 5 Jul 2010 11:41:28 +0000 (12:41 +0100)]
we can't depend on patches having filenames. Thanks git!

11 years agoFirst pass at a tool to help porters apply RT patches from the
Jesse Vincent [Mon, 5 Jul 2010 11:26:52 +0000 (12:26 +0100)]
First pass at a tool to help porters apply RT patches from the

11 years agoIn Perl_lex_start(), use newSVpvn_flags() to reduce source and object size.
Nicholas Clark [Mon, 5 Jul 2010 11:45:19 +0000 (12:45 +0100)]
In Perl_lex_start(), use newSVpvn_flags() to reduce source and object size.

11 years agoIn pp_regcomp and pp_entereval, use newSVpvn_flags() to simplify code.
Nicholas Clark [Mon, 5 Jul 2010 09:32:38 +0000 (10:32 +0100)]
In pp_regcomp and pp_entereval, use newSVpvn_flags() to simplify code.

11 years agoSpeed up viacode
Karl Williamson [Sat, 3 Jul 2010 18:31:54 +0000 (12:31 -0600)]
Speed up viacode

Capturing parentheses greatly slow down regexes, at least here.
On my machine, viacode took 27 seconds for the 22K Unicode names without
capturing parens; 45s with.

11 years agocharnames.t update because of rebase
Karl Williamson [Sat, 3 Jul 2010 17:55:57 +0000 (11:55 -0600)]
charnames.t update because of rebase

Use of t/lib/ caused some glitches; some behaviors of the
underlying is() functions changed, so revised .t to work under this

11 years agoCorrect perldelta for these changes
Karl Williamson [Sat, 3 Jul 2010 17:55:06 +0000 (11:55 -0600)]
Correct perldelta for these changes

11 years agoAdd vi hint for non-std format of
Karl Williamson [Sat, 3 Jul 2010 16:22:59 +0000 (10:22 -0600)]
Add vi hint for non-std format of

11 years agoMore charnames pod updates
Karl Williamson [Sat, 3 Jul 2010 16:22:04 +0000 (10:22 -0600)]
More charnames pod updates

11 years agocharnames: check for use bytes in vianame; efficiency
Karl Williamson [Sat, 3 Jul 2010 16:12:33 +0000 (10:12 -0600)]
charnames: check for use bytes in vianame; efficiency

When vianame returns a chr, it now verifies that it is legal under 'use
bytes'.  Update .t

An instance of taking of a substr of a huge string is needed only in an
error leg.  Move it to that leg for performance.

And make the message a subroutine so will be identical whenever raised.

11 years agoClean up charnames pod, including new changes
Karl Williamson [Thu, 1 Jul 2010 22:25:08 +0000 (16:25 -0600)]
Clean up charnames pod, including new changes

This patch brings the charnames pod up-to-date, and rewords it to
hopefully be more clear.

11 years agoClean up viacode, accept large aliases
Karl Williamson [Thu, 1 Jul 2010 22:22:14 +0000 (16:22 -0600)]
Clean up viacode, accept large aliases

This changes viacode to accept aliases that the user has defined beyond
the Unicode range.

11 years agoExtend \N{} enhancements to vianame()
Karl Williamson [Thu, 1 Jul 2010 22:06:51 +0000 (16:06 -0600)]
Extend \N{} enhancements to vianame()

This patch refactors charnames so that vianame and \N call the same
common subroutine so that they have as identical behavior as possible.

11 years agoBump version; some pod cleanup
Karl Williamson [Wed, 30 Jun 2010 21:27:39 +0000 (15:27 -0600)]
Bump version; some pod cleanup

11 years agocharnames: add CORE:: to hex()
Karl Williamson [Wed, 30 Jun 2010 21:19:39 +0000 (15:19 -0600)]
charnames: add CORE:: to hex()

Other programs do this; I don't know why just hex() needs to be
protected from user override, but I'm just copying prior art.

11 years agoAbandon plans to change viacode's return of unassigned
Karl Williamson [Wed, 30 Jun 2010 20:55:16 +0000 (14:55 -0600)]
Abandon plans to change viacode's return of unassigned

The BUGS section of the charnames pod said that it was a bug to return
undef for unassigned characters, whereas the real Unicode name is the
empty string.  demerphq noted that undef stringifies to the empty
string, so we are in fact in compliance with the standard.  This
clarifies the pod wording, removing the text from the BUGS section.

11 years agoAllow defining custom charnames to ordinals
Karl Williamson [Wed, 30 Jun 2010 20:42:59 +0000 (14:42 -0600)]
Allow defining custom charnames to ordinals

This adds the ability of a user to create a custom alias that maps to a
numeric ordinal value, instead of an official Unicode name.

The number of hashes went up so that is better to refer to them by a
name than a number, so I renamed them.

Also, viacode will return any defined user's alias for an otherwise
unamed code point.

This change is principally so that private use characters can be named
so it is more convenient to use them in Perl.

11 years agoAdd clarifying comments to charnames.t
Karl Williamson [Wed, 30 Jun 2010 19:48:33 +0000 (13:48 -0600)]
Add clarifying comments to charnames.t

11 years agoReword feedback request.
Karl Williamson [Wed, 30 Jun 2010 19:46:39 +0000 (13:46 -0600)]
Reword feedback request.

It's not clear to me what should be done about the problem of vianame
being bipolar.

11 years agoAdd a number of abbrs and variants to \N{}
Karl Williamson [Tue, 29 Jun 2010 18:54:33 +0000 (12:54 -0600)]
Add a number of abbrs and variants to \N{}

This patch adds the standard abbreviations for the control characters
(such as ACK, BEL, etc) to the repertoire that \N{} knows about.  It
also adds a few common variants of their full names, and the old names
for the 4 controls that Unicode has chosen not to have any names at all

The patch also adds all the abbreviations that Unicode lists in 5.2 for
longer characters, such as NBSP, SHY, LRE, ...

To preserve complete backward compatibilty for these and future changes,
user-defined aliases are now checked first, before these are.

As a performance enhancement, these aliases are mapped to their actual
code values instead of their full names which then had to be looked up
in the large table.  Now that is avoided, and the table is not loaded
at all until a name is encountered that is not one of these aliases.

The pod and .t are updated.

11 years agoRemove a release_manager_guide step since it's now been automated away
Jesse Vincent [Sun, 4 Jul 2010 15:47:34 +0000 (11:47 -0400)]
Remove a release_manager_guide step since it's now been automated away

11 years agoUpdate Makefile to regen META.yml as it regens other files in regen_all
Jesse Vincent [Sun, 4 Jul 2010 15:44:03 +0000 (11:44 -0400)]
Update Makefile to regen META.yml as it regens other files in regen_all

11 years agoMake the META.yml regen code use per the request in release_mananger_guide,
Jesse Vincent [Sun, 4 Jul 2010 15:40:33 +0000 (11:40 -0400)]
Make the META.yml regen code use per the request in release_mananger_guide,

11 years agoMissing AUTHORS will now generate failing tests. Removing the manual
Jesse Vincent [Sun, 4 Jul 2010 15:17:20 +0000 (11:17 -0400)]
Missing AUTHORS will now generate failing tests. Removing the manual
checkAUTHORS step from the release engineering guide.

11 years agoMake checkAUTHORS a test to further reduce the release burden
Jesse Vincent [Sun, 4 Jul 2010 15:15:35 +0000 (11:15 -0400)]
Make checkAUTHORS a test to further reduce the release burden

11 years agoFurther refactoring of checkAUTHORS
Jesse Vincent [Sun, 4 Jul 2010 15:14:55 +0000 (11:14 -0400)]
Further refactoring of checkAUTHORS

11 years agorefactoring checkAUTHORS in advance of testifcation
Jesse Vincent [Sun, 4 Jul 2010 14:38:50 +0000 (10:38 -0400)]
refactoring checkAUTHORS in advance of testifcation

11 years agoBring AUTHORS up to date
Jesse Vincent [Sun, 4 Jul 2010 14:25:02 +0000 (10:25 -0400)]
Bring AUTHORS up to date

11 years agoFix Digest-MD5 tests to run properly under core
Chris 'BinGOs' Williams [Sun, 4 Jul 2010 19:02:28 +0000 (20:02 +0100)]
Fix Digest-MD5 tests to run properly under core

11 years agoUpdate Digest-MD5 to CPAN version 2.40
Chris 'BinGOs' Williams [Sun, 4 Jul 2010 15:46:01 +0000 (16:46 +0100)]
Update Digest-MD5 to CPAN version 2.40


  2010-07-03   Gisle Aas <>

    Release 2.40

    Marc Pignat (1):
      Safer alignment test [RT#35823]

    Robin Barker (1):
      consting in new ext/

    Gisle Aas (1):
      Remove the MacOS branch of this test

11 years agoremove trailing space in cmpVERSION
David Golden [Sun, 4 Jul 2010 18:56:21 +0000 (14:56 -0400)]
remove trailing space in cmpVERSION

11 years agoMake Test::Harness source_handler.t use the build perl (%PERL_CORE%) on Win32.
George Greer [Sun, 4 Jul 2010 17:09:56 +0000 (13:09 -0400)]
Make Test::Harness source_handler.t use the build perl (%PERL_CORE%) on Win32.

11 years agoAdd Matt Johnson to AUTHORS.
Craig A. Berry [Sun, 4 Jul 2010 14:49:55 +0000 (09:49 -0500)]
Add Matt Johnson to AUTHORS.

11 years agodocs: updates for git-based
Matt Johnson [Sat, 3 Jul 2010 18:08:15 +0000 (19:08 +0100)]
docs: updates for git-based

Update the release_managers_guide.pod with the new command usage,
and remove the todo item

11 years agoUpdate Porting/ to use git
Matt Johnson [Sat, 3 Jul 2010 18:01:58 +0000 (19:01 +0100)]
Update Porting/ to use git

Update Porting/ to take a directory and a git tag,
rather than two directories, as suggested in perltodo.

11 years agoMake previous test fix conditional on the platform being Windows
Rafael Garcia-Suarez [Sun, 4 Jul 2010 11:31:57 +0000 (13:31 +0200)]
Make previous test fix conditional on the platform being Windows

11 years agoForce t/io/openpid.t to use the alarm() watchdog strategy.
George Greer [Sun, 4 Jul 2010 05:20:53 +0000 (01:20 -0400)]
Force t/io/openpid.t to use the alarm() watchdog strategy.

* The default watchdog strategy on Win32 doesn't work because the watchdog
is executed via subshell ("cmd /c perl -e '...'"). When the test finishes
and tries to kill the watchdog all it manages to do is whack cmd.exe and
the watchdog still fires, potentially killing an innocent process.

* Trying to use the fork() strategy instead causes openpid.t's test #9's
"ok" to be lost occasionally.  The message itself is generated by the 4th
child of the test and should go directly to stdout, but sometimes the
output vanishes for unexplained reasons.  This doesn't appear to happen
without the watchdog enabled.

* Using the alarm() watchdog strategy seems to not cause any badness.

11 years agoadd some comments to pp_concat
David Mitchell [Sat, 3 Jul 2010 16:01:33 +0000 (17:01 +0100)]
add some comments to pp_concat

make it clearer what type of concat each code branch handles

11 years handle not on a branch properly
David Mitchell [Sat, 3 Jul 2010 15:47:05 +0000 (16:47 +0100)] handle not on a branch properly

11 years agoavoid multiple FETCH/stringify on filetest ops
David Mitchell [Sat, 3 Jul 2010 14:41:34 +0000 (15:41 +0100)]
avoid multiple FETCH/stringify on filetest ops

some of the filetest operators could call mg_get and/or overload fallback
stringify multiple times

11 years agoadd my_[l]stat_flags(); make my_[l]stat() mathoms
David Mitchell [Sat, 3 Jul 2010 13:24:11 +0000 (14:24 +0100)]
add my_[l]stat_flags(); make my_[l]stat() mathoms

my_stat() and my_lstat() call get magic on the stack arg, so create _flags()
variants that allow us to control this. (I can't just change the signature
or the mg_get() behaviour since my_[l]stat() are listed as being in the
public API, even though they're undocumented.)

11 years agoPL_amagic_generation doesn't show overload loaded
David Mitchell [Sat, 3 Jul 2010 12:36:59 +0000 (13:36 +0100)]
PL_amagic_generation doesn't show overload loaded

PL_amagic_generation is non-zero even without the presence of
'use overload', so don't bother using it as a short-cut test of
whether we can skip AMAGIC processing

11 years agofix bad indentation in pp_regcomp
David Mitchell [Sat, 3 Jul 2010 12:24:08 +0000 (13:24 +0100)]
fix bad indentation in pp_regcomp

11 years agoavoid extra FETCHes on overloaded qr stringify
David Mitchell [Sat, 3 Jul 2010 12:17:40 +0000 (13:17 +0100)]
avoid extra FETCHes on overloaded qr stringify

/$tied/ called FETCH too many times if the FETCH returned an overloaded
object with no qr method, but with stringify fallback

11 years agooverload.t: clarify concat #FETCH expected
David Mitchell [Fri, 2 Jul 2010 21:06:49 +0000 (22:06 +0100)]
overload.t: clarify concat #FETCH expected

It turns out that the number of FETCHes for the fallback ($tied_ovld . foo)
just needed explaining, not fixing.

11 years agoremove double stringify-overload from $ovld .= foo
David Mitchell [Fri, 2 Jul 2010 20:33:01 +0000 (21:33 +0100)]
remove double stringify-overload from $ovld .= foo

There was a piece of code in pp_concat who's job it was to determine the
UT8ness of the LHS, and it did it in a heavy-handed way to cope with the
special case of a regexp (which is an RV pointing to REGEXP which might
be UTF8)

11 years agoeval: handle taint of overloaded/tied arg
David Mitchell [Wed, 23 Jun 2010 23:02:39 +0000 (00:02 +0100)]
eval: handle taint of overloaded/tied arg

string eval would check its arg for taint before processing magic, overload
etc. If the magic or overload returned a tainted value, it wouldn't
be detected. Fixes part of #75716.

11 years agoeval $overloaded can crash
David Mitchell [Tue, 22 Jun 2010 23:23:24 +0000 (00:23 +0100)]
eval $overloaded can crash

Perl_lex_start() assumes that the SV passed to it is a well-behaved
string that it can do PVX() stuff to. If it's actually a ref to an
overloaded object, it can crash and burn. Fixed by creating a stringified
copy of the SV if necessary.

11 years agofix tainting and overload
David Mitchell [Tue, 22 Jun 2010 16:03:12 +0000 (17:03 +0100)]
fix tainting and overload

Sometimes when an overload method returned a tainted value, that
taintedness got lost. This fixes #75716: overload removes tainting.

It also considerably expands the tied series of tests in overload.t.
It now taints the return value, and checks for correct taintedness.
It also tests against two overload packages: the new one only has fallback
methods, which affects the return path for the tainted value.

It now also compares the expected (non-tied, non-overload) expression
value against a overloaded version of that expression in addition to
versions where a tied var returned an overloaded object; e.g. in these
    1: 1 + $plain_value
    2: 1 + $overloaded_var
    3: 1 + $tied_scalar_that_returns_overloaded_value
    4: 1 + $tied_array_whose element_0_holds_an_overloaded_value[0]
then the value of expression 1 is compared against each of 2,3,4, whereas
before it was only compared against 3,4.

11 years agotaint-enable lib/overload.t
David Mitchell [Fri, 18 Jun 2010 21:45:45 +0000 (22:45 +0100)]
taint-enable lib/overload.t

Stick a -T at the top of lib/overload.t in preparation for adding some
taint tests later. This causes some of the current tests to fail, since
the FETCH count has changed: so we fix those up too. They change because
under taint, code like ${$x} is compiled as enter/gvsv/leave/rv2sv rather
than gvsv/rv2sv (see Perl_scope), and the leave creates a mortal copy of
the tied value, avoiding any further fetches.

11 years agoExporter version bump
Steffen Mueller [Sat, 3 Jul 2010 15:07:06 +0000 (17:07 +0200)]
Exporter version bump

After being modified by 9b86bb5cacfb65a283299b005919058f8a61701a.

11 years agoFix RT #74472 blocks Signal handling
Todd Rinaldo [Sat, 3 Jul 2010 13:32:08 +0000 (15:32 +0200)]
Fix RT #74472 blocks Signal handling overrides SIG{__WARN__}. This means It's not possible to
write a test to trap warning events for this error. Since all the line
seems to do is make the warning more verbose, I suggest it not be done
if someone has defined a custom signal. At the moment Test::NoWarnings
cannot trap these warnings because of this.

11 years agoSkip suid File::Copy tests on a nosuid partition
Ævar Arnfjörð Bjarmason [Thu, 13 May 2010 20:05:35 +0000 (20:05 +0000)]
Skip suid File::Copy tests on a nosuid partition

These tests were being skipped on OpenBSD, but nosuid partitions can
exist on other systems too. Now it just checks if it can create a suid
directory, if not the tests are skipped.

Perl builds without errors in a nosuid /tmp with this patch.

11 years agoAdjust 'make test.valgrind' to account for cpan/dist/ext separation.
George Greer [Fri, 2 Jul 2010 22:50:12 +0000 (18:50 -0400)]
Adjust 'make test.valgrind' to account for cpan/dist/ext separation.

Signed-off-by: H.Merijn Brand <>
11 years agoPlug more memory leaks in vms.c.
Craig A. Berry [Sat, 3 Jul 2010 00:04:35 +0000 (19:04 -0500)]
Plug more memory leaks in vms.c.

In Perl_rename() we were allocating the same thing twice.

In vms_fid_to_name() (used by realpath() and realname()), we had
another flagrant omission of freeing local storage.

11 years agoCorrect the version of the included Test-Harness in
Chris 'BinGOs' Williams [Fri, 2 Jul 2010 14:11:06 +0000 (15:11 +0100)]
Correct the version of the included Test-Harness in

11 years agoUpdate CPANPLUS to CPAN version 0.9005
Chris 'BinGOs' Williams [Fri, 2 Jul 2010 14:05:53 +0000 (15:05 +0100)]
Update CPANPLUS to CPAN version 0.9005


  Changes for 0.9005      Tue Jun 29 22:42:25 2010
  * Corrected spelling mistakes in POD, pointed out by H.Merijn Brand
  * Amend SQLite source engine to set SYNCHRONOUS pragma to OFF
  * Make sure that Selfupdate checks if CPANPLUS::Dist::Build is
    installed or not and update it if it is. Spotted by Ilmari
  * Apply a patch from Peter Ludikovsky RT #55782 that adds indexes
    to Source::SQLite

  Changes for 0.9004      Sat May  8 22:21:04 2010
  * Applied a patch from Schwern RT #53133 "test failure occurs if
    the build directory is symlinked"
  * Explicitly set the location of cpanp-run-perl when under PERL_CORE
    in t/inc/
  * Make sure that we find cpanp-run-perl in ../../utils when PERL_CORE
  * Apply a patch from Barbie [RT #56768], that fixes regex in
  * Fixed a typo in the POD for cpan2dist, pointed out by Babar
    (Olivier Raginel) on irc.
  * Add a BEGIN {} block to cpanp-run-perl this resolves RT #55964
    and RT #57106

  Changes for 0.9003      Mon Mar 15 13:51:12 2010
  * Resolve warnings when using blead perl, reported by Apocalypse RT #55501
  * Applied patch from Apocalypse RT #55541 that changes the
    behviour when a prereq on a core-only module is detected. We
    raise a warning now, but will proceed with the installation.
    This is how handles it.
  * Removed one duff mirror and an out-of-date mirror from
    our default mirror list. Replaced with fast-sync mirrors.

  Changes for 0.9002      Fri Mar 12 13:11:00 2010
  * Added support for CPAN Testers 2.0 (David Golden)

  Changes for 0.9001      Thu Dec 24 10:21:11 2009
  * RT #52988 Regression in Internals::Utils, reported by CRAKRJACK
  * Fix a regression with dist_type not being propagated

11 years agoMark UPSTREAM as 'cpan' for Digest-SHA at Mark Shelor's request.
Chris 'BinGOs' Williams [Fri, 2 Jul 2010 06:11:48 +0000 (07:11 +0100)]
Mark UPSTREAM as 'cpan' for Digest-SHA at Mark Shelor's request.

  Date: Thu, 01 Jul 2010 16:51:02 -0700
  User-Agent: Thunderbird (X11/20090817)
  To: "Chris 'BinGOs' Williams" <>
  Subject: Re: [Fwd: [ #58997] correct URL for SHA1 NIST test vectors]

  >Chris 'BinGOs' Williams wrote:

  >Speaking of which, the UPSTREAM flag is set to 'undef' for Digest-SHA
  >How should I mark Digest-SHA?

  I keep very close tabs on Digest-SHA, and would like to assure that the
  current version on CPAN (which I maintain) is the canonical one.
  Whenever blead suggests changes to Digest-SHA, I try to respond immediately.

  Cheers, Mark

11 years agoFix nasty memory leak in vms.c:Perl_flex_stat_int().
Craig A. Berry [Fri, 2 Jul 2010 00:47:34 +0000 (19:47 -0500)]
Fix nasty memory leak in vms.c:Perl_flex_stat_int().

Thanks to Mark Berryman in

  Message-id: <>

for the report and the fix.

11 years agot/lib/ can use caller to infer the name of the pragma under test.
Nicholas Clark [Thu, 1 Jul 2010 19:41:21 +0000 (20:41 +0100)]
t/lib/ can use caller to infer the name of the pragma under test.

This avoids needing to use a variable in package main to pass in information.
Also, remove an unnecessary $ENV{PERL5LIB} assignment cargo-culted into most
users of t/lib/common,pl, and remove the BEGIN block as the code it contained
doesn't need to run at BEGIN time.

11 years agoFix to MANIFEST in base
Chas. Owens [Thu, 1 Jul 2010 19:42:04 +0000 (20:42 +0100)]
Fix to MANIFEST in base

Signed-off-by: Chris 'BinGOs' Williams <>
11 years agoFix pthread include error for Time::Piece
H.Merijn Brand [Thu, 1 Jul 2010 17:05:03 +0000 (19:05 +0200)]
Fix pthread include error for Time::Piece

Oh, um, lovely. Did I really want to look at that code? I can only assume
that in *BSD the API for _strptime() is fixed. But it's static for us, so
it doesn't need to be fixed.

Does the appended patch fix it?

Nicholas Clark

Signed-off-by: H.Merijn Brand <>
11 years agoadd cherrymaint and git-deltatool to MANIFEST
David Golden [Thu, 1 Jul 2010 16:04:06 +0000 (12:04 -0400)]
add cherrymaint and git-deltatool to MANIFEST

11 years agoConvert zlib src from K&R functions declarations to ANSI C.
Nicholas Clark [Thu, 1 Jul 2010 15:54:10 +0000 (16:54 +0100)]
Convert zlib src from K&R functions declarations to ANSI C.

K&R declarations aren't valid C++, hence C++ builds choke. zlib defaults to
K&R (I infer for maximum portability), but helpfully the zlib distribution
provides a zlib2ansi script to convert the declarations.

11 years agoConvert subs.t to use t/lib/
Nicholas Clark [Thu, 1 Jul 2010 12:59:26 +0000 (13:59 +0100)]
Convert subs.t to use t/lib/

11 years agoConvert charnames.t to use t/lib/
Nicholas Clark [Thu, 1 Jul 2010 11:08:33 +0000 (12:08 +0100)]
Convert charnames.t to use t/lib/

11 years agoConvert strict.t to use t/lib/
Nicholas Clark [Thu, 1 Jul 2010 10:13:34 +0000 (11:13 +0100)]
Convert strict.t to use t/lib/

11 years agoConvert gmtime.t, localtime.t and overloading.t to Test::More.
Nicholas Clark [Thu, 1 Jul 2010 09:54:33 +0000 (10:54 +0100)]
Convert gmtime.t, localtime.t and overloading.t to Test::More.

11 years agoConvert DirHandle's tests to Test::More.
Nicholas Clark [Thu, 1 Jul 2010 09:32:03 +0000 (10:32 +0100)]
Convert DirHandle's tests to Test::More.

Remove a vestigial reference to MacOS.

11 years agoAdd additional notes regarding srand and forking
Brian Phillips [Wed, 30 Jun 2010 15:31:25 +0000 (10:31 -0500)]
Add additional notes regarding srand and forking

perldoc -f srand states that typical use requires no srand() to be
called.  This is true with the exception of forking where you may not
want the same seed across various child processes (i.e. mod_perl).
This patch simply adds a note reminding the reader of this fact and
more specifically states that srand should only be called once per
*process* (instead of the previous language of once per *script*).

Signed-off-by: Brian Phillips <>
11 years agoConvert Fcntl and PerlIO::encoding's tests to Test::More.
Nicholas Clark [Wed, 30 Jun 2010 19:30:14 +0000 (20:30 +0100)]
Convert Fcntl and PerlIO::encoding's tests to Test::More.

Remove one vestigial mention of MacOS.

11 years agoConvert POSIX's test to Test::More.
Nicholas Clark [Wed, 30 Jun 2010 18:58:53 +0000 (19:58 +0100)]
Convert POSIX's test to Test::More.

11 years agoFix MANIFEST to include new Test-Harness files added in 6d3136644eb73f7a0727d341c9093...
Andy Dougherty [Wed, 30 Jun 2010 17:10:15 +0000 (13:10 -0400)]
Fix MANIFEST to include new Test-Harness files added in 6d3136644eb73f7a0727d341c90937f4234835bf

11 years agoConvert Devel::Peek's test to Test::More.
Nicholas Clark [Wed, 30 Jun 2010 16:24:56 +0000 (17:24 +0100)]
Convert Devel::Peek's test to Test::More.

The flag change from 0x0 to 0x4 is because Test::More sets autoflush on STDOUT.

11 years agoMake the change to source_handler.t conditional on $ENV{PERL_CORE}.
Nicholas Clark [Wed, 30 Jun 2010 14:31:45 +0000 (15:31 +0100)]
Make the change to source_handler.t conditional on $ENV{PERL_CORE}.

175dcccfb62b30fa wrongly added '-I../../lib' unconditionally.

11 years agoUpdate IO-Compress to CPAN version 2.027
Chris 'BinGOs' Williams [Wed, 30 Jun 2010 09:06:53 +0000 (10:06 +0100)]
Update IO-Compress to CPAN version 2.027


  2.027 24 April 2010

      * Compress::Zlib
        Remove autoload code from
        [perl #74088]

  2.026 7 April 2010

      * IO::Uncompress::Zip
        - Some updates to IO::Compress::Zip documentation.
        - Fixed default setting for ExtAttr.

  2.025 27 March 2010

      * IO::Uncompress::Unzip
        The "Name" option wasn't documented.

      * Allow zlib version check to be disabled by setting
        TEST_SKIP_VERSION_CHECK environment variable.
        [RT #54510]

  2.024 7 January 2010

      * Compress::Zlib
        Get memGunzip & memGzip to set $gzerrno
        [RT# 47283]

      * Compress::Zlib
        Export memGunzip, memGzip and zlib_version on demand
        [RT# 52992]

      * examples/io/anycat
        This sample was using IO::Uncompress::AnyInflate. Much better to
        use IO::Uncompress::AnyUncompress.

  2.023 9 November 2009

      * IO::Compress::AnyUncompress
        Added support for lzma_alone & xz.

  2.022 9 October 2009

      * IO::Compress - Makefile.PL
        Fix for core.

11 years agoUpdate Compress-Raw-Bzip2 to CPAN version 2.027
Chris 'BinGOs' Williams [Wed, 30 Jun 2010 09:03:06 +0000 (10:03 +0100)]
Update Compress-Raw-Bzip2 to CPAN version 2.027


  2.027 24 April 2010

      * No Changes

  2.026 7 April 2010

      * No Changes

  2.025 27 March 2010

      * Documented the unused "verbosity" option in
        [RT# 54425]

  2.023 9 November 2009

      * Removed redundant bzip2 source files from the bzip2-src directory.
        [RT# 47225]

      * Fixed instance where $[ should have been $] in t/01bzip2.t
        Thanks to Robin Barker and zefram [RT #50764] for independantly
        spotting the issue.

11 years agoUpdate Compress-Raw-Zlib to CPAN version 2.027
Chris 'BinGOs' Williams [Wed, 30 Jun 2010 08:56:41 +0000 (09:56 +0100)]
Update Compress-Raw-Zlib to CPAN version 2.027


  2.027 24 April 2010

      * Updated to include zlib 1.2.5

  2.026 7 April 2010

      * Fixed definition of Z_TREES in Makefile.PL
        [RT #65293]

      * Fixed build issue with definition of off64_t not found on Solaris
        by modifying the zlib source - changed the symbol
        _LARGEFILE64_SOURCE to _LARGEFILE64_SOURCE_dummy in zconf.h,
        zlib.h and zutil.h
        [RT #56108]

  2.025 27 March 2010

      * Updated to include zlib 1.2.4

      * Allow zlib version check to be disabled by setting
        TEST_SKIP_VERSION_CHECK environment variable.
        [RT #54510]

  2.023 9 November 2009

      * fixed instance where $[ should have been $] in t/02zlib.t
        Thanks to Robin Barker and zefram [RT #50765] for independantly
        spotting the issue.

11 years agoStore xio_ifp in sv_u in the SV head, reducing XPVIO by 1 pointer.
Nicholas Clark [Wed, 30 Jun 2010 09:46:09 +0000 (10:46 +0100)]
Store xio_ifp in sv_u in the SV head, reducing XPVIO by 1 pointer.

When accessing a file handle for reading, this reduces pointer dereferences by
1, which will reduce CPU cache pressure.

As SVt_PVIO is also the default type provided to source filters, the code needs
to allow them to continue to use the sv_u for SvPVX(). Re-use the existing
IOf_FAKE_DIRP to signal this, as it's only set when a source filter is added.

11 years agoIn Perl_filter_del(), no need to NULL IoANY(datasv).
Nicholas Clark [Tue, 29 Jun 2010 21:15:45 +0000 (22:15 +0100)]
In Perl_filter_del(), no need to NULL IoANY(datasv).

Perl_sv_clear() understands the IOf_FAKE_DIRP flag, and when set won't treat
IoANY() as a a pointer to a directory handle that needs closing.

11 years agoOnly allow SvPVX() on SVt_PVIO when IOf_FAKE_DIRP is set.
Nicholas Clark [Mon, 28 Jun 2010 16:14:45 +0000 (17:14 +0100)]
Only allow SvPVX() on SVt_PVIO when IOf_FAKE_DIRP is set.

11 years agoNeeded cast to malloc return value in Piece.xs.
Craig A. Berry [Wed, 30 Jun 2010 03:30:12 +0000 (22:30 -0500)]
Needed cast to malloc return value in Piece.xs.

g++ said:

  Piece.xs:906: error: invalid conversion from  void*  to  char*

Reported by George Greer in:

Message-ID: <>

11 years agoupdate release manager instructions for a new perldelta
David Golden [Wed, 30 Jun 2010 02:40:03 +0000 (22:40 -0400)]
update release manager instructions for a new perldelta

11 years agorefresh vms/descrip_mms.template with buildtoc
David Golden [Wed, 30 Jun 2010 02:24:50 +0000 (22:24 -0400)]
refresh vms/descrip_mms.template with buildtoc

11 years agoretitle old perlXXXdelta files
David Golden [Wed, 30 Jun 2010 02:21:40 +0000 (22:21 -0400)]
retitle old perlXXXdelta files

11 years agoAdd perl5121delta to MANIEST and other files
David Golden [Wed, 30 Jun 2010 02:18:42 +0000 (22:18 -0400)]
Add perl5121delta to MANIEST and other files

Cherry picking this from 5.12.1 would lose all the 5.13.X additions, so
these edits have been made by hand.

11 years agoNote that we now include 2.27
Jesse Vincent [Thu, 13 May 2010 19:55:40 +0000 (15:55 -0400)]
Note that we now include 2.27
(cherry picked from commit 7ecbc3da3c049655fce6b77e81d08f2025e54c57)

Signed-off-by: David Golden <>