This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
8 years agoUpdate %Module::CoreList::released with new date
Stevan Little [Wed, 20 Jan 2016 15:38:10 +0000 (16:38 +0100)]
Update %Module::CoreList::released with new date

8 years agoupdated Module::CoreList (version has already been bumped in Changes and on modules...
Stevan Little [Wed, 20 Jan 2016 15:36:14 +0000 (16:36 +0100)]
updated Module::CoreList (version has already been bumped in Changes and on modules, this just adds the data)

8 years agofirst run through for the perldelta, more to come
Stevan Little [Wed, 20 Jan 2016 15:13:15 +0000 (16:13 +0100)]
first run through for the perldelta, more to come

8 years agoupdating copyright to 2016
Stevan Little [Tue, 19 Jan 2016 22:09:08 +0000 (23:09 +0100)]
updating copyright to 2016

8 years agoapparently that was now to best to deprecate an email address, this one is better
Stevan Little [Tue, 19 Jan 2016 22:59:03 +0000 (23:59 +0100)]
apparently that was now to best to deprecate an email address, this one is better

8 years agoupdating my own email, that address is no longer valid
Stevan Little [Tue, 19 Jan 2016 20:09:12 +0000 (21:09 +0100)]
updating my own email, that address is no longer valid

8 years agoUse lookup table for /\b{gcb}/ instead of switch stmt
Karl Williamson [Tue, 19 Jan 2016 06:14:10 +0000 (23:14 -0700)]
Use lookup table for /\b{gcb}/ instead of switch stmt

This changes the handling of Grapheme Cluster Breaks to be entirely via
a lookup table generated by regen/mk_invlists.pl.

This is easier to maintain and follow, as the generation of the table
follows the text of Unicode's UAX29 precisely, and loops can be used to
set every class up instead of having to name each explicitly, so it will
be easier to add new rules.  And the runtime switch statement is
replaced by a single line.

My gcc compiler optimized the previous version to an array lookup, but
this commit does it for not so clever compilers.

8 years agot/re/uniprops.t: Fix bug in diagnostic output
Karl Williamson [Tue, 19 Jan 2016 06:01:07 +0000 (23:01 -0700)]
t/re/uniprops.t: Fix bug in diagnostic output

An 'ord' was missing, so a warnings was raised.  This file is generated
by mktables

8 years agoAdd qr/\b{lb}/
Karl Williamson [Mon, 18 Jan 2016 21:25:02 +0000 (14:25 -0700)]
Add qr/\b{lb}/

This adds the final Unicode boundary type previously missing from core
Perl: the LineBreak one.  This feature is already available in the
Unicode::LineBreak module, but I've been told that there are portability
and some other issues with that module.  What's added here is a
light-weight version that is lacking the customizable features of the
module.

This implements the default Line Breaking algorithm, but with the
customizations that Unicode is expecting everybody to add, as their
test file tests for them.  In other words, this passes Unicode's fairly
extensive furnished tests, but wouldn't if it didn't include certain
customizations specified by Unicode beyond the basic algorithm.

The implementation uses a look-up table of the characters surrounding a
boundary to see if it is a suitable place to break a line.  In a few
cases, context needs to be taken into account, so there is code in
addition to the lookup table to handle those.

This should meet the needs for line breaking of many applications,
without having to load the module.

The algorithm is somewhat independent of the Unicode version, just like
the other boundary types.  Only if new rules are added, or existing ones
modified is there need to go in and change this code.  Otherwise,
running regen/mk_invlists.pl should be sufficient when a new Unicode
release is done to keep it up-to-date, again like the other Unicode
boundary types.

8 years agoMake tables for Perl-tailored Unicode Line_Break property
Karl Williamson [Sat, 16 Jan 2016 05:46:58 +0000 (22:46 -0700)]
Make tables for Perl-tailored Unicode Line_Break property

This is in preparation for adding qr/\b{lb}/.  This just generates the
tables, and is a separate commit because otherwise the diff listing is
confusing, as it doesn't realize there are only additions.  So, even
though the difference listing for this commit for the generated header
file is wildly crazy, the only changes in reality are the addition of
some tables for Line Break.

8 years agoregen/mk_invlists.pl: Use property's real values
Karl Williamson [Thu, 14 Jan 2016 23:33:59 +0000 (16:33 -0700)]
regen/mk_invlists.pl: Use property's real values

A future commit will tailor a property to use fewer values than Unicode
provides.  Currently we look at the official property, and croak if not
all the property values are there.  This commit instead looks at the
tailored property, the one that actually is being output.

8 years agomktables: Add field to constructor
Karl Williamson [Thu, 14 Jan 2016 22:08:58 +0000 (15:08 -0700)]
mktables: Add field to constructor

This allows a default value to be specified, to prepare for a later
commit.

8 years agoregen/mk_invlists.pl: Internal housekeeping
Karl Williamson [Sat, 16 Jan 2016 05:27:48 +0000 (22:27 -0700)]
regen/mk_invlists.pl: Internal housekeeping

This moves the name of a synthetic enum value to a better place in the
code.  The list it had been in is for a specific purpose that is not
applicable to synthetic values, though it worked.

But the new place is more logical, and can take advantage of the
previous commit which makes things in this place more predictable.

8 years agoregen/mk_invlists.pl: Keep internal enum values last
Karl Williamson [Sat, 16 Jan 2016 05:20:30 +0000 (22:20 -0700)]
regen/mk_invlists.pl: Keep internal enum values last

Most Unicode properties have a finite set of possible values.  Most, for
example, are binary, they can be either true or false, but nothing in
between.  Others have more possibilities (and still others, like Name,
are not restricted at all.  The Word Break property, for example can
take on a restricted set of values, currently 19 in all, that indicate
what type, for purposes of word breaking, the character is.

In implementing things like Word Break, Perl adds some internal-only
values, like EDGE, which means matching like /^/ or /$/.  By using
these synthetic values, we don't need to have extra code for edge
cases.

These properties are implemented using C enums.  Prior to this commit,
the actual numeric values for each enum was mostly arbitrary, with the
synthetic ones intermixed with the offical ones.  This commit changes
that so the synthetic ones are all higher numbers than any official ones,
and the order they appear in the generating code will be the numerical
order they have, so that the program has control of their order.

8 years agoremove vestigial uses of PRIVSHIFT
David Mitchell [Tue, 19 Jan 2016 15:19:48 +0000 (15:19 +0000)]
remove vestigial uses of PRIVSHIFT

This is a hangover from when a magic (e.g. tied) var, after calling
mg_get(), would only set the private (SVp_IOK,SVp_NOK,SVp_POK)
flags on the result, indicating that although it now had a valid integer
value (say), it wasn't a "real" integer. This was achieved by, after
calling mg_get(), shifting all the public flags by PRIVSHIFT to convert
them to private flags.

Since 5.18.0, that's not been the case (i.e. mg_get() on a tied var leaves
Svf_IOK etc set). But there are still a couple of vestigial uses of
PRIVSHIFT in the core, and this commit removes them.

For one of them, I added a test that shows that (in slightly contrived
circumnstances), it was possible for a SVp_IOK NV to be upgraded
to a SVf_IOK int on return from localisation, losing its fractional
component.

The other one, in S_sv_unmagicext_flags(), only seemed to get called
when setting a new value (e.g. from mg_set()), so its unlikely that such a
var would still have private flags set that could be incorrectly upgraded
to public.

8 years agoRemove B::Section from B.pm
Todd Rinaldo [Thu, 1 Oct 2015 23:05:49 +0000 (18:05 -0500)]
Remove B::Section from B.pm

This package is a vestigial reminant of B::C's removal
in de1254415ffeb03b so is safe to be removed.

8 years agolib/ExtUtils/typemap: silence g++ warning.
David Mitchell [Tue, 19 Jan 2016 12:23:08 +0000 (12:23 +0000)]
lib/ExtUtils/typemap: silence g++ warning.

From the added code comment:

    The weird way this is written is because g++ is dumb
    enough to warn "comparison is always false" on something
    like:

    sizeof(a) > sizeof(b) && a > B_t_MAX

    (where the LH condition is false)

8 years agoremove deprecated PL_timesbuf
Daniel Dragan [Tue, 11 Aug 2015 18:17:52 +0000 (14:17 -0400)]
remove deprecated PL_timesbuf

Saves memory in interp struct.

8 years agoRemove unused sub from strict vs. multideref test
Dagfinn Ilmari Mannsåker [Sun, 17 Jan 2016 15:09:46 +0000 (15:09 +0000)]
Remove unused sub from strict vs. multideref test

8 years agoFix broken fix for RT #127212
Aaron Crane [Sun, 17 Jan 2016 14:41:44 +0000 (14:41 +0000)]
Fix broken fix for RT #127212

As ilmari++ points out, the fix didn't work on builds without
PERL_IMPLICIT_CONTEXT (including non-threaded, non-multiplicity) or
PERL_DEBUG_READONLY_COW.

8 years agoFix version numbers in intrpvar.h comments
Aaron Crane [Sun, 17 Jan 2016 14:16:10 +0000 (14:16 +0000)]
Fix version numbers in intrpvar.h comments

There are two version numbers in intrpvar.h that have been repeatedly but
confusingly bumped by an older version of Porting/bump-perl-version. Now
that the porting script ignores intrpvar.h, it's better to restore the
version numbers to the way they were when they were originally added. The
comment for PERL_LAST_5_18_0_INTERP_MEMBER was introduced in commit
d399cf59bde32e412ae99791ae46a871c7337b42, and the comments for PL_timesbuf
was introduced in 25983af42cdcf2dc1fea6717dac7aac441b6301d.

8 years agoExempt intrpvar.h from bump-perl-version changes
Aaron Crane [Sun, 17 Jan 2016 14:09:28 +0000 (14:09 +0000)]
Exempt intrpvar.h from bump-perl-version changes

Both of the version numbers currently listed in intrpvar.h relate to past
and present plans for changes; bumping them for each monthly blead release
has merely left the comments in the file harder to understand.

8 years agoRT #127212: retain binary compatibility across plain/DEBUGGING
Aaron Crane [Sun, 17 Jan 2016 12:47:56 +0000 (12:47 +0000)]
RT #127212: retain binary compatibility across plain/DEBUGGING

Niko Tyni of Debian points out that the size of the interpreter structure
differs between plain and -DDEBUGGING builds, and that this breaks binary
compatibility of XS modules between such builds. Making the definition of
PL_memory_debug_header unconditional on PERL_TRACK_MEMPOOL (which itself is
defined only on debug builds) eliminates this needless incompatibility.

There is some confusion about whether plain and debug builds are expected to
be compatible. Commit 1e8125c621275d18c74bc8dae3bfc3c03929fe1e (July 2010)
refers in passing to "binary incompatible perls with the same API version
(i.e. the same perl version configured with and without DEBUGGING)". But
f2b88940d815760ad254d35a0ee1eb2ed8ce7762 (November 2009) says explicitly
that "-DDEBUGGING and not need to be binary compatible with each other", and
I think this explicit statement is a better example to follow.

Further, this compatibility is clearly useful for our downstream packagers
(as reported by Niko), and for any users who'd like to be able to use a
debug build for tracking down problems (including those encountered while
using modules with XS parts).

8 years agoperldelta for fix in e1ccd22
Ricardo Signes [Sun, 17 Jan 2016 02:48:27 +0000 (21:48 -0500)]
perldelta for fix in e1ccd22

8 years agoEnforce strict 'subs' in multideref optimisation
Dagfinn Ilmari Mannsåker [Mon, 21 Dec 2015 19:25:32 +0000 (19:25 +0000)]
Enforce strict 'subs' in multideref optimisation

The code that checks constant keys and turns them into HEKs swallowed
the OP_CONST before the strictness checker could get to it, thus
allowing barewords when they should not be.

8 years agoHave Perl_vmssetenv always use setenv/unsetenv.
Craig A. Berry [Sat, 16 Jan 2016 23:59:22 +0000 (17:59 -0600)]
Have Perl_vmssetenv always use setenv/unsetenv.

VMS has had setenv and unsetenv since v7.0, released in 1996.  We
no longer support versions even that old so there is no reason to
provide for their absence nor to avoid using unsetenv.

N.B.  The unsetenv implementation still returns void even though
POSIX has required an int return value for some time.  If that
gets fixed, we'll need an additional change here.

8 years agoC99 math under C++ on VMS.
Craig A. Berry [Sat, 16 Jan 2016 18:34:15 +0000 (12:34 -0600)]
C99 math under C++ on VMS.

There is a group of math functions prototyped in math.h, but for
some reason guarded by an ifdef that makes them visible only under
C, not C++.  That causes the build to die in the POSIX extension
with a lot of undeclared function errors when building with C++.

While it's kind of messy to have to maintain a private copy of
the prototypes provided by a system-suppled header, it works, and
is a lot easier than trying to probe for each one of these in
configure.com.

So put the relevant prototypes in vmsish.h, make them visible only
to C++, and make sure they are within the extern "C" declaration.

8 years agoembed.fnc: fix some back indentation
David Mitchell [Fri, 15 Jan 2016 17:27:02 +0000 (17:27 +0000)]
embed.fnc: fix some back indentation

whitespace-only change

8 years agoembed.fnc and regen: detect duplicate fn defs
David Mitchell [Fri, 15 Jan 2016 17:25:28 +0000 (17:25 +0000)]
embed.fnc and regen: detect duplicate fn defs

Detect if the same function is defined more than once in embed.fnc
- but only outside of any #if..#endif nesting, since that might include
alternative definitions of the same function.

8 years agore/uniprops: Fix to work on early Unicodes
Karl Williamson [Thu, 14 Jan 2016 16:15:13 +0000 (09:15 -0700)]
re/uniprops: Fix to work on early Unicodes

The guts of this test are generated by mktables.  Commit
f1f6961f5a6fd77a3e3c36f242f1b72ce5dfe205 broke early Unicode versions
handling.

8 years agoUnicode::UCD: Fix to work on very early Unicode versions
Karl Williamson [Thu, 14 Jan 2016 16:12:32 +0000 (09:12 -0700)]
Unicode::UCD: Fix to work on very early Unicode versions

Prior to this commit, it would not compile because 2 properties weren't
defined in very early Unicodes.

8 years agoDon't generate EBCDIC POSIX-BC tables
Karl Williamson [Wed, 13 Jan 2016 19:31:09 +0000 (12:31 -0700)]
Don't generate EBCDIC POSIX-BC tables

This commit comments out the code that generates these tables.  This is
trivially reversible.  We don't believe anyone is using Perl and
POSIX-BC at this time, and this saves time during development when
having to regenerate these tables, and makes the resulting tar ball
smaller.

See thread beginning at
http://nntp.perl.org/group/perl.perl5.porters/233663

8 years agoPathTools: use mkpath instead of make_path in tests
Ricardo Signes [Thu, 14 Jan 2016 13:17:44 +0000 (08:17 -0500)]
PathTools: use mkpath instead of make_path in tests

make_path doesn't exist until File::Path 2.08, which didn't ship
with core until v5.12.  Adding a prerequisite on File::Path would
put us one step closer to a horrible circular dependency between
non-core PathTools and non-core File::Path.  This avoids that by
using the ancient and adequate mkpath.

8 years agoperldelta for 61d30259f32e
Tony Cook [Wed, 13 Jan 2016 23:09:10 +0000 (10:09 +1100)]
perldelta for 61d30259f32e

I don't think the two separate patches need separate entries

8 years ago[perl #123737] handle a non-identifer after @ better for a missing op
Tony Cook [Tue, 12 Jan 2016 04:39:00 +0000 (15:39 +1100)]
[perl #123737] handle a non-identifer after @ better for a missing op

Previously this would assert().

8 years agoNo List::Util under miniperl.
Jarkko Hietaniemi [Wed, 13 Jan 2016 18:24:28 +0000 (13:24 -0500)]
No List::Util under miniperl.

8 years agoPathTools-3.62 is now on CPAN
Steve Hay [Tue, 12 Jan 2016 13:34:39 +0000 (13:34 +0000)]
PathTools-3.62 is now on CPAN

8 years agoData::Dumper: handle huge inputs on 64-bit platforms
Aaron Crane [Tue, 12 Jan 2016 00:05:40 +0000 (00:05 +0000)]
Data::Dumper: handle huge inputs on 64-bit platforms

Several quantities relating to string escaping were being stored in 32-bit
variables. On a 64-bit system, pathological inputs could overflow the
available space and cause incorrect output.

The test for this requires about 10 GB of memory, so it is disabled except
when PERL_TEST_MEMORY is set to at least 10.

There are other questionable-looking uses of I32 in Dumper.xs, but they
don't seem to be exploitable. (It helps, for example, that the core hash API
restricts key lengths to 2**31-1.) That said, it may be worth auditing the
code rather more carefully for potential problems.

8 years agoRevert "add Changes file for PathTools"
Ricardo Signes [Mon, 11 Jan 2016 15:12:41 +0000 (10:12 -0500)]
Revert "add Changes file for PathTools"

This reverts commit c0db05918c68753af58edd2906e7dfbd8d6a4e26.

8 years agoperldelta: two CVE notices
Ricardo Signes [Mon, 11 Jan 2016 14:20:12 +0000 (09:20 -0500)]
perldelta: two CVE notices

8 years agoadd Changes file for PathTools
Ricardo Signes [Mon, 11 Jan 2016 13:41:43 +0000 (08:41 -0500)]
add Changes file for PathTools

8 years agoavoid invalid memory access in MapPath[AW]
Tony Cook [Wed, 16 Dec 2015 00:13:30 +0000 (11:13 +1100)]
avoid invalid memory access in MapPath[AW]

This issue was assigned CVE-2015-8608. [perl #126755]

8 years agoPathTools: bump version for CVE-2015-8607 fix
Ricardo Signes [Mon, 11 Jan 2016 12:57:52 +0000 (07:57 -0500)]
PathTools: bump version for CVE-2015-8607 fix

8 years agoensure File::Spec::canonpath() preserves taint
Tony Cook [Mon, 14 Dec 2015 23:56:54 +0000 (10:56 +1100)]
ensure File::Spec::canonpath() preserves taint

Previously the unix specific XS implementation of canonpath() would
return an untainted path when supplied a tainted path.

For the empty string case, newSVpvs() already sets taint as needed on
its result.

This issue was assigned CVE-2015-8607.  [perl #126862]

8 years agoperldelta for 6146d9e1c87d
Tony Cook [Mon, 11 Jan 2016 04:19:41 +0000 (15:19 +1100)]
perldelta for 6146d9e1c87d

8 years ago[perl #123788] update isa magic stash records when *ISA is deleted
Tony Cook [Mon, 11 Jan 2016 03:45:43 +0000 (14:45 +1100)]
[perl #123788] update isa magic stash records when *ISA is deleted

8 years ago[perl #123788] tests for making in in-use @ISA not an @ISA anymore
Tony Cook [Thu, 5 Mar 2015 04:17:41 +0000 (15:17 +1100)]
[perl #123788] tests for making in in-use @ISA not an @ISA anymore

8 years agoperldelta for a7162bf74f38
Tony Cook [Sun, 10 Jan 2016 23:46:50 +0000 (10:46 +1100)]
perldelta for a7162bf74f38

8 years ago[perl #123737] delay reporting a missing operator for arrays
Tony Cook [Sun, 10 Jan 2016 23:42:31 +0000 (10:42 +1100)]
[perl #123737] delay reporting a missing operator for arrays

Previously it was reported at the beginning of the '@' case, without
even skipping the @ symbol.

Make the code more similar to the scalar case and try to parse an
identifier first.

8 years agoperldelta for 0072721ceb71, beb08a1e6d63, 5c1db5695506, 2f9365dc3b09
Tony Cook [Sun, 10 Jan 2016 22:47:40 +0000 (09:47 +1100)]
perldelta for 0072721ceb71beb08a1e6d635c1db56955062f9365dc3b09

8 years ago[perl #126633] fix some corner cases in OPpASSIGN_COMMON_* handling
Tony Cook [Sun, 10 Jan 2016 22:33:34 +0000 (09:33 +1100)]
[perl #126633] fix some corner cases in OPpASSIGN_COMMON_* handling

8 years ago[perl #126633] check children of OA_DANGEROUS ops for common scalars
Dave Mitchell [Thu, 7 Jan 2016 00:36:10 +0000 (11:36 +1100)]
[perl #126633] check children of OA_DANGEROUS ops for common scalars

Tony Cook: added tests

8 years ago[perl #126633] copy anything gmagical on the right
Tony Cook [Tue, 8 Dec 2015 00:19:48 +0000 (11:19 +1100)]
[perl #126633] copy anything gmagical on the right

It could retrieve something we're setting on the left.

8 years ago[perl #126633] if we see smagic on the left copy the rest on the right
Tony Cook [Mon, 7 Dec 2015 05:24:52 +0000 (16:24 +1100)]
[perl #126633] if we see smagic on the left copy the rest on the right

8 years ago[perl #126633] TODO tests
Tony Cook [Mon, 7 Dec 2015 05:22:38 +0000 (16:22 +1100)]
[perl #126633] TODO tests

8 years agofix more file paths
Lukas Mai [Sun, 10 Jan 2016 16:37:22 +0000 (17:37 +0100)]
fix more file paths

8 years agoHiRes.t no longer exists
Tom Hukins [Sun, 10 Jan 2016 16:28:39 +0000 (16:28 +0000)]
HiRes.t no longer exists

Specify which Time::HiRes test scripts might fail under system load.

8 years agoFix file paths
Tom Hukins [Thu, 10 Dec 2015 13:30:22 +0000 (13:30 +0000)]
Fix file paths

8 years agoTailor \b{wb} for Perl
Karl Williamson [Tue, 5 Jan 2016 23:12:55 +0000 (16:12 -0700)]
Tailor \b{wb} for Perl

The Unicode \b{wb} matches the boundary between space characters in a
span of them.  This is opposite of what \b does, and is counterintuitive
to Perl expectations.  This commit tailors \b{wb} to not split up spans
of white space.

I have submitted a request to Unicode to re-examine their algorithm, and
this has been assigned to a subcommittee to look at, but the result
won't be available until after 5.24 is done.  In any event, Unicode
encourages tailoring for local conditions.

8 years agomktables: Add constructor parameter
Karl Williamson [Tue, 5 Jan 2016 22:58:07 +0000 (15:58 -0700)]
mktables: Add constructor parameter

This new parameter will be used in the next commit, adds a special case
for handling tables that the perl interpreter relies on when compiling
a Unicode version earlier than the property is defined by Unicode.  This
will allow for tailoring the property to Perl's needs in the next commit

8 years agoregexec.c: Add a parameter to a static function
Karl Williamson [Wed, 6 Jan 2016 17:21:02 +0000 (10:21 -0700)]
regexec.c: Add a parameter to a static function

This will allow new behavior, needed in a future commit.

8 years agoperlrebackslash: White-space, clarification
Karl Williamson [Thu, 7 Jan 2016 18:31:18 +0000 (11:31 -0700)]
perlrebackslash: White-space, clarification

8 years agoDeparse.pm lives in lib/B now, not dist/B-Deparse
Lukas Mai [Fri, 8 Jan 2016 01:29:09 +0000 (02:29 +0100)]
Deparse.pm lives in lib/B now, not dist/B-Deparse

8 years agoperlreftut: lots of small changes
Lukas Mai [Thu, 7 Jan 2016 19:34:29 +0000 (20:34 +0100)]
perlreftut: lots of small changes

- use I<...> for italics/emphasis, not '...'
- "Make Rule 2" was missing its "=head3" that marks it as a section
- consistently use 2 spaces for indentation
- add internal hyperlinks to the Make/Use Rules
- consistently use C<...> to refer to variables
- consistently use 'for' (not 'foreach')
- hyperlink push/ref to their documentation in perlfunc
- hyperlink ==/eq to their documentation in perlop
- hyperlink "use strict 'refs'" to strict
- remove mention of "soft reference" because according to perlref that
  term has been officially discouraged since 1996

8 years agoperlreftut: make example strict clean
Lukas Mai [Thu, 7 Jan 2016 18:43:52 +0000 (19:43 +0100)]
perlreftut: make example strict clean

Also change the indentation from chomp from 1 back to 2 spaces. (It was
changed from 2 to 1 in a29d1a25ab4 in 2003 but no reason was given.)

8 years agolib/utf8.pm: pod changes
Karl Williamson [Thu, 7 Jan 2016 16:10:10 +0000 (09:10 -0700)]
lib/utf8.pm: pod changes

See thread beginning at
http://nntp.perl.org/group/perl.perl5.porters/233125

8 years agoUpgrade Pod-Usage from version 1.67 to 1.68
Steve Hay [Thu, 7 Jan 2016 12:57:33 +0000 (12:57 +0000)]
Upgrade Pod-Usage from version 1.67 to 1.68

8 years agoUpgrade Test-Harness from version 3.35 to 3.36
Steve Hay [Thu, 7 Jan 2016 12:44:56 +0000 (12:44 +0000)]
Upgrade Test-Harness from version 3.35 to 3.36

8 years agoperldelta for 0cd52e23ae64
Tony Cook [Thu, 7 Jan 2016 05:27:08 +0000 (16:27 +1100)]
perldelta for 0cd52e23ae64

8 years ago[perl #126042] handle scalar context for a missing import/unimport call
Tony Cook [Wed, 4 Nov 2015 00:03:36 +0000 (11:03 +1100)]
[perl #126042] handle scalar context for a missing import/unimport call

8 years agogive Win32 miniperl a real getcwd for build perf
Daniel Dragan [Thu, 10 Dec 2015 23:35:34 +0000 (18:35 -0500)]
give Win32 miniperl a real getcwd for build perf

getcwd() is now 605x faster for Win32 miniperl.
------------------------------
use Cwd;
Cwd::getcwd() for(0..10000);
------------------------------
before
C:\p523\src\win32>timeit -f t.dat ..\miniperl -I..\lib t.pl
Version Number:   Windows NT 6.1 (Build 7601)
Exit Time:        2:03 am, Thursday, December 10 2015
Elapsed Time:     0:01:12.438
Process Time:     0:00:14.289
System Calls:     5802378
Context Switches: 1455066
Page Faults:      5250724
Bytes Read:       76809789
Bytes Written:    5278717
Bytes Other:      10407004
after
C:\p523\src\win32>timeit -f t.dat ..\miniperl -I..\lib t.pl
Version Number:   Windows NT 6.1 (Build 7601)
Exit Time:        1:20 am, Thursday, December 10 2015
Elapsed Time:     0:00:00.119
Process Time:     0:00:00.124
System Calls:     4658
Context Switches: 540
Page Faults:      1127
Bytes Read:       99074
Bytes Written:    0
Bytes Other:      12888

8 years agoperlgit: Fix too long verbatim line
Karl Williamson [Wed, 6 Jan 2016 22:34:15 +0000 (15:34 -0700)]
perlgit: Fix too long verbatim line

8 years agopodcheck: Improve NAME detection
Karl Williamson [Wed, 6 Jan 2016 22:33:09 +0000 (15:33 -0700)]
podcheck: Improve NAME detection

If the =head1 NAME section contained an =for block, that caused podcheck
to not detect the defined NAME.

8 years agomktables: Fix /l testing in re/uniprops.t
Karl Williamson [Wed, 6 Jan 2016 20:00:37 +0000 (13:00 -0700)]
mktables: Fix /l testing in re/uniprops.t

The utf8 locale testing was not getting done.

8 years agoDeparse the /n flag on regexes [perl #127189]
Lukas Mai [Wed, 6 Jan 2016 14:16:16 +0000 (15:16 +0100)]
Deparse the /n flag on regexes [perl #127189]

8 years agoverses -> versus
Lukas Mai [Wed, 6 Jan 2016 13:16:40 +0000 (14:16 +0100)]
verses -> versus

8 years agopodlators has been upgraded to version 4.04
Steve Hay [Wed, 6 Jan 2016 08:25:08 +0000 (08:25 +0000)]
podlators has been upgraded to version 4.04

Remove the Changes file that didn't need to be added; also remove the
VERSION file, which I see no need for -- Makefile.PL says that the distro's
version comes from lib/Pod/Man.pm, and in fact all the .pm files have the
same version anyway.

Note: Porting/Maintainers.pl is out of sync in its notes about pod2man and
pod2text (and doesn't note that Makefile.PL is locally modified), but
that's about to change in 4.05 anyway, so no point in fixing right now.

8 years agoUpgrade Math-BigInt from version 1.999714 to 1.999715
Steve Hay [Wed, 6 Jan 2016 08:16:51 +0000 (08:16 +0000)]
Upgrade Math-BigInt from version 1.999714 to 1.999715

8 years agoUpgrade libnet from version 3.07 to 3.08
Steve Hay [Wed, 6 Jan 2016 08:14:36 +0000 (08:14 +0000)]
Upgrade libnet from version 3.07 to 3.08

8 years agofix a typo in perl5233delta.pod
Tony Cook [Wed, 6 Jan 2016 05:16:04 +0000 (16:16 +1100)]
fix a typo in perl5233delta.pod

Pointed out by Andrew Rodland (hobbs) on #p5p

8 years ago[perl #126240] avoid leaking memory when setting $ENV{foo} on darwin
Tony Cook [Wed, 6 Jan 2016 03:27:46 +0000 (14:27 +1100)]
[perl #126240] avoid leaking memory when setting $ENV{foo} on darwin

My change in e396210 was incomplete, that change was intended to
force use of setenv()/unsetenv() on Darwin, but ended up using putenv()
instead, which is a leaky mechanism.

Added darwin to the list of many others that work better with setenv()/
unsetenv().

8 years agoperlsyn: change = to == in conditional in do/while example
Lukas Mai [Tue, 5 Jan 2016 23:35:24 +0000 (00:35 +0100)]
perlsyn: change = to == in conditional in do/while example

... also remove unused LOOP label from 'last' example, mention 'redo'
(works like 'next' in this case), add example that combines
'next'/'last' (and requires the label).

8 years agoUpgrade Unicode-Normalize from version 1.24 to 1.25
Steve Hay [Tue, 5 Jan 2016 17:37:21 +0000 (17:37 +0000)]
Upgrade Unicode-Normalize from version 1.24 to 1.25

8 years agoUpgrade bignum from version 0.41 to 0.42
Steve Hay [Tue, 5 Jan 2016 13:12:45 +0000 (13:12 +0000)]
Upgrade bignum from version 0.41 to 0.42

8 years agoSilence t/porting/cmp_version.t after Math-Big* upgrades
Steve Hay [Mon, 4 Jan 2016 14:15:43 +0000 (14:15 +0000)]
Silence t/porting/cmp_version.t after Math-Big* upgrades

8 years agoUpgrade Math-BigRat from version 0.260801 to 0.260802
Steve Hay [Mon, 4 Jan 2016 13:55:50 +0000 (13:55 +0000)]
Upgrade Math-BigRat from version 0.260801 to 0.260802

(This maintains the one minor divergence between blead and cpan. The blead
version first appeared in 50a54b125c. I haven't examined whether this
difference needs to remain, or whether we can switch to the cpan version.)

8 years agoUpgrade Math-BigInt-FastCalc from version 0.38 to 0.40
Steve Hay [Mon, 4 Jan 2016 13:33:22 +0000 (13:33 +0000)]
Upgrade Math-BigInt-FastCalc from version 0.38 to 0.40

8 years agoUpgrade Math-BigInt from version 1.999710 to 1.999714
Steve Hay [Mon, 4 Jan 2016 13:32:30 +0000 (13:32 +0000)]
Upgrade Math-BigInt from version 1.999710 to 1.999714

8 years agoperlgit: many small changes
Lukas Mai [Tue, 5 Jan 2016 12:04:24 +0000 (13:04 +0100)]
perlgit: many small changes

- verbatimize a paragraph of sample commands
- grammar: sent -> send
- consistently hyperlink all email addresses
- hyperlink RT tickets
- hyperlink commit hashes
- consistently refer to bisect.pl as F<Porting/bisect.pl>
- add F< > to things that look like filenames

8 years agoclarify meaning of waitpid returning 0 [perl #127080]
Lukas Mai [Fri, 1 Jan 2016 14:45:47 +0000 (15:45 +0100)]
clarify meaning of waitpid returning 0 [perl #127080]

8 years agoexplain meaning of negative PIDs in waitpid [perl #127080]
Lukas Mai [Fri, 1 Jan 2016 14:35:58 +0000 (15:35 +0100)]
explain meaning of negative PIDs in waitpid [perl #127080]

8 years ago[perl #126922] avoid access to uninitialized memory in win32 crypt()
Tony Cook [Thu, 17 Dec 2015 00:15:31 +0000 (11:15 +1100)]
[perl #126922] avoid access to uninitialized memory in win32 crypt()

Previously the Win32 crypt implementation() would access the first
and second characters of the salt, even if the salt was zero length.

Add validation that will detect both a short salt and invalid
characters in the salt.

8 years agoAdd Configure support for fdclose() for [perl #126847].
Andy Dougherty [Wed, 30 Dec 2015 03:58:51 +0000 (22:58 -0500)]
Add Configure support for fdclose() for [perl #126847].

This patch also adjusts the generated files suggested by
Porting/checkcfgvar.pl.

8 years agoPATCH: Re: [perl #126847] fdclose(3) patch
Andy Dougherty [Wed, 30 Dec 2015 03:47:42 +0000 (22:47 -0500)]
PATCH: Re: [perl #126847] fdclose(3) patch

This patch uses the fdclose() function from FreeBSD if it
is available.  It is based on the original patch supplied
by Mariusz Zaborski <oshogbo@FreeBSD.org> in the RT ticket.

The next patch will add Configure support for HAS_FDCLOSE.

8 years agoPorting/bench.pl: add --compact option
David Mitchell [Mon, 4 Jan 2016 13:15:19 +0000 (13:15 +0000)]
Porting/bench.pl: add --compact option

With this, you specify which perl executable you want the results for,
and it will display the result in a much more compact form than when
displaying the results for all perls, with just one line per test.

8 years agoPorting/bench.pl: preserve test order
David Mitchell [Mon, 4 Jan 2016 11:47:18 +0000 (11:47 +0000)]
Porting/bench.pl: preserve test order

In the absence of a --sort option, process and display the tests in the
order they appear in the test file, rather than in alphabetical order.

This is because the layout in the benchmark file usually follows some sort
of logical order

8 years agoRemove superfluous entry in checkAUTHORS.pl.
James E Keenan [Sun, 3 Jan 2016 23:00:17 +0000 (18:00 -0500)]
Remove superfluous entry in checkAUTHORS.pl.

8 years agoperldelta for 4732711e2548
Tony Cook [Sun, 3 Jan 2016 22:43:18 +0000 (09:43 +1100)]
perldelta for 4732711e2548

8 years agoRemove nm from libswanted
Andreas Koenig [Sun, 3 Jan 2016 07:40:33 +0000 (08:40 +0100)]
Remove nm from libswanted

Nm stood for "New Math" library in the context of 1994. 2014 a conflicting
library libnm appeared that has a network manager context.

8 years agoProvide additional email address for contributor Mattia Barbon.
James E Keenan [Sun, 3 Jan 2016 21:59:46 +0000 (16:59 -0500)]
Provide additional email address for contributor Mattia Barbon.