DongHun Kwak [Wed, 28 Jun 2017 01:29:32 +0000 (10:29 +0900)]
Imported Upstream version 5.21.1
Change-Id: I3fcd41967e40b5ec543422d736ec57972d462464
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
DongHun Kwak [Wed, 28 Jun 2017 01:29:11 +0000 (10:29 +0900)]
Imported Upstream version 5.21.0
Change-Id: Ie65b3441733239a8f37f59f154b3fe47b07742da
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
DongHun Kwak [Wed, 28 Jun 2017 01:28:45 +0000 (10:28 +0900)]
Imported Upstream version 5.20.3
Change-Id: I6fa6898367b24309a61a48cc9b3028e34eba499e
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
DongHun Kwak [Wed, 28 Jun 2017 01:28:22 +0000 (10:28 +0900)]
Imported Upstream version 5.20.2
Change-Id: I7c76e059b29c2b82cb61c784e8f4e88eccebd569
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
DongHun Kwak [Wed, 28 Jun 2017 01:27:32 +0000 (10:27 +0900)]
Imported Upstream version 5.20.1
Change-Id: Ifcfb0af65c356f98e5fbd9ea99d486d4c70e2c7a
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Graham Knop [Sat, 21 Dec 2013 23:08:12 +0000 (18:08 -0500)]
skip RC tags when checking versions diffs
Ricardo Signes [Mon, 26 May 2014 13:19:45 +0000 (09:19 -0400)]
update v5.20.0 release date in Module::CoreList
Ricardo Signes [Mon, 26 May 2014 13:19:33 +0000 (09:19 -0400)]
update v5.20.0 release date in perlhist
Ricardo Signes [Mon, 26 May 2014 12:45:08 +0000 (08:45 -0400)]
patchlevel: we are a release candidate no more!
Nicholas Clark [Sun, 25 May 2014 20:35:44 +0000 (22:35 +0200)]
Obituary for Greg McCarroll.
Steve Hay [Sat, 24 May 2014 13:25:14 +0000 (14:25 +0100)]
Remove note of test failures on FAT that were fixed by perl #21442's fixes
The list of tests fixed doesn't exactly match the list in README.win32, but
all tests now pass when building/testing on FAT with the Windows OS on NTFS.
Steffen Mueller [Fri, 23 May 2014 17:00:48 +0000 (19:00 +0200)]
Update PathTools version in Porting
Steve Hay [Fri, 23 May 2014 08:12:37 +0000 (09:12 +0100)]
Document known test failure in mingw.org builds of gcc-4.8.1 (at least)
This came up in perl #121643, but I forgot to add a note of this Known
Problem.
Steve Hay [Thu, 22 May 2014 07:24:47 +0000 (08:24 +0100)]
Note that the minimum supported gcc (on Windows) is 3.4.5
Earlier versions (from www.mingw.org, at least) will build perl, but have
a linker bug that causes various tests to fail due to problems with
SDBM_File.dll. See perl #121936 for details.
Leon Timmermans [Wed, 21 May 2014 13:16:02 +0000 (15:16 +0200)]
Add notice for removal of find2perl, s2p and a2p
Karl Williamson [Mon, 19 May 2014 21:07:16 +0000 (15:07 -0600)]
perldelta: Note patch fixed a bunch of tickets
Unbeknownst to the authors, several other tickets got fixed.
Ricardo Signes [Mon, 19 May 2014 14:33:16 +0000 (10:33 -0400)]
perldelta: update known problems
Jarkko Hietaniemi [Thu, 24 Apr 2014 22:16:30 +0000 (18:16 -0400)]
perlfunc: Should chdir("/") immed after chroot
Inspired by Coverity perl5 CID 28931: Insecure chroot: (CHROOT)
chroot_call.
The Perl chroot() is a thin wrapper around the system call, so the
chdir("/") should not go there. But adding a note about the chdir()
being a good idea to perlfunc/chroot.
The committer reworded the inserted text for grammar and readability,
and the commit message to conform to git standards, and is pushing the
commit with the concurrence of the author.
Karl Williamson [Mon, 28 Apr 2014 20:10:37 +0000 (14:10 -0600)]
PATCH: [perl #121630]: perlpod clarification
Ricardo Signes [Fri, 16 May 2014 21:58:23 +0000 (17:58 -0400)]
patchlevel: we are now v5.20.0-RC1
Ricardo Signes [Fri, 16 May 2014 21:57:44 +0000 (17:57 -0400)]
update perlhist for v5.20.0
Ricardo Signes [Fri, 16 May 2014 21:17:49 +0000 (17:17 -0400)]
remove the perl519*delta documents
Ricardo Signes [Fri, 16 May 2014 15:20:42 +0000 (11:20 -0400)]
perldelta: update modules sections for 5.20.0
Ricardo Signes [Fri, 16 May 2014 15:14:18 +0000 (11:14 -0400)]
perldelta: generate acknowledgements for 5.20.0
Ricardo Signes [Fri, 16 May 2014 15:11:22 +0000 (11:11 -0400)]
update CoreList for 5.20.0
Karl Williamson [Thu, 15 May 2014 20:13:36 +0000 (14:13 -0600)]
POSIX.pod: Add clarification for strtod();
Tony Cook [Thu, 15 May 2014 03:38:42 +0000 (13:38 +1000)]
document the API signature change for Perl_regexec_flags()
and its related plugin structure pointer
inspired by https://rt.perl.org/Ticket/Display.html?id=121868 which was
also broken by
ea3daa5d5f60389b105c00d4f7d05b5c2f2155f2
Steve Hay [Wed, 14 May 2014 19:59:30 +0000 (20:59 +0100)]
Fix commit
90674eaa88
Spotted by Daniel Dragan. We use GetEnvironmentStringsW() (deliberately so:
see commit
4f46e52b00), so we must use FreeEnvironmentStringsW() to match.
Steve Hay [Wed, 14 May 2014 16:46:40 +0000 (17:46 +0100)]
Add links for perl bug tickets in previous commit
Daniel Dragan [Wed, 14 May 2014 08:09:39 +0000 (04:09 -0400)]
perldelta for #121676
Steve Hay [Tue, 13 May 2014 11:53:10 +0000 (12:53 +0100)]
[perl #121676] Fix memory leak in backticks and system
Introduced by perl #113536. It doesn't actually leak on Windows XP due to
differences in the implementation of GetEnvironmentStringsW() compared to
later OSes, but the missing FreeEnvironmentStrings() was technically wrong
anyway, and does now bite. Thanks for Daniel Dragan for finding this.
Gisle Aas [Wed, 14 May 2014 02:40:53 +0000 (22:40 -0400)]
use skip_all; test.pl plan does not support skip_all
Gisle Aas [Sun, 4 May 2014 22:09:23 +0000 (16:09 -0600)]
Fix broken Makefile on Solaris 10.
This uses sed to avoid the problem of the sh not being modern enough.
The commiter moved the sed so it appears in just one place.
David Golden [Tue, 13 May 2014 18:13:09 +0000 (14:13 -0400)]
clarify SvPV documentation
Ricardo Signes [Tue, 13 May 2014 14:43:15 +0000 (10:43 -0400)]
perldelta: trim an absurd amount of trailing whitespace
Ricardo Signes [Tue, 13 May 2014 14:29:11 +0000 (10:29 -0400)]
perldelta: add obituary entry for Diana Rosa
David Mitchell [Tue, 13 May 2014 13:18:06 +0000 (14:18 +0100)]
[perl #121854] use re 'taint' regression
Commit v5.19.8-533-g63baef5 changed the handling of locale-dependent
regexes so that the pattern was considered tainted at compile-time, rather
than determining it each time at run-time whenever it executed a
locale-dependent node. Unfortunately due to the conflating of two flags,
RXf_TAINTED and RXf_TAINTED_SEEN, it had the side effect of permanently
marking a pattern as tainted once it had had a single tainted result.
E.g.
use re qw(taint);
use Scalar::Util qw(tainted);
for ($^X, "abc") {
/(.*)/ or die;
print "not " unless tainted("$1"); print "tainted\n";
};
which from 5.19.9 onwards output:
tainted
tainted
but with this commit (and with 5.19.8 and earlier), it now outputs:
tainted
not tainted
The RXf_TAINTED flag indicates that the pattern itself is tainted, e.g.
$r = qr/$tainted_value/
while the RXf_TAINTED_SEEN flag means that the results of the last match
are tainted, e.g.
use re 'tainted';
$tainted =~ /(.*)/;
# $1 is tainted
Pre 63baef5, the code used to look like:
at run-time:
turn off RXf_TAINTED_SEEN;
while (nodes to execute) {
switch(node) {
case
BOUNDL: /* and other locale-specific ops */
turn on RXf_TAINTED_SEEN;
...;
}
}
if (tainted || RXf_TAINTED)
turn on RXf_TAINTED_SEEN;
63baef5 changed it to:
at compile-time:
if (pattern has locale ops)
turn on RXf_TAINTED_SEEN;
at run-time:
while (nodes to execute) {
...
}
if (tainted || RXf_TAINTED)
turn on RXf_TAINTED_SEEN;
This commit changes it to:
at compile-time;
if (pattern has locale ops)
turn on RXf_TAINTED;
at run-time:
turn off RXf_TAINTED_SEEN;
while (nodes to execute) {
...
}
if (tainted || RXf_TAINTED)
turn on RXf_TAINTED_SEEN;
Chris 'BinGOs' Williams [Tue, 13 May 2014 09:35:01 +0000 (10:35 +0100)]
Correct v5.19.12-isms in Module-CoreList
Ricardo Signes [Tue, 13 May 2014 02:08:53 +0000 (22:08 -0400)]
bump the version to 5.20.0-RC0 to start on the road to release!
Ricardo Signes [Tue, 13 May 2014 01:46:24 +0000 (21:46 -0400)]
patchlevel: call it RC0 until RC1
Ricardo Signes [Tue, 13 May 2014 01:43:16 +0000 (21:43 -0400)]
there are no longer any problems in perldelta for now
Ricardo Signes [Tue, 13 May 2014 01:19:32 +0000 (21:19 -0400)]
replace 5.19.12 (never happening) with 5.20.0 in corelist
Ricardo Signes [Tue, 13 May 2014 01:13:01 +0000 (21:13 -0400)]
resort win32/pod.mak to please pod_rules.t
Ricardo Signes [Tue, 13 May 2014 01:08:45 +0000 (21:08 -0400)]
add known modules from perl520delta
Ricardo Signes [Tue, 13 May 2014 01:03:16 +0000 (21:03 -0400)]
regenerate META.json
Ricardo Signes [Tue, 13 May 2014 01:00:11 +0000 (21:00 -0400)]
perldelta: correct busted perldiag links
Ricardo Signes [Tue, 13 May 2014 00:42:06 +0000 (20:42 -0400)]
bump version to 5.20.0, install 5.20 perldelta
Karl Williamson [Mon, 12 May 2014 19:03:05 +0000 (13:03 -0600)]
perlsub: Fix too-long verbatim line length
This was introduced by commit
d3f8a934ef964c0f488e9c692275435d8ea2e291
which reverted earlier fixes, including this pod problem.
Karl Williamson [Mon, 12 May 2014 18:42:33 +0000 (12:42 -0600)]
perlapi: Give more accurate value for needed free space
When converting to UTF-8, one usually doesn't need 14 bytes available
space, which is what previously was claimed It acutally depends on the
value being converted. This change gives the precise value.
Tony Cook [Tue, 6 May 2014 23:33:03 +0000 (09:33 +1000)]
ensure qw//, q'' and '' report line on a missing terminator
scan_str() only sets PL_multi_end on success, but the qw, q amd '' cases
were calling the COPLINE_SET_FROM_MULTI_END; macro before reporting
failure, overwriting the line used for reporting errors.
For the simplest case, as in the ticket and the tests, PL_multi_end is
zero, so the error is reported without a line number.
Ævar Arnfjörð Bjarmason [Wed, 7 May 2014 12:09:40 +0000 (12:09 +0000)]
Revert "[perl #79908] Stop sub inlining from breaking closures"
This reverts commit
137da2b05b4b7628115049f343163bdaf2c30dbb. See the
"How about having a recommended way to add constant subs dynamically?"
thread on perl5-porters, specifically while it sucks that we have this
bug, it's been documented to work this way since 5.003 in "Constant
Functions" in perlsub:
If the result after optimization and constant folding is either a
constant or a lexically-scoped scalar which has no other references,
then it will be used in place of function calls made without C<&>
-- http://perldoc.perl.org/perlsub.html#Constant-Functions
Since we've had this documented bug for a long time we should introduce
this fix in a deprecation cycle rather than silently slowing down code
that assumes it's going to be optimized by constant folding.
I didn't revert the tests it t/op/sub.t, but turned them into TODO tests
instead.
Conflicts:
t/op/sub.t
Ævar Arnfjörð Bjarmason [Sat, 10 May 2014 09:26:14 +0000 (09:26 +0000)]
perlsub: Improve the "Constant Functions" documentation
Ever since perl-5.003_95-19-g5431012 which incorporated this patch:
Title: "Improve and update documentation of constant subs"
From: Tom Phoenix <rootbeer@teleport.com>
Msg-ID: <Pine.GSO.3.96.
970331122546.14185C-100000@kelly.teleport.com>
Date: Mon, 31 Mar 1997 13:05:54 -0800 (PST)
Files: pod/perlsub.pod
We've documented that "BEGIN { my $x = 1; *X = sub () { $x } }" creates
an inlined subroutine, we just weren't doing so very explicitly. Patch
the documentation so that we now have explicit examples for the behavior
mentioned in the first paragraph of the section.
This also adds an explicit mention of the behavior reported as a bug in
[RT #79908], shows the user that you can just use B::Deparse rather than
relying on a warning to see the effects of inlining, and replaces a
contrived way to avoid inlining with just adding a "return".
While writing these docs I found a bug in the warning behavior mentioned
here, which I filed as [RT #121841]
Ricardo Signes [Mon, 12 May 2014 14:56:58 +0000 (10:56 -0400)]
Merge branch 'perldelta' into blead
Ricardo Signes [Sun, 11 May 2014 02:58:21 +0000 (22:58 -0400)]
perldelta: mention the possible doom of EBCDIC
Ricardo Signes [Sun, 11 May 2014 02:56:56 +0000 (22:56 -0400)]
perldelta: standardize on Americanized spellings
one document, one standard
Ricardo Signes [Sun, 11 May 2014 02:55:49 +0000 (22:55 -0400)]
perldelta: crosslink to 5.18.0 delta for padrange
SHIRAKATA Kentaro [Wed, 7 May 2014 20:23:06 +0000 (05:23 +0900)]
perldelta: nitpicks
Tony Cook [Thu, 8 May 2014 01:30:51 +0000 (11:30 +1000)]
List::Gather now has a patch upstream
Dagfinn Ilmari Mannsåker [Wed, 7 May 2014 23:17:09 +0000 (19:17 -0400)]
perl5200delta: Correct which gcc versions we add -fwrapv for
Tom Hukins [Wed, 7 May 2014 23:15:54 +0000 (19:15 -0400)]
perldelta: Data::Clone 0.004 works correctly on blead
Tony Cook [Wed, 7 May 2014 01:19:17 +0000 (11:19 +1000)]
[perl #121771] this new diagnostic was removed in
2e6f7c2a54
Tony Cook [Wed, 7 May 2014 00:44:21 +0000 (10:44 +1000)]
SHIRAKATA Kentaro [Tue, 6 May 2014 01:53:10 +0000 (21:53 -0400)]
remove a duplicate paragraph
SHIRAKATA Kentaro [Sat, 3 May 2014 20:27:56 +0000 (05:27 +0900)]
merge paragraphs about Intel C++ Compiler
SHIRAKATA Kentaro [Sun, 27 Apr 2014 20:10:09 +0000 (05:10 +0900)]
nitpicks
Ricardo Signes [Thu, 24 Apr 2014 01:53:23 +0000 (21:53 -0400)]
perldelta: correct Configure args for COW
Arthur Axel 'fREW' Schmidt [Tue, 22 Apr 2014 22:43:17 +0000 (17:43 -0500)]
perldelta: remove text duplicated mere lines above
Arthur Axel 'fREW' Schmidt [Tue, 22 Apr 2014 22:42:51 +0000 (17:42 -0500)]
perldelta: it will be perl520.dll, not perl519.dll
Arthur Axel 'fREW' Schmidt [Tue, 22 Apr 2014 22:42:14 +0000 (17:42 -0500)]
perldelta: better tense for mentioning an old version
Arthur Axel 'fREW' Schmidt [Tue, 22 Apr 2014 22:41:55 +0000 (17:41 -0500)]
perldelta: mark subroutine signatures as experimental
Karl Williamson [Wed, 23 Apr 2014 01:30:54 +0000 (19:30 -0600)]
khw perl52000 changes
Ricardo Signes [Tue, 22 Apr 2014 14:23:09 +0000 (10:23 -0400)]
perldelta: remove some XXX todo text
Ricardo Signes [Tue, 22 Apr 2014 14:20:59 +0000 (10:20 -0400)]
perldelta: group regexp fixes
Ricardo Signes [Tue, 22 Apr 2014 14:14:20 +0000 (10:14 -0400)]
perldelta: group lexical subroutine fixes
Ricardo Signes [Tue, 22 Apr 2014 14:12:56 +0000 (10:12 -0400)]
perldelta: group debugger fixes
Ricardo Signes [Mon, 21 Apr 2014 23:12:50 +0000 (19:12 -0400)]
remove notice of changes entirely internal to 5.19.x
Ricardo Signes [Mon, 21 Apr 2014 22:49:07 +0000 (18:49 -0400)]
incorporate perl51911delta into perl5200delta
Ricardo Signes [Tue, 15 Apr 2014 23:09:40 +0000 (19:09 -0400)]
perldelta: edit up through but not including Selected Bug Fixes
Ricardo Signes [Fri, 11 Apr 2014 23:10:54 +0000 (19:10 -0400)]
first pass editing up through "Configuration and Compilation"
Ricardo Signes [Fri, 11 Apr 2014 22:40:00 +0000 (18:40 -0400)]
reorder "incompatible changes" section
Ricardo Signes [Fri, 11 Apr 2014 22:36:11 +0000 (18:36 -0400)]
reorder "core enhancements" section
Ricardo Signes [Fri, 11 Apr 2014 22:28:25 +0000 (18:28 -0400)]
incorporate perl51910delta into perl5200delta
Ricardo Signes [Fri, 11 Apr 2014 22:20:31 +0000 (18:20 -0400)]
incorporate perl5199delta into perl5200delta
Ricardo Signes [Fri, 11 Apr 2014 22:10:21 +0000 (18:10 -0400)]
incorporate perl5198delta into perl5200delta
Ricardo Signes [Fri, 11 Apr 2014 22:03:42 +0000 (18:03 -0400)]
incorporate perl5197delta into perl5200delta
Ricardo Signes [Fri, 11 Apr 2014 21:57:16 +0000 (17:57 -0400)]
incorporate perl5196delta into perl5200delta
Ricardo Signes [Fri, 11 Apr 2014 21:49:57 +0000 (17:49 -0400)]
incorporate perl5195delta into perl5200delta
Ricardo Signes [Fri, 11 Apr 2014 21:44:11 +0000 (17:44 -0400)]
incorporate perl5194delta into perl5200delta
Ricardo Signes [Wed, 9 Apr 2014 22:48:59 +0000 (18:48 -0400)]
incorporate perl5193delta into perl5200delta
Ricardo Signes [Wed, 9 Apr 2014 22:41:24 +0000 (18:41 -0400)]
incorporate perl5192delta into perl5200delta
Ricardo Signes [Wed, 9 Apr 2014 22:28:08 +0000 (18:28 -0400)]
incorporate perl5191delta into perl5200delta
Ricardo Signes [Wed, 9 Apr 2014 22:20:03 +0000 (18:20 -0400)]
incorporate perl5190delta into perl5200delta
David Mitchell [Mon, 12 May 2014 09:16:49 +0000 (10:16 +0100)]
sv.c: fix closing comment
replace /* with */
it didn't matter because it was immediately followed by another comment
Yves Orton [Sun, 11 May 2014 22:35:19 +0000 (00:35 +0200)]
document sv_gets() internals
sv_gets() contains some very dense code. while trying to rewrite I
learned a lot about it worked, and Nicholas asked me to update
the comments. So here they are. Hope this saves someone some heartache
trying to understand this code.
Yves Orton [Sun, 11 May 2014 10:37:33 +0000 (12:37 +0200)]
Implement "max waste" thresholds to avoid problems with COW and deliberately overallocated pvs
COW does not play nicely with "preallocate" algorithms.
More specifically code like sv_gets() wants to preallocate a large
buffer into $_ for performance reasons.
Prior to COW this was just fine. When someone assigned $_ to a
less volatile variable only the used portion of the buffer was copied,
and the extended buffer would be reused by sv_gets() and all was well.
With COW however this process is foiled. The preallocated buffer
get shared, and then when $_ is updated the buffer is dropped from $_,
leaving the other SV holding ownership of the overallocated buffer,
and causing sv_gets() to allocate a new buffer entirely. This process
would then repeat consuming time and lots of memory.
This patch introduces a "wastage" check to COW. When decided if we
should COW a string we look at the ratio and difference of SvCUR(sv)
and SvLEN(sv), which represent the "actual string length" and the
"allocated string length". When the difference exceeds a hard threshold,
or when the ration exceeds a designated factor then we do not COW.
This means that strings with large overallocations are not COWed.
Exactly how this works out in practice, where SvGROW() *always*
overallocates, is an open question.
See: https://rt.perl.org/Ticket/Display.html?id=121796
This patch also slightly tweaks SvGROW() not to do roundup on the first
allocation of the pv. Odds are good that the initial request realy does
want exactly what they expected. (SvGROW contrary to what the name
suggests is used for bother *extended* the size of a pv, and
initializing it the first time.)
Tony Cook [Mon, 5 May 2014 00:22:25 +0000 (10:22 +1000)]
[perl #121505] include -fwrapv by default for GCC 4.3 and later
Karl Williamson [Fri, 9 May 2014 00:18:42 +0000 (18:18 -0600)]
perlre: Update obsolete example
/foo{4,3}/ now emits a message, contrary to what the pod claims. Use a
different example that doesn't emit a message
Matthew Horsfall (alh) [Thu, 8 May 2014 12:49:36 +0000 (08:49 -0400)]
Revert "Upgrade Devel::PPPort from 3.21 to 3.22"
This reverts commit
8e5dcc37de4ab79d8ec6f30798947ae97355ff2a, since
the SvREFCNT_dec_NN is bad (leaks).
David Mitchell [Thu, 8 May 2014 12:30:16 +0000 (13:30 +0100)]
Fix Encode 2.60 with g++
The recently added Encode 2.60 won't compile with g++, due to assigning
a const char * const pointer to a char* struct field.
The intent of the code itself is a bit unclear, but it appears to be
to set SvPVX as a read-only alias of a const string, using the SvLEN()=0
trick to avoid it being freed.
Fix the g++ builds by casting away the constness, and add some asserts and
comments to make it less unclear what's going on.
Steve Hay [Tue, 6 May 2014 19:40:56 +0000 (20:40 +0100)]
re-apply: Upgrade to Encode-2.60
Commit
dc396cc293 was reverted by
547245703 due to issues under g++.
This commit re-applies the original commit; the next commit will fix those
issues.
-----
This upgrade includes the blead customizations from
080a704606 and
9e9002efd1 (amongst other changes) so that Perl 5.20.0 can ship with an
official CPAN release of Encode.