9 months agoUnicode-Normalize on CPAN is 1.26
Chris 'BinGOs' Williams [Sun, 23 Dec 2018 14:11:46 +0000 (14:11 +0000)] 
Unicode-Normalize on CPAN is 1.26

9 months agoUpdate DB_File to CPAN version 1.843
Chris 'BinGOs' Williams [Sun, 23 Dec 2018 14:10:06 +0000 (14:10 +0000)] 
Update DB_File to CPAN version 1.843


1.843 2 November 2018

   * hints file (sourced from
     Highlighed by Sevan Janiyan <>


9 months agoUpdate CPAN to CPAN version 2.22
Chris 'BinGOs' Williams [Sun, 23 Dec 2018 14:07:55 +0000 (14:07 +0000)] 
Update CPAN to CPAN version 2.22


2018-12-23  k  <>

  * release 2.22

  * one week after the TRIAL release cpantesters have produced 306
  pass and 0 fail reports on 157 different configurations

  * no functional change over 2.22-TRIAL; only one change in the
  distroprefs directory which is not used per default and a minor
  change in the Makefile.PL to ensure that the signature for the
  tarball is produced with the current version of Module::Signature.

2018-12-16  k  <>

  * release 2.22-TRIAL

  * fix: erroneous propagation from build_requires to requires
  (Andreas Koenig)

  * fix: ensure that the post install hook is always called (Andreas

  * fix: the single blank line output that initializing CPAN does
  when it's not having to report anything (Achim Gratz)

  * doc fix: Correct spelling of Perl 5 command-line switch (James E

  * doc fix: clarify use of pop/splice in the manpage of the
  Specfile plugin (Andreas Koenig)

  * a tiny amount of new and updated distroprefs files

10 months agoIt's beginning to look a lot like Christmas
Chris 'BinGOs' Williams [Fri, 21 Dec 2018 09:50:55 +0000 (09:50 +0000)] 
It's beginning to look a lot like Christmas

10 months agobump $File::Find::VERSION
Tony Cook [Wed, 19 Dec 2018 22:41:47 +0000 (09:41 +1100)] 
bump $File::Find::VERSION

10 months agoFile::Find: set $Is_Win32 and $Is_VMS variables
Tomasz Konojacki [Wed, 19 Dec 2018 15:18:15 +0000 (16:18 +0100)] 
File::Find: set $Is_Win32 and $Is_VMS variables

f75dfdbdb9d52b3024db9a0eb27405c2175af144 has mistakenly removed
the code that initialized those variables.

[perl #133731]

10 months agoThoroughly test paragraph mode
James E Keenan [Thu, 13 Dec 2018 23:29:29 +0000 (18:29 -0500)] 
Thoroughly test paragraph mode

For: RT # 133722

10 months agoMore specific documentation of paragraph mode.
James E Keenan [Thu, 13 Dec 2018 22:42:42 +0000 (17:42 -0500)] 
More specific documentation of paragraph mode.

For: RT # 133722

10 months agoRelease managers guide: perlivp isn't in utils after install.
Abigail [Tue, 18 Dec 2018 14:08:45 +0000 (15:08 +0100)] 
Release managers guide: perlivp isn't in utils after install.

It's installed in the same directory (bin) as perl it self.

10 months agoTick release schedule
Abigail [Tue, 18 Dec 2018 14:06:53 +0000 (15:06 +0100)] 
Tick release schedule

10 months agoUpdate Module::CoreList for 5.29.7
Abigail [Tue, 18 Dec 2018 13:48:59 +0000 (14:48 +0100)] 
Update Module::CoreList for 5.29.7

10 months agoBump the perl version in various places for 5.29.7
Abigail [Tue, 18 Dec 2018 13:44:49 +0000 (14:44 +0100)] 
Bump the perl version in various places for 5.29.7

10 months agoNew perldelta for 5.29.7
Abigail [Tue, 18 Dec 2018 13:32:27 +0000 (14:32 +0100)] 
New perldelta for 5.29.7

10 months agoEpigraph for 5.29.6
Abigail [Tue, 18 Dec 2018 13:17:06 +0000 (14:17 +0100)] 
Epigraph for 5.29.6

10 months agoPerlhist: Date of the 5.29.6 release. v5.29.6
Abigail [Tue, 18 Dec 2018 00:29:00 +0000 (01:29 +0100)] 
Perlhist: Date of the 5.29.6 release.

10 months agoPerlhist: Fix the release dates for 5.29.[345].
Abigail [Tue, 18 Dec 2018 00:25:21 +0000 (01:25 +0100)] 
Perlhist: Fix the release dates for 5.29.[345].

These releases were made in 2018, not 2019.

10 months agoPerldelta: Don't put a reference to an RT ticket in its own paragraph.
Abigail [Tue, 18 Dec 2018 00:21:42 +0000 (01:21 +0100)] 
Perldelta: Don't put a reference to an RT ticket in its own paragraph.

10 months agoPerldelta: Linkefy references to Perl RT tickets in the Modules section.
Abigail [Tue, 18 Dec 2018 00:20:31 +0000 (01:20 +0100)] 
Perldelta: Linkefy references to Perl RT tickets in the Modules section.

10 months agoErrata in perldelta.
Abigail [Tue, 18 Dec 2018 00:13:28 +0000 (01:13 +0100)] 
Errata in perldelta.

A change in 5.29.4 was misworded in its perldelta. Karl fixed the wording
in perl5294delta, and added the corrected text in this perldelta, under
the Core Enhancements section.

The Errata section is more appropriate.

10 months agoPerldelta: New/Updated Modules for 5.29.6
Abigail [Tue, 18 Dec 2018 00:03:34 +0000 (01:03 +0100)] 
Perldelta: New/Updated Modules for 5.29.6

10 months agoPerldelta: Acknowledgements for 5.29.6.
Abigail [Mon, 17 Dec 2018 23:38:08 +0000 (00:38 +0100)] 
Perldelta: Acknowledgements for 5.29.6.

10 months agoUpdate Module::CoreList for 5.29.6
Abigail [Mon, 17 Dec 2018 23:25:14 +0000 (00:25 +0100)] 
Update Module::CoreList for 5.29.6

10 months agoperldelta notes for Storable, EU::PXS, and sort the modules.
Tony Cook [Sun, 16 Dec 2018 23:15:25 +0000 (10:15 +1100)] 
perldelta notes for Storable, EU::PXS, and sort the modules.

10 months agoperldelta for f75dfdbdb9d5
Tony Cook [Sun, 16 Dec 2018 22:42:47 +0000 (09:42 +1100)] 
perldelta for f75dfdbdb9d5

10 months ago(perl #133673) disable the File::Find nlink optimization by default
Tony Cook [Mon, 10 Dec 2018 04:38:54 +0000 (15:38 +1100)] 
(perl #133673) disable the File::Find nlink optimization by default

This will also fix 128894 and 126144.

10 months agoregcomp.c: Tighten embedded patterns in regex sets
Karl Williamson [Sun, 16 Dec 2018 19:38:28 +0000 (12:38 -0700)] 
regcomp.c: Tighten embedded patterns in regex sets

In the (?[ ... ]) regex sets features, one can embed another compiled
regex set pattern.  Such compiled patterns always have a flag of '^',
which we weren't looking for prior to this commit.  That meant that
uncompiled patterns would be mistaken for compiled ones.

10 months agoperlrecharclass: Clarify embedding in regex sets
Karl Williamson [Sun, 16 Dec 2018 19:36:02 +0000 (12:36 -0700)] 
perlrecharclass: Clarify embedding in regex sets

10 months agoperlre: Italicize variable text
Karl Williamson [Sun, 16 Dec 2018 19:33:15 +0000 (12:33 -0700)] 
perlre: Italicize variable text

10 months agoPerldelta: Clarify when CVE-2018-18312 was fixed.
Abigail [Sun, 16 Dec 2018 19:12:24 +0000 (20:12 +0100)] 
Perldelta: Clarify when CVE-2018-18312 was fixed.

This was originally fixed in 5.29.4. The patch itself does have
an entry in the perldelta for 5.29.4, but it was, intentionally,
not made clear a security hole was fixed. This was delayed until
5.28.1 and 5.26.3 were released.

10 months agoCorrect previous perldelta entry, and add a test
Karl Williamson [Sun, 16 Dec 2018 18:54:03 +0000 (11:54 -0700)] 
Correct previous perldelta entry, and add a test

The text of perl5294delta was wrong about a change.  This commit changes
that text, and adds an entry to the latest perldelta with the
correction.  A test has been added to verify the way things work.

The wrong language led to this blog post, and my comment in it:

10 months agoAdd perldelta entry for pipe open fixes
Leon Timmermans [Sun, 16 Dec 2018 18:36:16 +0000 (19:36 +0100)] 
Add perldelta entry for pipe open fixes

This covers c6fe5b981b942ddabb23ed4b7602067e906e6d88
and 30c869b87739b56280daca3cd44b0588144747b7

10 months agoAlways mark pipe in list pipe-open as inherit-on-exec
Leon Timmermans [Sun, 16 Dec 2018 00:05:06 +0000 (01:05 +0100)] 
Always mark pipe in list pipe-open as inherit-on-exec

This is the my_popen_list counterpart of

10 months agoGet pod/perldelta in shape.
Abigail [Sat, 15 Dec 2018 23:27:51 +0000 (00:27 +0100)] 
Get pod/perldelta in shape.

* Fixed POD issues.
* Fixed spelling.
* Removed most of the templating stuff; only the Module List and
  Acknowledgment are left -- they will be done at the day of the release.

10 months agoPerldelta entries for 5.29.6.
Abigail [Sat, 15 Dec 2018 17:34:40 +0000 (18:34 +0100)] 
Perldelta entries for 5.29.6.

10 months agoAlways mark pipe in pipe-open as inherit-on-exec
Leon Timmermans [Sat, 15 Dec 2018 18:08:41 +0000 (19:08 +0100)] 
Always mark pipe in pipe-open as inherit-on-exec

Since 2cdf406a a lot of file descriptors are opened close-on-exec,
including the pipe that is passed to the child process in a pipe-open.
This is usually fine because a dup2 follows to rename that handle to
stdin/stdout that will set the inherit-on-exec. However, if the pipe
descriptor already has the right value, for example because stdin was
closed, then no dup2 happens and hence it's still marked as
close-on-exec right when we want to perform an exec.

This patch explicitly marks such a handle as inherit-on-exec, to ensure
it will be open for the child process.

10 months agoAvoid "Use of uninitialized value $res in numeric eq (==)" warning
James E Keenan [Sat, 15 Dec 2018 15:29:12 +0000 (10:29 -0500)] 
Avoid "Use of uninitialized value $res in numeric eq (==)" warning

The test within the SKIP block expects $res to be undef, but the 'skip'
condition itself expects it to be defined and numeric.  So we were
getting an uninitialized value warning.  In 'skip' condition, test for
definedness before numeric comparison.

10 months agoCorrect spelling error in 'skip' message
James E Keenan [Sat, 15 Dec 2018 14:01:55 +0000 (09:01 -0500)] 
Correct spelling error in 'skip' message

10 months agot/io/eintr.t: Skip some tests on pre-16 Darwin.
Abigail [Sat, 15 Dec 2018 12:24:08 +0000 (13:24 +0100)] 
t/io/eintr.t: Skip some tests on pre-16 Darwin.

The tests where we write a string larger than the pipe size to
a pipe hang on 15.6.0, while they seem to work on Darwin 17.7.0.
So we will skip these tests on Darwin, if the major version is
less than 16. (We may adjust this is we have more reports on
which versions between 15.6.0 and 17.7.0 success/fail).

Note that the tests hang even if we send a string of 512 characters,
which is much, much smaller than the actual size of the string in
the test.

10 months agoUpdate Config::Perl::V to version 0.31
H.Merijn Brand [Sat, 15 Dec 2018 12:33:49 +0000 (13:33 +0100)] 
Update Config::Perl::V to version 0.31


10 months agoext/GDBM_File/t/fatal.t: handle non-fatality
David Mitchell [Fri, 14 Dec 2018 16:54:42 +0000 (16:54 +0000)] 
ext/GDBM_File/t/fatal.t: handle non-fatality

This script is supposed to exercise the error handling callback
mechanism in gdbm, by triggering an error by surreptitiously closing
the file handle which gdbm has opened.

However, this doesn't trigger an error in newer releases of the gdbm
library, which uses mmap() rather than write() etc. In fact I can't see
any way of triggering an error: so just skip the relevant tests if we
can't trigger a failure.

10 months agoS_uiv_2buf: faster integer stringification algorithm
Tomasz Konojacki [Thu, 29 Nov 2018 11:24:03 +0000 (12:24 +0100)] 
S_uiv_2buf: faster integer stringification algorithm

Processing two digits at a time results in noticeable performance
improvement for larger numbers.

The previous version of the function was being automatically inlined
by gcc because of its small size. It's no longer the case so I had to

I have marked the UV branch as UNLIKELY because UVs are *much* rarer
than IVs.

[perl #133691]

10 months ago(perl #133667) documentation improvements for the POSIX module
Tony Cook [Tue, 11 Dec 2018 00:28:51 +0000 (11:28 +1100)] 
(perl #133667) documentation improvements for the POSIX module

10 months agowe don't need ext/POSIX/t/math.t +x
Tony Cook [Wed, 12 Dec 2018 03:06:32 +0000 (14:06 +1100)] 
we don't need ext/POSIX/t/math.t +x

10 months ago(perl #133582) make C99 functions available for Win32 Mingw builds
Tony Cook [Wed, 12 Dec 2018 01:10:48 +0000 (12:10 +1100)] 
(perl #133582) make C99 functions available for Win32 Mingw builds

10 months agomath.t - support C99 math for mingw
sisyphus [Sat, 27 Oct 2018 01:39:27 +0000 (12:39 +1100)] 
math.t - support C99 math for mingw

10 months agoconfig_sh.PL - support C99 math for mingw
sisyphus [Thu, 25 Oct 2018 08:28:18 +0000 (19:28 +1100)] 
config_sh.PL - support C99 math for mingw

10 months agoconfig_H.gc - support C99 math for mingw
sisyphus [Thu, 25 Oct 2018 08:27:51 +0000 (19:27 +1100)] 
config_H.gc - support C99 math for mingw

10 months agoconfig.gc - support C99 math for mingw
sisyphus [Thu, 25 Oct 2018 08:27:36 +0000 (19:27 +1100)] 
config.gc - support C99 math for mingw

10 months agoPOSIX.xs - support C99 math for mingw
sisyphus [Thu, 25 Oct 2018 08:26:29 +0000 (19:26 +1100)] 
POSIX.xs - support C99 math for mingw

10 months agoperl.h - support C99 math for mingw
sisyphus [Thu, 25 Oct 2018 08:25:37 +0000 (19:25 +1100)] 
perl.h - support C99 math for mingw

10 months agoCall a hash %hash in the documentation
E. Choroba [Wed, 5 Dec 2018 22:49:57 +0000 (23:49 +0100)] 
Call a hash %hash in the documentation

Previously, %array was used which was confusing.

10 months ago(perl #133708) remove build-time probing for stack limits for Storable
Tony Cook [Tue, 4 Dec 2018 04:11:17 +0000 (15:11 +1100)] 
(perl #133708) remove build-time probing for stack limits for Storable

10 months agohandy.h: Fix definition of isPOWER_OF_2()
Karl Williamson [Sat, 8 Dec 2018 21:45:05 +0000 (14:45 -0700)] 
handy.h: Fix definition of isPOWER_OF_2()

Prior to this commit, it returned TRUE if the input was 0.

10 months agoregcomp.h: Fix typo in comment
Karl Williamson [Sat, 8 Dec 2018 21:46:48 +0000 (14:46 -0700)] 
regcomp.h: Fix typo in comment

10 months agoregexec.c: Use mnemonics instead of "256"
Karl Williamson [Thu, 6 Dec 2018 17:02:55 +0000 (10:02 -0700)] 
regexec.c: Use mnemonics instead of "256"

There are only three valid numbers in Computer Science: 0, 1, and "as
many as you like".  256 is not therefore a valid number, and its use
should be commented, or better, a mnemonic used instead.

These uses were spotted by lgtm as being unnecessary, and some people
were confused as to their purpose.  This commit changes the 256, to in
one case, a sizeof() that indicates its a guard against going outside
the array bounds of that data structure.  And in the 2nd case, it
verifies that it fits inside the space allotted to a function parameter.
A comment helps clarify that.

10 months agoregcomp.c: Allow more EXACTFish nodes to be trieable
Karl Williamson [Tue, 4 Dec 2018 16:58:13 +0000 (09:58 -0700)] 
regcomp.c: Allow more EXACTFish nodes to be trieable

The previous two commits fixed bugs where it would be possible during
optimization to join two EXACTFish nodes together, and the result would
not work properly with LATIN SMALL LETTER SHARP S.  But by doing so,
the commits caused all non-UTF-8 EXACTFU nodes that begin or end with
[Ss] from being trieable.

This commit changes things so that the only the ones that are
non-trieable are the ones that, when joined, have the sequence [Ss][Ss]
in them.  To do so, I created three new node types that indicate if the
node begins with [Ss] or ends with them, or both.  These preclude having
to examine the node contents at joining to determine this.  And since
there are plenty of node types available, it seemed the best choice.
But other options would be available should we run out of nodes.
Examining the first and final characters of a node is not expensive, for

10 months agoregcomp.c: Make sure /di nodes begining in 's' are EXACTF
Karl Williamson [Fri, 30 Nov 2018 16:31:46 +0000 (09:31 -0700)] 
regcomp.c: Make sure /di nodes begining in 's' are EXACTF

This is defensive coding.  The previous commit changed things so under
/di a node ending in [Ss] doesn't get made an EXACTFU.  This commit does
the same for nodes that begin with [Ss].  This isn't actually necessary
as one needs two EXACTFU nodes in a row for the problem to occur, and
the previous commit appears to remove the possibility for the first node
being an EXACTFU.  But I'm leery of relying on this.  So this commit
makes sure that a node beginning with 'S' or 's' under /di remains

10 months agoregcomp.c: Make sure /di nodes ending in 's' are EXACTF
Karl Williamson [Fri, 30 Nov 2018 03:43:32 +0000 (20:43 -0700)] 
regcomp.c: Make sure /di nodes ending in 's' are EXACTF

Prior to this commit only nodes that filled fully were guaranteed not to
be upgraded to EXACTFU.

EXACTF nodes are used when /d rules are to be used unless the string
being matched against is in UTF-8.  EXACTFU nodes are used when the /u
rules are to be used always.  If the node contains only characters whose
interpretation is the same under /d and /u, both node types behave
identically, and so either can be used.  EXACTFU nodes are preferred
because they are trie-able, and otherwise faster at runtime due to not
having to check the UTF-8ness of the target string.  The pattern
compilation uses an EXACTFU node when possible, over an EXACTF node.

The sequences 'ss', 'SS', 'Ss', 'sS'  are very tricky, for several
reasons.  For this commit, the trickiness lies in the fact that they are
the only sequences where both the pattern and target string aren't in
UTF-8, and what matches under /ui rules differs from what matches under
/di.  (There are various single characters that match differently, but
this is the only sequence whose individual components match the same,
but the sequence as a whole matches differently.)

The code has long taken special care for these sequences, but overlooked
two fairly obscure cases where it matters.  This commit addresses one of
those cases; the next commit, the other.

Because these  are sequences, it might be possible for it to be split
across two EXACTFish nodes, so that the first 's' or 'S' is the last
thing in the first node, and the second 's' or 'S' is the first thing in
the second.  Should these nodes get joined during optimization, they
form the sequence.  The code has long recognized this possibility if the
first node gets filled up, necessitating a split, and it doesn't make
the first node EXACTFU if it ends in 's' or 'S'.  But we don't fill
those nodes totally completely, and optimization can join two together.

Future commits in the pipeline will join nodes in more cases during
optimization, and so, we need to not create an EXACTFU for trailing 's'
or 'S' always, not just if the first node fills up.  This commit moves
the code that accomplishes this so it always gets executed at node end
of /di nodes, instead of previously only getting executed when the node

10 months agoregcomp.c: Simplify a bit of code
Karl Williamson [Mon, 3 Dec 2018 00:39:05 +0000 (17:39 -0700)] 
regcomp.c: Simplify a bit of code

By using a macro with a slightly different API, we don't have to mess
with the parse pointer.

10 months agoregcomp.c: Can join certain EXACTish node types
Karl Williamson [Mon, 3 Dec 2018 18:33:49 +0000 (11:33 -0700)] 
regcomp.c: Can join certain EXACTish node types

The optimization phase of regular expression pattern compilation looks
for adjacent EXACTish nodes and joins them if they are the same flavor
of EXACT.  Commits a9f8c7ac75c364c3e05305718f38c5f8ccd935d8 and
f6b4b99d2e584fbcd85eeed475eea10b87858e54 introduced two new nodes
that are so close to existing flavors that they are joinable with their
respective flavor.  This commit does that.

10 months agoregcomp.c: Move clause of while() conditional into loop
Karl Williamson [Mon, 3 Dec 2018 00:45:06 +0000 (17:45 -0700)] 
regcomp.c: Move clause of while() conditional into loop

This is in preparation for making the conditional more complicated than
can be easily done in the condition.

10 months agoregcomp.c: Add assertion
Karl Williamson [Sun, 2 Dec 2018 19:27:46 +0000 (12:27 -0700)] 
regcomp.c: Add assertion

10 months agoRemove one use of static function
Karl Williamson [Sun, 2 Dec 2018 19:38:27 +0000 (12:38 -0700)] 
Remove one use of static function

Previous commits in 5.29 have removed all but two calls to this
function, and the remaining ones take radically different paths in it,
with very little common code.  It simplifies things if we expand each
call to the code that gets evaluated.  This commit does one call.
Changing the other usage is deferred until a later commit.

The need for an #ifdef is removed by adding a flag and setting it in an
existing #ifdef.

10 months agoNo need to convert int to long to int
H.Merijn Brand [Fri, 7 Dec 2018 13:43:37 +0000 (14:43 +0100)] 
No need to convert int to long to int

Beyond that, I agree with this branch

Signed-off-by: James E Keenan <>
10 months agoNo need to include 'values.h'.
James E Keenan [Wed, 28 Nov 2018 03:15:22 +0000 (22:15 -0500)] 
No need to include 'values.h'.

timecheck.c does not appear to use any thing from this file.  Linux
documentation marks the interface as obsolete.  It's not found, e.g., on

10 months agoEliminate 4 build-time warnings in timecheck.c.
James E Keenan [Tue, 27 Nov 2018 21:12:45 +0000 (16:12 -0500)] 
Eliminate 4 build-time warnings in timecheck.c.

This commit suppresses output like this:

[Porting] 758 $ cc -O -o timecheck timecheck.c
timecheck.c: In function ‘gm_check’:
timecheck.c:37:36: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘int’ [-Wformat=]
      fprintf (stderr, "%3d:%s: %12ld-%02d-%02d %02d:%02d:%02d\n",
   tmp->tm_year + 1900, tmp->tm_mon + 1, tmp->tm_mday,
timecheck.c: In function ‘lt_check’:
timecheck.c:89:36: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘int’ [-Wformat=]
      fprintf (stderr, "%3d:%s: %12ld-%02d-%02d %02d:%02d:%02d\n",
   tmp->tm_year + 1900, tmp->tm_mon + 1, tmp->tm_mday,
timecheck.c: In function ‘main’:
timecheck.c:130:21: warning: implicit declaration of function ‘strcmp’ [-Wimplicit-function-declaration]
     if (argc > 1 && strcmp (argv[1], "-v") == 0) opt_v++;
timecheck.c:139:32: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 2 has type ‘int’ [-Wformat=]
     printf ("Sizeof time_t = %ld\n", (i = sizeof (time_t)));
                              ~~^     ~~~~~~~~~~~~~~~~~~~~~

10 months agoUse more plausible argument for 'cd' in example.
James E Keenan [Tue, 27 Nov 2018 21:07:35 +0000 (16:07 -0500)] 
Use more plausible argument for 'cd' in example.

In our documentation we generally assume that the user is navigating
from the top-level of the core distribution.  If so, then to compile a C
program found in Porting/ the user would simply 'cd Porting' rather than
'cd perl/Porting'.

10 months agoregen/ Add new table
Karl Williamson [Thu, 6 Dec 2018 23:57:17 +0000 (16:57 -0700)] 
regen/ Add new table

This table contains all the code points that are in any multi-character
fold (not the folded-from character, but what that character folds to).

It will be used in a future commit.

10 months agoregen/ Rmv no longer used array
Karl Williamson [Thu, 6 Dec 2018 23:53:23 +0000 (16:53 -0700)] 
regen/ Rmv no longer used array

10 months agot/harness: Catch incorrect serial directory specification
Karl Williamson [Fri, 7 Dec 2018 17:42:21 +0000 (10:42 -0700)] 
t/harness: Catch incorrect serial directory specification

The previous commit fixed a bug.  This commit detects if someone creates
a new instance of that bug.

10 months agot/harness: Actually run IO::Zlib tests sequentially
Karl Williamson [Fri, 7 Dec 2018 17:32:35 +0000 (10:32 -0700)] 
t/harness: Actually run IO::Zlib tests sequentially

Commit bc55cddf915d70f806feda38506788f4c61a2574 tried to do this, but it
turns out it didn't actually, because it didn't precisely name the

10 months agoMake ext/B/t/strict.t test alike to other ones.
Petr Písař [Fri, 7 Dec 2018 14:25:53 +0000 (09:25 -0500)] 
Make ext/B/t/strict.t test alike to other ones.

Signed-off-by: Petr Písař <>
For: RT 133713

10 months agoCorrect error message in t/taint.t.
James E Keenan [Fri, 7 Dec 2018 02:42:51 +0000 (02:42 +0000)] 
Correct error message in t/taint.t.

In this test file, our temporary directory is named 'for_find_taint'.
Make sure the error method reflects that.  (This was overlooked in
f09dd912ca4 2018-11-19.)

10 months agoregcomp.c: Use simpler variable name as long as possible
Karl Williamson [Sun, 2 Dec 2018 20:05:47 +0000 (13:05 -0700)] 
regcomp.c: Use simpler variable name as long as possible

This just extends the use of a variable name a little longer, as it's
easier to read than the nested macro calls that eventually have to be

10 months agoregcomp.c: Prefer one of similarly named vars
Karl Williamson [Sun, 2 Dec 2018 19:22:39 +0000 (12:22 -0700)] 
regcomp.c: Prefer one of similarly named vars

These two variables are similarly named, but have slightly different
purposes.  Comment out one of them, and convert to using the other

10 months agot/re/anyof.t: Remove duplicate test case
Karl Williamson [Sun, 2 Dec 2018 18:46:07 +0000 (11:46 -0700)] 
t/re/anyof.t: Remove duplicate test case

10 months agoUse consistent spelling in qr// dumping
Karl Williamson [Sun, 2 Dec 2018 18:17:26 +0000 (11:17 -0700)] 
Use consistent spelling in qr// dumping

Under -Dr (or use re 'Debug') the compiled regex engine program is
displayed.  I noticed that it used two different spellings for
'infinity'.  This commit changes so only one is used, the one that has
been in the field the longest.

10 months agoregcomp.c: Clarify comment
Karl Williamson [Wed, 5 Dec 2018 01:22:05 +0000 (18:22 -0700)] 
regcomp.c: Clarify comment

10 months agoFix t/porting/manifest.t failures when run in a foreign git checkout
Niko Tyni [Sun, 2 Dec 2018 09:57:01 +0000 (11:57 +0200)] 
Fix t/porting/manifest.t failures when run in a foreign git checkout

The change at ba6733216202523a95b0b7ee2e534b8e30b6d7df didn't work
correctly: find_git_or_skip() in t/ looks at PERL_BUILD_PACKAGING
too late, so it doesn't change the logic of skipping, only the explanation
of why tests get skipped if they do. This was originally reported at

Committer: update commit message for upstream context

10 months agoregcomp.sym: Clarify descriptions of EXACTish regnodes
Karl Williamson [Wed, 5 Dec 2018 00:59:31 +0000 (17:59 -0700)] 
regcomp.sym: Clarify descriptions of EXACTish regnodes

10 months agoinline.h: Clarify comment
Karl Williamson [Tue, 4 Dec 2018 19:05:59 +0000 (12:05 -0700)] 
inline.h: Clarify comment

This function works as well as possible on non-UTF-8 inputs.  No need to
list the UTF-8-only failures, since those aren't legal inputs.

10 months agobump $ExtUtils::ExtUtils::VERSION to 3.40
Tony Cook [Wed, 5 Dec 2018 04:35:19 +0000 (15:35 +1100)] 
bump $ExtUtils::ExtUtils::VERSION to 3.40

10 months ago(perl #133654) don't include OUTLIST parameters in the prototype
Tony Cook [Wed, 5 Dec 2018 04:22:52 +0000 (15:22 +1100)] 
(perl #133654) don't include OUTLIST parameters in the prototype

The generated prototype (with PROTOTYPES: ENABLE) would include
OUTLIST parameters, but these aren't arguments to the perl function.

10 months ago(perl #133706) remove exploit code from Storable
Tony Cook [Mon, 3 Dec 2018 05:15:52 +0000 (16:15 +1100)] 
(perl #133706) remove exploit code from Storable

Storable packaged the metasploit framework code for CVE-2015-1592,
which triggered virus scanners.

To prevent that remove the packaged exploit code and test for the
underlying structure we trigger the warning on.

10 months agoAdd header-guards to 2 additional files
James E Keenan [Tue, 4 Dec 2018 00:25:51 +0000 (19:25 -0500)] 
Add header-guards to 2 additional files

Two header files in ext/SDBM_File appear to be blead-upstream, so we can
add header guards here as well.

For: RT 133699

10 months agoProvide header guards to prevent re-inclusion
James E Keenan [Thu, 29 Nov 2018 03:50:29 +0000 (22:50 -0500)] 
Provide header guards to prevent re-inclusion

Per LGTM analysis:

and LGTM recommendation:

For: RT 133699

10 months agoRevert "regcomp.c: Use a weird value in a place where ignored"
Karl Williamson [Sun, 2 Dec 2018 08:30:39 +0000 (01:30 -0700)] 
Revert "regcomp.c: Use a weird value in a place where ignored"

This reverts commit 5a4bc50b395654abde21718cbce2e296049f470d.
It turns out I was wrong, and the value isn't ignored.  The commit
caused the pattern to be optimized differently, but still be valid,
so no tests failed.

10 months agoSync Test::Simple with CPAN version 1.302141
James E Keenan [Sat, 1 Dec 2018 17:58:41 +0000 (12:58 -0500)] 
Sync Test::Simple with CPAN version 1.302141

Committer:  Update perldelta

10 months agoAdd instruction to configure to SYNOPSIS
James E Keenan [Sat, 1 Dec 2018 17:39:27 +0000 (12:39 -0500)] 
Add instruction to configure to SYNOPSIS

Because I always to forget to ./Configure before trying to bring in an
updated upstream module from CPAN.

10 months agoCorrect typo
James E Keenan [Fri, 30 Nov 2018 03:12:10 +0000 (22:12 -0500)] 
Correct typo

10 months agoDrop sentence which is no longer valid as of 5.28
James E Keenan [Fri, 30 Nov 2018 03:09:41 +0000 (22:09 -0500)] 
Drop sentence which is no longer valid as of 5.28

Per recommendation of Dan Book.

For: RT 133705

10 months agoTick off 5.26.3 and 5.28.1
Steve Hay [Thu, 29 Nov 2018 21:06:04 +0000 (21:06 +0000)] 
Tick off 5.26.3 and 5.28.1

10 months agoperlhist for 5.26.3 and 5.28.1
Steve Hay [Thu, 29 Nov 2018 21:03:00 +0000 (21:03 +0000)] 
perlhist for 5.26.3 and 5.28.1

These were applied to maint-5.26 and maint-5.28 in the following commits:



10 months agoImport perl5263delta.pod and perl5281delta.pod
Steve Hay [Thu, 29 Nov 2018 20:49:00 +0000 (20:49 +0000)] 
Import perl5263delta.pod and perl5281delta.pod

10 months agoUpdate Module-CoreList with data for 5.26.3 and 5.28.1
Steve Hay [Thu, 29 Nov 2018 20:11:17 +0000 (20:11 +0000)] 
Update Module-CoreList with data for 5.26.3 and 5.28.1

10 months agoEpigraphs for 5.26.3 and 5.28.1
Steve Hay [Thu, 29 Nov 2018 19:49:30 +0000 (19:49 +0000)] 
Epigraphs for 5.26.3 and 5.28.1

10 months agoPATCH: [perl #133423]
Karl Williamson [Mon, 24 Sep 2018 17:16:14 +0000 (11:16 -0600)] 
PATCH: [perl #133423]

10 months agolocale.c: Failure to build if not allowing LC_COLLATE
Karl Williamson [Thu, 29 Nov 2018 18:55:09 +0000 (11:55 -0700)] 
locale.c: Failure to build if not allowing LC_COLLATE

This is part of [perl #133696].  A typo was causing a macro to be
defined in terms of itself, hence an illegal recursive definition.

10 months agolocale.c: Don't use numeric unless LC_NUMERIC
Karl Williamson [Thu, 29 Nov 2018 18:53:58 +0000 (11:53 -0700)] 
locale.c: Don't use numeric unless LC_NUMERIC

This commit #ifdef's a usage of a variable that isn't valid unless the
system has LC_NUMERIC

10 months agolocale.c: Fix wrong scope of #if's
Karl Williamson [Thu, 29 Nov 2018 18:50:58 +0000 (11:50 -0700)] 
locale.c: Fix wrong scope of #if's

The function print_bytes_for_locale() should be defined if DEBUGGING;
prior to this commit it didn't get defined unless LC_COLLATE was
defined on the platform.