This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Karen Etheridge [Thu, 20 Jun 2019 17:10:16 +0000 (10:10 -0700)]
remove unused perldelta sections
Karen Etheridge [Thu, 20 Jun 2019 17:04:54 +0000 (10:04 -0700)]
perldelta entry for
21af3a5205
Karen Etheridge [Thu, 20 Jun 2019 16:45:52 +0000 (09:45 -0700)]
perldelta entry for
82b53111b2
Karen Etheridge [Thu, 20 Jun 2019 16:43:34 +0000 (09:43 -0700)]
perldelta entry for
c8b94fe036
Karen Etheridge [Thu, 20 Jun 2019 16:38:56 +0000 (09:38 -0700)]
perldelta entry for
790ba7215e
Karen Etheridge [Thu, 20 Jun 2019 16:31:04 +0000 (09:31 -0700)]
perldelta entry for
da5a0da22e
Karen Etheridge [Thu, 20 Jun 2019 16:28:44 +0000 (09:28 -0700)]
perldelta entry for
ba77fc5964
Andreas Koenig [Thu, 13 Jun 2019 19:04:47 +0000 (19:04 +0000)]
[PATCH] Updates CPAN.pm to ANDK/CPAN-2.27-TRIAL2.tar.gz
2019-06-09 k <andk@cpan.org>
* release 2.27-TRIAL2
* bugfix: omit the new POSIX::setsid call and the waitpid with
WNOHANG on Windows
* bugfix: the signalhandler has to kill the new process group
spawned for running the tests
* adding the README file that was generated during the release of
2.27-TRIAL
2019-05-31 k <andk@cpan.org>
* release 2.27-TRIAL
* two new options to protect against accidental downgrades:
allow_installing_outdated_dists and
allow_installing_module_downgrades
* two new options to tune the automatic determination of the
nearest peers: urllist_ping_external and urllist_ping_verbose;
NOTE: this feature was developed during the Perl Toolchain Summit
2019 in Marlow; thanks to the sponsors: Booking.com, cPanel,
MaxMind, FastMail, ZipRecruiter, Cogendo, Elastic, OpenCage Data,
Perl Services, Zoopla, Archer Education, OpusVL, Oetiker+Partner,
SureVoIP, YEF
* reveal the size of PERL5LIB in diagnostic output
* new semantics for parameter ftpstats_size: setting to '0' or
lower, disables download statistics
* bugfix: under certain circumstances, failing dependencies via
recommends and suggests could abort a build; this is now fixed
* bugfix: protect bundle processing against unavailable bundle
files and missing build directories
* bugfix: fix broken permissions after untar
* bugfix: protect against exceptions from unzip
* bugfix: add one level of fork+setsid for testing to prevent that
a test can kill the process group that CPAN.pm is running in.
Learned from experience with testing VIZDOM/DBD-JDBC-0.71.tar.gz
* fix plugins: all early returns from all methods, that are
accessible for plugins, now call the post* plugins
* new question answered in the FAQ: "How can I switch to sudo
instead of local::lib" (thanks to Amos Bird for asking the
question on irc)
* plenty of new and updated distroprefs documents, among which are
some important ones to prevent Module::AutoInstall from switching
to CPANPLUS and taking over (and harming) the build
Karen Etheridge [Thu, 20 Jun 2019 05:00:23 +0000 (22:00 -0700)]
ignore unwanted files copied from cpan repository
..and the distribution directories cannot be ignored; t/porting/podcheck.t will look inside them.
Karen Etheridge [Thu, 20 Jun 2019 04:59:11 +0000 (21:59 -0700)]
commit (possibly outdated?) TODO file from cpan repository
Karen Etheridge [Thu, 20 Jun 2019 04:12:11 +0000 (21:12 -0700)]
whitespace changes only
Karen Etheridge [Thu, 20 Jun 2019 03:53:47 +0000 (20:53 -0700)]
bump reference date in cross-compilation docs
Karen Etheridge [Thu, 20 Jun 2019 02:58:36 +0000 (19:58 -0700)]
whitespace changes only
Dagfinn Ilmari Mannsåker [Wed, 19 Jun 2019 10:44:10 +0000 (11:44 +0100)]
Fix perldelta typo
Steve Hay [Wed, 19 Jun 2019 07:04:17 +0000 (08:04 +0100)]
Tony Cook [Wed, 19 Jun 2019 05:15:06 +0000 (15:15 +1000)]
Tony Cook [Mon, 17 Jun 2019 01:46:00 +0000 (11:46 +1000)]
(perl #134193) make the varname match the %[+-] names
when loading Tie/Hash/NamedCapture.pm for the long name variants
Tony Cook [Thu, 13 Jun 2019 00:05:15 +0000 (10:05 +1000)]
(perl #134193) allow %{^CAPTURE} to work when @{^CAPTURE} comes first
gv_magicalize() is called when the GV is created, so when the array
was mentioned first, the hash wouldn't reach this code and the magic
wouldn't be added to the hash.
This also fixes a similar problem with (%|@){^CAPTURE_ALL}, though
@{^CAPTURE_ALL} is unused at this point.
Vickenty Fesunov [Fri, 22 Sep 2017 23:00:46 +0000 (19:00 -0400)]
%{^CAPTURE_ALL} was intended to be an alias for %-; make it so.
For: RT #131867
Committer: Increment $VERSION in ext/Tie-Hash-NamedCapture/NamedCapture.pm.
Add Vickenty Fesunov to AUTHORS.
Tony Cook [Wed, 19 Jun 2019 04:17:44 +0000 (14:17 +1000)]
Tony Cook [Wed, 19 Jun 2019 01:25:13 +0000 (11:25 +1000)]
Manuel Mausz is now a perl author
Manuel Mausz [Mon, 17 Jun 2019 08:24:03 +0000 (10:24 +0200)]
Add test for perl #134169
Manuel Mausz [Mon, 3 Jun 2019 22:29:09 +0000 (00:29 +0200)]
(perl #134169) mg.c reset endptr after use
Perl_grok_atoUV has been changed so endptr constraints the input. Thus we need to reset the endptr after every use.
Pali [Mon, 17 Jun 2019 12:09:08 +0000 (14:09 +0200)]
Document SvTRUEx() macro
Tony Cook [Wed, 19 Jun 2019 00:12:01 +0000 (10:12 +1000)]
perldelta for
bc26d2e6b287
bc26d2e6b287 changes the behaviour introduced by the original commit
and there's been no release, so there's no need for a new delta
entry
Tony Cook [Tue, 18 Jun 2019 04:59:00 +0000 (14:59 +1000)]
(perl #133936) make send() a bit saner
This undoes some of the effect of
f1000aa2d in that TO will always
be supplied to CORE::send() if it's supplied, otherwise whether
TO is supplied to CORE::send() is based on whether the socket is
connected.
On Linux you appear to be able to sendto() to a different address on
a connected UDP socket, but this doesn't appear to be portable,
failing on darwin, and presumably on other BSDs.
Steve Hay [Thu, 13 Jun 2019 07:24:33 +0000 (08:24 +0100)]
The Windows CE Chainsaw Massacre
Remove WinCE support as agreed in the thread starting here:
https://www.nntp.perl.org/group/perl.perl5.porters/2018/07/msg251683.html
Tony Cook [Mon, 17 Jun 2019 05:24:04 +0000 (15:24 +1000)]
perldelta for
a8e0c1fd5ade
Tony Cook [Wed, 12 Jun 2019 05:21:47 +0000 (15:21 +1000)]
(perl #133989) scalar() the argument to readline, if any
C< readline @foo > would treat @foo as array. If the array was empty
this would push zero items and readline() would then pop one item,
possibly underflowing the stack.
Tony Cook [Mon, 17 Jun 2019 00:51:22 +0000 (10:51 +1000)]
Michael Haardt is now perl author
Michael Haardt [Mon, 22 Apr 2019 10:44:42 +0000 (12:44 +0200)]
Increase cpp macro space for HP-UX 11.00 ANSI compiler
Tony Cook [Mon, 17 Jun 2019 00:17:46 +0000 (10:17 +1000)]
Tony Cook [Mon, 18 Mar 2019 05:02:33 +0000 (16:02 +1100)]
(perl #133936) document differences between IO::Socket::* and builtin
Tony Cook [Mon, 18 Mar 2019 04:48:04 +0000 (15:48 +1100)]
bump $IO::VERSION
Tony Cook [Mon, 18 Mar 2019 04:05:32 +0000 (15:05 +1100)]
(perl #133936) ensure TO is honoured for UDP $sock->send()
Tony Cook [Thu, 13 Jun 2019 06:08:32 +0000 (16:08 +1000)]
perldelta for
368ac47cccd4
Tony Cook [Wed, 17 Apr 2019 05:45:15 +0000 (15:45 +1000)]
(perl #134035) ensure sv_gets() handles a signal handler modifying sv
At a very basic level at least.
In the ticket cases, a signal handler is modifying (and reallocating
PVX) the sv, while sv_gets() retained a pointer to the inside of the
SV.
This still has some problems, like if the signal handler ends up
shortening SV, there may be old data left between the old position
and the new position, but I think that's a case of user error.
Tony Cook [Wed, 12 Jun 2019 02:07:14 +0000 (12:07 +1000)]
perldelta for
40258daf9899
Tony Cook [Wed, 15 May 2019 05:59:49 +0000 (15:59 +1000)]
(perl #134072) allow \&foo = \&bar to work in main::
subs in main:: are stored as a RV referring to a CV as a space
optimization, but the pp_refassign code expected to find a glob,
which made the assignment a no-op.
Fix this by upgrading the reference to a glob in the refassign check
function.
Note that this would be an issue in other packages if
1e2cfe157ca
was reverted (allowing the space savings in other packages too.)
Tony Cook [Wed, 12 Jun 2019 01:40:29 +0000 (11:40 +1000)]
perldelta for
69afcc21edd2
Tony Cook [Tue, 12 Feb 2019 05:30:34 +0000 (16:30 +1100)]
(perl #130585) prevent a spurious ) in a subparse confusing the parser
When doing a subparse, the tokenizer opens up the subexpression
with a '(' token, expecting the logic in yylex() to generate a ')'
once it sees the end of the subparsed string.
If the subparsed string includes an unmatched ')', this could confuse
the parser into finishing the expression and effectively exiting the
subparse without cleaning up (including popping the context)
To avoid that, create special bracketing tokens only generated for
a subparse and update the grammar to use those tokens in the cases
they might be used in a subparse.
This is an updated version of the patch that moves the FUNC rule
to where the original rule was and adds a test for non-regexp
subparses.
Tony Cook [Wed, 12 Jun 2019 00:17:26 +0000 (10:17 +1000)]
perldelta for
7259f4194f31
Tony Cook [Tue, 4 Jun 2019 06:35:35 +0000 (16:35 +1000)]
(perl #134125) accept only complete hex and binary literals
Tony Cook [Tue, 11 Jun 2019 06:45:50 +0000 (16:45 +1000)]
Tony Cook [Wed, 29 May 2019 04:37:25 +0000 (14:37 +1000)]
(perl #133850) allow attributes in sub-parses
Tony Cook [Wed, 29 May 2019 03:47:36 +0000 (13:47 +1000)]
(perl #133850) allow @x{...} with space in sub-parse
Tony Cook [Wed, 29 May 2019 01:46:01 +0000 (11:46 +1000)]
(perl #133850) warn on ${time} even in sub-parse
Code like:
$a = ${time}
warns with:
Ambiguous use of ${time} resolved to $time at ...
but:
s/^/ ${time} /e
didn't, since the parser is in a special state in sub-parses.
Tony Cook [Tue, 19 Feb 2019 04:38:39 +0000 (15:38 +1100)]
(perl #133850) fix parsing hints for print $fh "foo" in s///e
The replacement code in s///e is parsed using a sublex, similarly
to double-quotish replacement.
The code that handles C< $id > tries to detect what the next token
should be, but only special cased code similar to C< print $fh ... >
in a non-sublex, so s/../print $fh $1/e set PL_expect to XOPERATOR
which caused the parser to complain when the $1 wasn't an operator.
The fix here handles two cases:
s/.../code here/e
In this case the code is inserted into a do {} block like:
do { code here }
so PL_lex_brackets ends up non-zero.
The second case is code like:
"xxx${code here}"
which had the same problem, which this also fixes.
Tony Cook [Tue, 11 Jun 2019 04:59:23 +0000 (14:59 +1000)]
(perl #122112) remove some interfering debug output
Tony Cook [Tue, 11 Jun 2019 01:26:43 +0000 (11:26 +1000)]
Tony Cook [Mon, 10 Jun 2019 00:42:45 +0000 (10:42 +1000)]
bump $Storable::VERSION
and update Changes
Tony Cook [Mon, 10 Jun 2019 00:17:20 +0000 (10:17 +1000)]
(perl #134179) include regexps in the seen objects table on retrieve
Also, bless the regexp object, so freezing/thawing bless qr//, "Foo"
returns a "Foo" blesses regexp.
James E Keenan [Sat, 8 Jun 2019 21:45:24 +0000 (17:45 -0400)]
Revert "Fix edge case test failure in ext/POSIX/t/mb.t"
This reverts commit
69b89a0f0bb2cbb4c1607e78c3b414bf45244bea.
This commit generated two test failures on Linux when perl was built
with config_args like these:
'-des -Dusedevel -Dcc=clang -Accflags=-Werror=declaration-after-statement -g -fno-omit-frame-pointer -fsanitize=address -fno-common -fsanitize-blacklist=/home/jkeenan/gitwork/perl/asan_ignore -Aldflags=-fsanitize=address'
See: https://rt.perl.org/Ticket/Display.html?id=134182#txn-1639258
Reverting from blead; will create branch for testing.
Signed-off-by: James E Keenan <jkeenan@cpan.org>
Sawyer X [Sat, 8 Jun 2019 13:40:01 +0000 (16:40 +0300)]
Fix upcoming release schedule
Dominic Hargreaves [Fri, 7 Jun 2019 09:04:26 +0000 (10:04 +0100)]
Fix edge case test failure in ext/POSIX/t/mb.t
This new test fails in an environment where LANG is set to one thing and
LC_ALL is set to another, and where LANG is set to a locale which is
not installed in the environment in question.
Such a test environment is arguably broken, but appears in common
chroot setups such as Debian's sbuild tool where LANG is inherited from
the parent environment, and LC_ALL is used to override it.
Committer: removed one non-printing character from patch
For: RT # 134182
Tony Cook [Wed, 5 Jun 2019 04:37:32 +0000 (14:37 +1000)]
Tony Cook [Wed, 5 Jun 2019 01:59:17 +0000 (11:59 +1000)]
(perl #134175) tests for eval_pv rethrowing objects
Pali [Tue, 4 Jun 2019 10:28:09 +0000 (12:28 +0200)]
In Perl_eval_pv rethrow error via croak_sv()
This would allow to rethrow object exceptions.
James E Keenan [Sat, 25 May 2019 02:37:40 +0000 (22:37 -0400)]
Prevent hostname() from accepting arguments
Previously deprecated; now fatal.
Incorporate feedback from Tony Cook and Richard Leach as to wording of
exception and how it is invoked.
For: RT 134137
Nicolas R [Tue, 4 Jun 2019 19:28:50 +0000 (13:28 -0600)]
Bump Devel-PPPort for next release
Nicolas R [Wed, 15 May 2019 14:53:26 +0000 (08:53 -0600)]
Fix compilation issues with version older than 5.010
By adding more Perl versions to the Travis CI configuration
file we discovered that versions earlier 5.010 are broken.
Note that the uv.t does not raise the overflow warning
as expected by the test and we probably want to fix this in
a short future.
The test uv.t is simply not passing with 5.006 versions and
has several failures. I've currently disabled it.
Patch provided by Pali
(cherry picked from commit
a09f79fbc2455b7ea72a49f6627a639101ba35a2)
Signed-off-by: Nicolas R <atoomic@cpan.org>
Nicolas R [Tue, 14 May 2019 19:53:45 +0000 (13:53 -0600)]
Rename PPPort_xs.PL to RealPPPort_xs.PL
Fixes Devel-PPPort GH #21
To avoid confusion rename the template for RealPPPort.xs
file as RealPPPort_xs.PL so it's now clear what file
it generates.
(cherry picked from commit
0f14f67985491207f4a0e3936307f4c565717fd6)
Signed-off-by: Nicolas R <atoomic@cpan.org>
Chris 'BinGOs' Williams [Tue, 4 Jun 2019 12:52:58 +0000 (13:52 +0100)]
Fix builds after EUMM update
James E Keenan [Sun, 2 Jun 2019 01:29:22 +0000 (21:29 -0400)]
Clarify documentation for bisect runner.
The -D, -A and -U switches should be spelled as if you were normally
giving them to ./Configure.
For: RT # 134164
Richard Leach [Mon, 3 Jun 2019 17:03:17 +0000 (17:03 +0000)]
Android can pass eintr_print.t
Karl Williamson [Mon, 3 Jun 2019 19:10:51 +0000 (13:10 -0600)]
podcheck.t: Don't output warnings when extracting pod
This turns off warnings while we are extracting pod. If we are
reporting problems, these will be output at the end.
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 17:57:27 +0000 (18:57 +0100)]
Update DB_File to CPAN version 1.852
[DELTA]
1.852 21 April Feb 2019
* ParseOpenInfo() leaks if it croaks
DB_File_type memory not freed when ParseOpenInfo croaks.
https://github.com/pmqs/DB_File/issues/1
* Fix whitespace in DB_File.xs
1.851 4 April Feb 2019
* Fix typo in MANIFEST with .travis.yml file
1.850 10 Feb 2019
* Added soure to github
https://github.com/pmqs/DB_File
* Added .travis.yml
* Added t/meta-json.t & t/meta-yaml.t
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 14:11:38 +0000 (15:11 +0100)]
Update Test-Simple to CPAN version 1.302164
[DELTA]
1.302164 2019-04-27 01:43:44-07:00 America/Los_Angeles
1.302163 2019-04-25 05:45:47-07:00 America/Los_Angeles (TRIAL RELEASE)
- Do not use threads::Shared in Test::Tester::Capture (#826)
- Add missing version info to Info/Table
- Fix event in global destruction bug (#827)
- Proper fix for todo = '' (#812, #829)
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 12:38:43 +0000 (13:38 +0100)]
Update CPAN to CPAN version 2.26
[DELTA]
2019-03-19 k <andk@cpan.org>
* release 2.26
* testfix release, no functional change
* 97-run.t is now skipped when test is run by root user because
perldoc often fails for root user (thanks to Binarus for
reporting)
* small additions to distroprefs and to the Makefile.PL
2019-03-03 k <andk@cpan.org>
* release 2.25
* two weeks after the TRIAL release cpantesters have produced 298
pass and 2 fail reports on 108 different configurations; the two
fails are outliers I don't understand
* no functional change over 2.25-TRIAL; only a couple in the
distroprefs directory which is not used per default
2019-02-16 k <andk@cpan.org>
* release 2.25-TRIAL
* fix: Avoid a warning when prompting install_help intro (Nicolas
R/atoomic)
* testfix: load the tested module early, before juggling with @INC
* testfix: replace an exec with system and exit (greetings to Windows)
* two more distroprefs lines
2019-02-14 k <andk@cpan.org>
* release 2.24-TRIAL
* fix: set internal error state on writemakefile=NO in a rare case
without any output
* test fix: avoid a so far unreflected dependency on perldoc
* a few more distroprefs
2019-02-10 k <andk@cpan.org>
* release 2.23-TRIAL
* fix: when option cleanup_after_install is active, prevent
rerunning make install after a cleanup; allow it only with the
help of force; also prevent that it is triggered too early
* fix: address #121162: support distroprefs for install.env
* fix: the option h on cpan script now really ignores all other
options and arguments
* fix: Local::Null::Logger on cpan script did not honour
CPANSCRIPT_LOGLEVEL
* address #122520: exit 1 on unknown options on cpan script
* address #94941: refuse to generate reports with CPAN::Reporter
lower than 1.2011
* fix: distropref method "goto" now inherits CALLED_FOR and other
attributes from caller
* fix: correct a buggy version comparison when testing version of
Net::Ping
* portability fix: ensure that Compress::Zlib supports gzopen()
* internal fix: never overwrite internal attribute CALLED_FOR (no
known user-relevant implications)
* tiny test fixed uncovered by cpantesters, various tiny typo
corrections
* a couple of new and updated distroprefs files
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 12:07:59 +0000 (13:07 +0100)]
Update IO-Compress to CPAN version 2.086
[DELTA]
2.086 31 March 2019
* IO::Compress::Zip & IO::Uncompress::Unzip
Added support for Language Encoding Flag via the EFS option.
Starting point was pull request https://github.com/pmqs/IO-Compress/pull/1
* zipdetails - some support for MVS (Z390) zip files
* IO::Uncompress::Base
Issue with trailing data after zip archive
#128626 for IO-Compress: mainframe zip archive
* t/cz-14gzopen.t
cperl error found in http://www.cpantesters.org/cpan/report/
448cafc4-3108-11e9-9b6b-
d3d33d7b1231
Perl has this: "Not enough arguments for Compress::Zlib::gzopen"
cperl uses this: "Not enough arguments for subroutine entry Compress::Zlib::gzopen"
* Handlers being called when optional modules are not installed
#128538: $SIG{__DIE__}
* #128194: Beef up diag when system returns error
* Moved source to github https://github.com/pmqs/IO-Compress
* Add META_MERGE to Makefile.PL
* Added meta-json.t & meta-yaml.t
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 12:05:30 +0000 (13:05 +0100)]
Update Compress-Raw-Bzip2 to CPAN version 2.086
[DELTA]
2.086 31 March 2019
* Moved source to github https://github.com/pmqs/Compress-Raw-Bzip2
* Add META_MERGE to Makefile.PL
* Added meta-json.t & meta-yaml.t
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 12:03:49 +0000 (13:03 +0100)]
Update Compress-Raw-Zlib to CPAN version 2.086
[DELTA]
2.086 31 March 2019
* Moved source to github https://github.com/pmqs/Compress-Raw-Zlib
* Add META_MERGE to Makefile.PL
* Added meta-json.t & meta-yaml.t
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 11:15:03 +0000 (12:15 +0100)]
Update podlators to CPAN version 4.12
[DELTA]
podlators 4.12 (2019-05-31)
Skip the man/no-encode.t test if Encode is already loaded while
running the test suite, which seems to happen sometimes with CPAN
Testers tests.
Chris 'BinGOs' Williams [Mon, 3 Jun 2019 11:12:07 +0000 (12:12 +0100)]
Update Pod-Simple to CPAN version 3.38
[DELTA]
* Release 3.38
2019-05-30 Karl Williamson <khw@cpan.org>
Removed some alien files that somehow got in the tar, including a copy
of Pod::Escapes. Spotted by Petr Pisar++
* Release 3.37
2019-05-30 Karl Williamson <khw@cpan.org>
Suppressed some expected diagnostics under harness
Pod::Simple now depends on the 'if' module
Tony Cook [Mon, 3 Jun 2019 06:16:49 +0000 (16:16 +1000)]
perldelta for
027471cf1095
Tony Cook [Wed, 20 Mar 2019 05:47:49 +0000 (16:47 +1100)]
(perl #133913) limit numeric format results to INT_MAX
The return value of v?snprintf() is int, and we pay attention to that
return value, so limit the expected size of numeric formats to
INT_MAX.
Tony Cook [Mon, 3 Jun 2019 05:33:07 +0000 (15:33 +1000)]
perldelta for
94a2f6a3c87a
Tony Cook [Wed, 24 Apr 2019 01:05:21 +0000 (11:05 +1000)]
(perl #134048) prevent an erroneous assertion on OP_SCALAR
Tony Cook [Mon, 3 Jun 2019 05:09:13 +0000 (15:09 +1000)]
Tony Cook [Mon, 3 Jun 2019 04:34:17 +0000 (14:34 +1000)]
(perl #134008) an alternative test
Hugo van der Sanden [Tue, 9 Apr 2019 13:27:41 +0000 (14:27 +0100)]
[#134008] More carefully ignore negative precision in sprintf
Check has_precis more consistently; ensure precis is left as 0 if provided
as a negative number.
Karl Williamson [Mon, 3 Jun 2019 01:05:55 +0000 (19:05 -0600)]
Porting/bisect-runner.pl: Add doc clarification
Karl Williamson [Mon, 3 Jun 2019 00:51:21 +0000 (18:51 -0600)]
/\p{InFoo} should only match blocks, or be user-defined
For a property \p{Block=Foo}, we allow the synonym \p{InFoo} as
documented variously, including perluniprops, even though this usage is
discouraged, as a new Unicode release used in a new version of Perl
could cause the synonym to no longer work.
Prior to this commit, we erroneously allowed the synonym for other
properties, such as \p{InKana} or \p{InS}.
Chris 'BinGOs' Williams [Sun, 2 Jun 2019 08:41:35 +0000 (09:41 +0100)]
Update ExtUtils-MakeMaker to CPAN version 7.36
[DELTA]
7.36 Sun Apr 28 16:28:20 BST 2019
No changes since v7.35_14
This release was made possible by the kind
sponsors of the 2019 Perl Toolchain Summit
held in Marlow, UK:
Booking.com, cPanel, MaxMind, FastMail, ZipRecruiter,
Cogendo, Elastic, OpenCage Data, Bluehost, Perl Services,
Zoopla, Archer Education, OpusVL, Oetiker+Partner, YEF
7.35_14 Sun Apr 28 14:12:22 BST 2019
Win32 fixes:
- Add ExtUtils::PL2Bat path to pl2bat when PERL_CORE
7.35_13 Sun Apr 28 11:57:57 BST 2019
Bug fixes:
- Suppress warnings from EUMM::Locale code page workaround
7.35_12 Sat Apr 27 22:37:26 BST 2019
Enhancements:
- add AppVeyor CI configuration
see <https://github.com/rivy/CI.AppVeyor.helpers-perl> for more information
Bug fixes:
- Resolve RTs 127028 && 127316 on Mojave system perl
- Honour man page disablement under INSTALL_BASE
- fix `dmake` warning by removing dmake-superfluous ".NOTPARALLEL" target
- suppress inherited AUTOLOAD warning for 'Win32::ConsoleCP()'
- fix perl image (aka, executable) quoting for `dmake` builds
- skip broken test for Win32 strawberry perl v5.10 (and some earlier versions)
- add workaround to ExtUtils::MakeMaker::Locale for code pages 'cp65000' and 'cp65001'
7.35_11 Thu Apr 25 11:53:59 BST 2019
Bug fixes:
- Fix RT#128004 gcc AIX builds broken
7.35_10 Wed Feb 20 10:03:50 GMT 2019
Test fixes:
- Skip "merged /usr" tests on MSWin32
7.35_09 Mon Feb 18 10:05:42 GMT 2019
Bug fixes:
- stringify version before comparing
Test fixes:
- Changed wording of skip message for xsstatic
QA fixes:
- travis is deprecating container-based environments
7.35_08 Thu Dec 6 10:22:02 GMT 2018
Enhancements:
- propagate all variables used by Buildroot to subdirs
7.35_07 Fri Nov 23 11:34:27 GMT 2018
Bug fixes:
- Avoid mangling /bin non-perl shebangs on merged-/usr systems
VMS fixes:
- Handle PERL_ARCHLIBDEP and DESTINSTALL... macros on VMS.
- Remove trailing space from multi-in.PL in PL_FILES.t
- Skip "merged /usr" tests on VMS.
7.35_06 Thu Jul 19 20:30:55 BST 2018
Enhancements:
- Override shebang with PERL_MM_SHEBANG=relocatable env var
Bug fixes:
- Refactored Liblist::Kid tests, enabling UNIX testing
7.35_05 Tue Jul 10 09:44:25 BST 2018
Win32 fixes:
- add Visual C parallel building support
7.35_04 Mon Jul 9 10:21:59 BST 2018
Bug fixes:
- Fix manification on MSWin32
Doc fixes:
- Mention manifypods target in FAQ for
man creation on non-un*x OS
7.35_03 Fri Apr 27 14:28:21 BST 2018
Enhancements:
- Allow specifying extra inputs for PL_FILES scripts
7.35_02 Tue Apr 24 11:38:39 BST 2018
Core fixes:
- Win32 fixes for gmake 4.2.1 in quoting literals
7.35_01 Thu Apr 19 13:17:35 BST 2018
Core fixes:
- use tr instead of eval on $VERSION
- Fix PUREPERL_ONLY warnings
James E Keenan [Mon, 27 May 2019 17:18:10 +0000 (13:18 -0400)]
Use of code points over 0xFF in string bitwise operators
Implement complete fatalization. Some instances of these were fatalized
in 5.28. However, in cases where the wide characters did not affect the
end result, no deprecation notice was raised. So they remained legal,
though deprecated. Now, all occurrences are fatal (as of 5.32).
Modify source code in doop.c. Adapt test file. Update perldiag and
perldeprecation.
For: RT 134140
(Commiter changed a verb to past tense in the pod)
Graham Knop [Fri, 20 Apr 2018 13:17:58 +0000 (15:17 +0200)]
refer Time::HiRes RT queue to perl core
Nicolas R [Fri, 31 May 2019 15:42:32 +0000 (09:42 -0600)]
Add unit test for compiled once RegExp
Make sure that when using a Regexp with /o
the RegExp is frozen as expected.
Using a BEGIN block to freeze the RegExp
is also providing extra code coverage for the
perl compiler.
Karl Williamson [Fri, 31 May 2019 14:13:05 +0000 (08:13 -0600)]
regcomp.c: White-space only
Outdent since previous commit removed an enclosing block
Karl Williamson [Sun, 31 Mar 2019 00:45:20 +0000 (18:45 -0600)]
Split ANYOFH regnode into two types
ANYOFHb will be for nodes where all the matching code points share the
frst UTF-8 byte. ANYOFH will be for all others. Neither of these has a
bitmap.
I noticed that we can omit some execution conditionals by splitting the
nodes.
Richard Leach [Fri, 31 May 2019 01:06:19 +0000 (21:06 -0400)]
[PATCH] Remove vestiges of mpeix support (removed in 5.17.x)
Karl Williamson [Fri, 31 May 2019 00:14:00 +0000 (18:14 -0600)]
Merge branch 'autodoc' into blead
This branch cleans up a bunch of the autodoc handling.
It had its genesis in an obscure warning from Devel::PPPort:
mysterious name
It turns out that the pod entry for the macros the warnings are for are
improper. My guess is that it was a kludge by someone looking for a
quick way to get their usage point across, when the underlying
infrastructure was deficient in allowing it. But it looked to be fairly
easy to enhance that infrastructure.
But then I noticed that some of the flags in the embed.fnc entries have
different meanings than the equivalent =for apidoc entries in the
source.
Here are most of the conflicts:
Flag embed.fnc =for apidoc
n no pTHX don't output empty parens for no arguments
s S_ static fcn output a semi-colon at the end of the usage entry
x Don't export experimental
I imagine that they started out the same, and diverged over the years,
as there was no unified place where they were documented. Devel::PPPort
was unaware of this divergence, and so got some things wrong, and had
some code expecting one flag, and other code expecting the other.
This branch changes the flags in embed.fnc to correspond with what
autdoc wants, and brings everything else that uses them into
conformance. embed.fnc is a more contained place to change, and I
couldn't find anything in CPAN that would be bothered by this. And
also, if D:P were to be regenerated on an older perl, it still would use
the new embed.fnc shipped with it, but would be using the flags from the
older perl source code, so it had to be embed.fnc that changed.
The O flag in embed.fnc can then be used instead of having another flag
in the =for apidoc entries for the situation of having deprecated
'perl_' prefixes, removing the need for autodoc to have to try to figure
it out, and there were places where it had been getting it wrong.
Once that was done, the flags in embed.fnc could override the ones in
the =for api entries, as every flag has the same meaning in both places.
Doing so showed a bunch of errors, mostly missing 'const's in the
parameters, but, besides the 'perl_' prefix errors, some functions were
not listed as needing to be called with the 'Perl_' prefix. The flags
in embed.fnc have to be pretty accurate, or perl won't compile.
I then removed about 150 redundant =for apidoc entries. It is a waste
having them in the code twice, and they do get out of sync. Note that
there does need to be an entry like
=for apidoc FOO
for the autodoc facility to know where the actual pod for a given
function is. And the entry needs to have the flags, return value, and
argument list detailed if and only if FOO isn't in embed.fnc. I myself
didn't know that if omitted, the values in embed.fnc were used, so I
wasted time in the past duplicating these. Now, if there's duplication
autodoc will warn.
autodoc did check for a couple of discrepancies if there were two
entries, but that code is now unnecessary and has been ripped out.
I added a flag so that something that isn't a straight name can be
documented, and will rip out the code in D:P that special-cased the few
existing entries that were like this. Now there is a warning from
autodoc, unless the flag is present, when this happens, so that
'mysterious name' won't show up again.
I added another flag to make it easier to deal with functions that have
become wrappers for others, and there is a macro that bypasses the
original one, but for back compat, we still have the original.
autodoc did not realize that you could have things like
Perl_sprintf_nocontext() without a pTHX. That flag already is in
embed.fnc, and now autodoc uses it.
Finally, I added extensive comments to embed.fnc to document all the
flags, and removed other outdated comments elsewhere in favor of a
pointer to the comments in embed.fnc
Karl Williamson [Thu, 30 May 2019 01:11:04 +0000 (19:11 -0600)]
perlguts: Remove documentation about embed.fnc flags
embed.fnc now has sufficient comments within it. Anyone changing that
file will see those comments first. Having them redundantly explained
here adds little value, and is out-of-date. So just remove them, with a
ptr to embed.fnc
Karl Williamson [Thu, 30 May 2019 01:10:19 +0000 (19:10 -0600)]
embed.fnc: Add more extensive comments
This revises the comments significantly to better inform the reader.
Karl Williamson [Thu, 30 May 2019 00:33:25 +0000 (18:33 -0600)]
Remove redundant info on =for apidoc lines
This information is already in embed.fnc, and we know it compiles. Some
of this information is now out-of-date. Get rid of it.
There was one bit of information that was (apparently) wrong in
embed.fnc. The apidoc line asked that there be no usage example
generated for newXS. I added that flag to the embed.fnc entry.
Karl Williamson [Wed, 29 May 2019 22:06:51 +0000 (16:06 -0600)]
autodoc.pl: Use embed.fnc entry when available
Having two different pod definitions for the same function leads to
things being out of sync. This commit ignores the one in the '=for
apidoc' line if there is one in embed.fnc.
Doing so led to a bunch of changes in perlapi, showing that the apidoc
lines were inaccurate. The ones in embed.fnc must be accurate enough to
get perl to compile.
I added a warning for when there's a redundant entry, and in the next
commit I will remove the many such.
Karl Williamson [Wed, 29 May 2019 22:01:34 +0000 (16:01 -0600)]
autodoc.pl: Add N flag
This adds a check that the macro or function name for the pod entry is a
legitimate name, as almost all are. If this had been in effect, the bug
fixed by the previous commit would not have been necessary.
But there are a very few things that are documented that aren't strict
names. This adds a flag so that autodoc can be notified to not warn on
them. This will allow Devel::PPPort to not have to special case
situations like this, which it now does.
Karl Williamson [Wed, 29 May 2019 21:58:20 +0000 (15:58 -0600)]
autodoc.pl: Check for misuse of the 'n' flag
This flag indicates that the macro has no arguments. It makes no sense
to use in some situations, which are now checked for.
This commit also documents the long existing 'n' flag.
Karl Williamson [Wed, 29 May 2019 21:50:45 +0000 (15:50 -0600)]
autodoc.pl: Make 's' flag independent of 'n'
The 's' flag is used by autodoc.pl to add a semi-colon to the end of a
usage example. This commit allows that to happen even if the macro has
parameters.
This allows two macros in scope.c to be properly documented. Previously
they weren't, and caused warnings in Devel::PPPort as a result.
This commit adds documentation to embed.fnc for the 's' flag, which has
long existed, undocumented.
Karl Williamson [Wed, 29 May 2019 21:41:23 +0000 (15:41 -0600)]
autodoc.pl: Notice the no-thread context flag
I realized reading the code that it would be possible for a function
definition to be wrongly output if it isn't called with a thread context
variable. The information for that is already in embed.fnc, and so we
just have to use it to avoid printing the variable if not present
Karl Williamson [Wed, 29 May 2019 21:28:44 +0000 (15:28 -0600)]
embed.fnc: Add flag for bypass macro existence
Sometimes a function is reduced to be a wrapper, and we want for code to
directly call the underlying one, but we retain the old 'Perl_foo'
function to avoid breaking code that used that form. I've tried various
kludges around that, but this seems more promising.