This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Chris 'BinGOs' Williams [Thu, 21 Jan 2021 09:30:07 +0000 (09:30 +0000)]
Who wants to be the disco king?
Richard Leach [Thu, 21 Jan 2021 03:43:50 +0000 (03:43 +0000)]
Prepare Module::Corelist for 5.33.7
Richard Leach [Thu, 21 Jan 2021 03:10:46 +0000 (03:10 +0000)]
Bump version to 5.33.7
Richard Leach [Thu, 21 Jan 2021 02:38:55 +0000 (02:38 +0000)]
Porting/epigraphs.pod - satisfy porting tests
Richard Leach [Thu, 21 Jan 2021 02:19:23 +0000 (02:19 +0000)]
New perldelta for 5.33.7
Richard Leach [Thu, 21 Jan 2021 02:00:12 +0000 (02:00 +0000)]
release_schedule.pod - tick off 5.33.6 release
Richard Leach [Thu, 21 Jan 2021 01:57:41 +0000 (01:57 +0000)]
Update epigraphs.pod with 5.33.6 entry
Richard Leach [Thu, 21 Jan 2021 01:47:32 +0000 (01:47 +0000)]
Merge branch 'release-5.33.6' into blead
Andy Dougherty [Wed, 20 Jan 2021 15:20:09 +0000 (10:20 -0500)]
Declare myself an inactive core developer for the present.
Richard Leach [Wed, 20 Jan 2021 18:25:42 +0000 (18:25 +0000)]
add new release to perlhist
Richard Leach [Wed, 20 Jan 2021 18:22:43 +0000 (18:22 +0000)]
Finalize perldelta.pod for 5.33.6
Richard Leach [Wed, 20 Jan 2021 17:30:01 +0000 (17:30 +0000)]
Update Module::CoreList for 5.33.6
Richard Leach [Wed, 20 Jan 2021 17:26:25 +0000 (17:26 +0000)]
Module/CoreList.pm - fixup add (correct) missing comma
Richard Leach [Wed, 20 Jan 2021 17:09:35 +0000 (17:09 +0000)]
Module/CoreList.pm - fixup add missing comma
Karl Williamson [Thu, 14 Jan 2021 15:03:21 +0000 (08:03 -0700)]
regcomp.c: White-space and comments
Karl Williamson [Thu, 14 Jan 2021 14:52:26 +0000 (07:52 -0700)]
Allow blanks within and adjacent to {...} constructs
This was the consensus in
http://nntp.perl.org/group/perl.perl5.porters/258489
Karl Williamson [Sat, 9 Jan 2021 05:02:39 +0000 (22:02 -0700)]
perlre: Note the other forms of \k<name>
Not all three synonyms were documented.
This also fixes up related comments in regcomp.c to correspond
Karl Williamson [Thu, 14 Jan 2021 14:37:55 +0000 (07:37 -0700)]
regcomp.c: Further refactor \g
By changing a bool into a pointer, we can avoid some work and prepare
for a future commit.
Karl Williamson [Thu, 14 Jan 2021 11:25:38 +0000 (04:25 -0700)]
regcomp.c: Refactor portions of \g parsing
This moves the finding of the matching '}' for \g{ to earlier, and
creates a temporary to point to the current position in the parse. This
makes it easier to deal with backtracking; we haven't advanced the main
parse pointer, so don't have to remember how far we advanced. This will
prove advantageous in a future commit.
Karl Williamson [Thu, 14 Jan 2021 11:52:10 +0000 (04:52 -0700)]
regcomp.c: Move initialization into declaration
This is considered better practice.
Karl Williamson [Thu, 14 Jan 2021 04:11:38 +0000 (21:11 -0700)]
regcomp.c: Slight simplification
Rather than know how far we have advanced in parsing when we have to
back up, use the already-existing checkpoint position. This results in
slightly more maintainable code that a future commit will take advantage
of.
Karl Williamson [Thu, 14 Jan 2021 03:59:54 +0000 (20:59 -0700)]
t/re/reg_mesg.t: Add two missing test cases
I noticed in code reading that these error cases weren't tested for.
Karl Williamson [Thu, 14 Jan 2021 03:24:33 +0000 (20:24 -0700)]
dquote.c: Change variable name
A future commit will need it to represent just the meaning of the new
name
Karl Williamson [Thu, 14 Jan 2021 03:17:19 +0000 (20:17 -0700)]
toke.c: White-space, comment only
Karl Williamson [Thu, 14 Jan 2021 03:03:08 +0000 (20:03 -0700)]
toke.c: Change variable name
A future commit will need it to represent just the meaning of the new
name
Karl Williamson [Thu, 14 Jan 2021 02:51:18 +0000 (19:51 -0700)]
toke.c: Slight simplification
Rather than know how far we have advanced in parsing when we have to
back up, save the checkpoint position and simply backtrack to it. This
results in slightly more maintainable code that a future commit will
take advantage of.
Karl Williamson [Fri, 8 Jan 2021 02:05:06 +0000 (19:05 -0700)]
Allow empty lower bound in /{,n}/
This change has been planned for a long time, bringing Perl into parity
with similar languages, but it took many deprecation cycles to be able
to reach the point where it could safely go in.
This fixes GH #18264
Karl Williamson [Thu, 7 Jan 2021 14:41:47 +0000 (07:41 -0700)]
Point to error in malformed /x{y,z}/
Prior to this comment a curly quantifier that had an error in the bounds
pointed to the left brace. Now the error message points to the first
bound that has a problem.
Karl Williamson [Mon, 16 Nov 2020 03:57:59 +0000 (20:57 -0700)]
Revamp regcurly(), regpiece() use of it
This commit copies portions of new_regcurly(), which has been around
since 5.28, into plain regcurly(), as a baby step in preparation for
converting entirely to the new one. These functions are used for
parsing {m,n} quantifiers. Future commits will add capabilities not
available using the old version.
The commit adds an optional parameter, to return to the caller
information it gleans during parsing.
regpiece() is changed by this commit to use this information, instead of
itself reparsing the input. Part of the reason for this commit is that
changes are planned soon to what is legal syntax. With this commit in
place, those changes only have to be done once.
This commit also extracts into a function the calculation of the
quantifier bounds. This allows the logic for that to be done in one
place instead of two.
Karl Williamson [Mon, 16 Nov 2020 04:06:11 +0000 (21:06 -0700)]
regcomp.c: Change names of 2 macros for mnemonics
The new names are more understandable to me. This also adds a second
parameter to one macro, that is unused until the next commit in the
series.
Karl Williamson [Wed, 13 Jan 2021 14:32:25 +0000 (07:32 -0700)]
perlrebackslash: A few tweaks
Some white-space changes for vertical alignment, a new example, and
a couple of clarifications.
Richard Leach [Wed, 20 Jan 2021 00:06:53 +0000 (00:06 +0000)]
perldelta.pod - correct broken links
Richard Leach [Tue, 19 Jan 2021 23:09:00 +0000 (23:09 +0000)]
perldelta.pod - move mention of pl2bat.pl
Richard Leach [Tue, 19 Jan 2021 22:56:06 +0000 (22:56 +0000)]
Non-final updates to perldelta.pod ahead of 5.33.6
Karl Williamson [Thu, 24 Dec 2020 03:48:48 +0000 (20:48 -0700)]
perlxs.pod; rpc is considered obsolete
Richard Leach [Tue, 19 Jan 2021 01:18:11 +0000 (01:18 +0000)]
Upgrade libnet from 3.12 to 3.13
Daniel Böhmer [Mon, 18 Jan 2021 05:52:27 +0000 (06:52 +0100)]
Fix POD for $Carp::RefArgFormatter
- Data::Dumper::Dump() MUST be called as class method
- indent example for code markup
Also added myself to AUTHORS as requested:
Ran './Porting/checkAUTHORS.pl --update --from=v5.30.0' and
fixed the entry by hand because of broken Unicode chars.
Richard Leach [Mon, 18 Jan 2021 02:39:46 +0000 (02:39 +0000)]
Upgrade Socket from 2.030 to 2.031
Richard Leach [Mon, 18 Jan 2021 02:23:31 +0000 (02:23 +0000)]
Update IO-Compress from 2.096 to 2.100
Richard Leach [Mon, 18 Jan 2021 02:03:53 +0000 (02:03 +0000)]
Update ExtUtils::Manifest from 1.72 to 1.73
Richard Leach [Mon, 18 Jan 2021 01:41:43 +0000 (01:41 +0000)]
Update Compress::Raw::Zlib from 2.096 to 2.100
Richard Leach [Mon, 18 Jan 2021 00:40:05 +0000 (00:40 +0000)]
Update Compress::Raw::Bzip2 from 2.096 to 2.100
Michael G. Schwern [Sat, 9 Jan 2021 00:55:01 +0000 (16:55 -0800)]
typo fix
Michael G. Schwern [Tue, 29 Dec 2020 05:55:04 +0000 (21:55 -0800)]
fix: Manifest sorting for dotfiles with no extension.
Forgot to add .editorconfig to the MANIFEST.
Manfiest sorting was treating all of .editorconfig as an extension
which put it before .dir-locals.el which is nonsense. Fixed it not
to treat a file named .foo as an extension.
Michael G. Schwern [Tue, 29 Dec 2020 04:27:41 +0000 (20:27 -0800)]
style: Add an EditorConfig file for the C code.
EditorConfig lets editors automatically configure themselves to the
project standard. Like embedded VIM and emacs mode lines, but
universal. Many editors support it out of the box. Most everything
else has a plugin. https://editorconfig.org/
It makes contributing with proper style easier. Pretty basic stuff.
* 4 spaces for indentation
* UTF-8
* Unix newlines
* Strip trailing whitespace
* Add a final newline on the file
TAKAI Kousuke [Thu, 7 Jan 2021 16:05:15 +0000 (01:05 +0900)]
perldiag.pod: Correct description for "Lost precision when %s %f by 1" warning.
The description of this warning used to state that "the target of
C<++> or C<--> is unchanged", but there had been the case where
the target is changed by some value while this warning is issued.
Michael G. Schwern [Tue, 29 Dec 2020 03:48:01 +0000 (19:48 -0800)]
style: Detabify regen files.
They generate C files.
Bump feature.pm and warnings.pm versions to satisfy cmpVERSION.pl.
I can't get it to easily ignore whitespace, `git diff --name-only`
does not respect the -w flag.
regen_perly.pl is left alone. That would require rebuilding
perly.* which is beyond a simple indentation change.
Michael G. Schwern [Tue, 29 Dec 2020 02:04:52 +0000 (18:04 -0800)]
style: Detabify indentation of the C code maintained by the core.
This just detabifies to get rid of the mixed tab/space indentation.
Applying consistent indentation and dealing with other tabs are another issue.
Done with `expand -i`.
* vutil.* left alone, it's part of version.
* Left regen managed files alone for now.
Karl Williamson [Wed, 13 Jan 2021 13:28:32 +0000 (06:28 -0700)]
perlre: Add another mnemonic for /d
This is for people who may not be familiar with the current term. I
found this in a thesaurus searching for something else, and our original
term 'dodgy' wasn't there.
Karl Williamson [Sun, 10 Jan 2021 03:41:12 +0000 (20:41 -0700)]
t/lib/Cname.pm: Comment, white-space only
Kang-min Liu [Fri, 15 Jan 2021 08:24:31 +0000 (17:24 +0900)]
update the links to freenode
According to its documentation[1], the hostname for connecting to
freenode should be chat.freenode.net now.
[1]: https://freenode.net/kb/answer/chat
TAKAI Kousuke [Thu, 14 Jan 2021 14:12:26 +0000 (23:12 +0900)]
perl.h: Fix typos in conditional macro names
Felipe Gasper [Wed, 13 Jan 2021 18:52:33 +0000 (13:52 -0500)]
Fix trivial typos in perlguts.pod.
Tom Hukins [Mon, 4 Jan 2021 10:28:54 +0000 (10:28 +0000)]
rt.perl.org no longer stores Perl 5 bugs
sisyphus [Sun, 10 Jan 2021 04:31:59 +0000 (15:31 +1100)]
win32/makefile.mk - enable USE_QUADMATH builds (mingw compilers only) on MS Windows
sisyphus [Sun, 10 Jan 2021 04:29:04 +0000 (15:29 +1100)]
win32/GNUmakefile - enable USE_QUADMATH builds (mingw compilers only) on MS Windows
sisyphus [Sun, 10 Jan 2021 04:24:20 +0000 (15:24 +1100)]
win32/config_sh.PL - enable USE_QUADMATH builds (mingw compilers only) on MS Windows
sisyphus [Sun, 10 Jan 2021 04:20:32 +0000 (15:20 +1100)]
win32/config_H.gc - enable USE_QUADMATH builds (mingw compilers only) on MS Windows
sisyphus [Sun, 10 Jan 2021 04:15:09 +0000 (15:15 +1100)]
ext/POSIX/POSIX.xs - allow POSIX::strtold on Windows USE_QUADMATH builds
sisyphus [Sun, 10 Jan 2021 04:11:37 +0000 (15:11 +1100)]
perl.h - enable USE_QUADMATH builds (mingw compilers only) on MS Windows
Align __float128 when using 64-bit mingw compilers.
James E Keenan [Sun, 10 Jan 2021 01:51:15 +0000 (01:51 +0000)]
Correct for build-time warning
Addresses this build-time warning:
suggest braces around initialization of subobject [-Wmissing-braces]
Steve Hay [Sun, 10 Jan 2021 11:34:51 +0000 (11:34 +0000)]
Aiming for 5.32.1 on 23rd January
Richard Leach [Sun, 10 Jan 2021 01:18:28 +0000 (01:18 +0000)]
perlguts.pod - single character case correction
SvfARG -> SVfARG
Steve Hay [Sat, 9 Jan 2021 17:05:41 +0000 (17:05 +0000)]
Add epigraph for 5.32.1-RC1
Steve Hay [Sat, 9 Jan 2021 14:06:32 +0000 (14:06 +0000)]
Perl 5.32.1 RC1 today
Karl Williamson [Fri, 8 Jan 2021 18:39:38 +0000 (11:39 -0700)]
perlre: Fix description of quantifer {m,n} upper limit
The allowable max was doubled in 5.30
Steve Hay [Thu, 7 Jan 2021 10:23:06 +0000 (10:23 +0000)]
Bump copyright to 2021 in perl.c and README.
Check that porting/copyright.t is passing when run with --now:
../perl -I../lib porting/copyright.t --now
Steve Hay [Thu, 7 Jan 2021 10:22:27 +0000 (10:22 +0000)]
Add .gitignore to the list of files that are safe to ignore in make_ext.pl
Without this the build on Windows was failing, presumably since
cfb249103f:
FATAL - ..\make_ext.pl has Carp in the list of simple extensions, but it
now contains file '.gitignore' which we can't handle at ..\make_ext.pl
line 498.
Tony Cook [Thu, 7 Jan 2021 00:32:36 +0000 (11:32 +1100)]
reinstate USE_LARGE_FILES for the packaged win32 config.h files
8b3db1a0c enabled this, but a change based on the old disable-
use-large-file rule in my
d9f9953f74 disabled it, so re-enable it.
This prevents some build warnings when building miniperl.
Daniel Laügt [Tue, 5 Jan 2021 15:48:24 +0000 (16:48 +0100)]
Generate lib/Config.pod with unix format to be read with pod/buildtoc
Sergey Poznyakoff [Wed, 6 Jan 2021 08:51:17 +0000 (10:51 +0200)]
GDBM_File: minor changes
* ext/GDBM_File/GDBM_File.xs (rcvr_errfun): Use dTHX
(gdbm_GDBM_version): Don't declare package.
* ext/GDBM_File/typemap: Map gdbm_count_t to T_UV.
* ext/GDBM_File/t/count.t: Use File::Temp to create db in
a temporary directory.
* ext/GDBM_File/t/fatal.t: Likewise.
* ext/GDBM_File/t/opt.t: Likewise.
Sergey Poznyakoff [Thu, 24 Dec 2020 13:33:23 +0000 (15:33 +0200)]
Improve GDBM_File
This patch implements new functions and improves compatibility with
new versions of GDBM.
* ext/GDBM_File/GDBM_File.xs: Define interface methods for
functions in newer GDBM versions.
(GDBM_version): New static method. Return the version number
(string in scalar, array of numbers in list context). Provide
heurisics for determining the library version for GDBM prior
to 1.9.
(gdbm_close): Propagate return value from the library call.
(gdbm_DESTROY): Croak if closing the database fails.
(gdbm_UNTIE): New method.
(gdbm_FETCH): Check database validity. Croak if gdbm_fetch returns
error (except GDBM_ITEM_NOT_FOUND).
(gdbm_STORE,gdbm_DELETE): Likewise.
(gdbm_FIRSTKEY,gdbm_NEXTKEY): Likewise.
(gdbm_EXISTS): Check database validity.
(gdbm_errno): New function.
(gdbm_syserrno): New function.
(gdbm_strerror): New function.
(gdbm_clear_error): New function.
(gdbm_needs_recovery): New function.
(gdbm_recover): New function.
(gdbm_count): New function.
* ext/GDBM_File/typemap (gdbm_count_t): Map to T_COUNT.
* ext/GDBM_File/GDBM_File.pm: Document everything. Raise $VERSION.
* MANIFEST: Update.
* AUTHORS: Update.
Tony Cook [Wed, 6 Jan 2021 23:11:30 +0000 (10:11 +1100)]
pl2bat.pl now needs access to ExtUtils::PL2Bat
This could cause failures in parallel builds.
Tony Cook [Wed, 6 Jan 2021 00:43:16 +0000 (11:43 +1100)]
fix a typo
Hugo van der Sanden [Tue, 5 Jan 2021 15:33:54 +0000 (15:33 +0000)]
fix issue references in tests from
282d9dfeb4
Some cut-n-paste errors.
Hugo van der Sanden [Tue, 5 Jan 2021 15:26:53 +0000 (15:26 +0000)]
Update comment after
5b354d2a8a
The specified commit fixed a bug by treating ($x, undef) on the LHS
as 2 scalars; this comment should have been updated to match.
Tony Cook [Tue, 5 Jan 2021 00:03:18 +0000 (11:03 +1100)]
Daniel Laügt is now a perl author
dlaugt [Mon, 4 Jan 2021 20:35:36 +0000 (21:35 +0100)]
Define RSFP_FILENO before using it
Tony Cook [Mon, 4 Jan 2021 23:44:04 +0000 (10:44 +1100)]
export the win32 symlink related symbols
I couldn't make the build fail due to these missing exports
while I was developing the win32 symlink() support, but I did
have it fail while testing an unrelated change, and reproduced it,
so export them.
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 22:18:57 +0000 (22:18 +0000)]
Add ChangeLog entry for IO version 1.45
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 17:43:00 +0000 (17:43 +0000)]
regen META.yml
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 17:16:55 +0000 (17:16 +0000)]
regen META.json
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 15:10:27 +0000 (15:10 +0000)]
Bump VERSION of every file in dist/IO to 1.45 consistently
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 15:07:10 +0000 (15:07 +0000)]
Add a unit test that IO::Socket constructor uses error variables as specified
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 12:24:15 +0000 (12:24 +0000)]
Actually document the IO::Socket constructor's behaviour on failure, pointing out the $IO::Socket::errstr package var
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 12:04:21 +0000 (12:04 +0000)]
Remote note from IO::Socket::INET's docs about a change that predates even perl v5.6.0
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 11:59:18 +0000 (11:59 +0000)]
Update IO::Socket unit test for $IO::Socket::errstr
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 11:25:54 +0000 (11:25 +0000)]
Bump IO::Socket version number
Paul "LeoNerd" Evans [Mon, 4 Jan 2021 11:25:32 +0000 (11:25 +0000)]
Have IO's socket code write errors also into $IO::Socket::errstr
Tony Cook [Mon, 4 Jan 2021 00:39:17 +0000 (11:39 +1100)]
perldelta for
0f2beabb0803
Tony Cook [Mon, 8 Jun 2020 00:13:35 +0000 (10:13 +1000)]
add a bareword_filehandles feature, which is enabled by default
This disables use of bareword filehandles except for the built-in handles
Craig A. Berry [Sat, 2 Jan 2021 23:09:20 +0000 (17:09 -0600)]
Remove trailing semicolon from ALIGNED_TYPE definition
Every use of it already has its own semicolon, and duplicating it
can lead to warnings like this:
ALIGNED_TYPE(XPVGV);
...................^
%CC-I-EXTRASEMI, Extraneous semicolon.
at line number 894 in file D0:[craig.blead]sv.c;1
Craig A. Berry [Sat, 2 Jan 2021 22:48:21 +0000 (16:48 -0600)]
Revert "Fix Time::HiRes compile probe on VMS"
This reverts commit
9eebd4ca7bb8610f51a27d96c12e9b1676958d55.
It turns out that probing for the existence of functions also
only generates informational messages (and thus a successful
exit status) when the function is missing, e.g.:
ret = clock_nanosleep(CLOCK_REALTIME, 0, &ts1, &ts2);
..........^
%CC-I-IMPLICITFUNC, In this statement, the identifier "clock_nanosleep" is implicitly declared as a function.
at line number 13 in file D0:[craig.blead.dist.Time-HiRes]try.c;1
And we aren't linking in Time::HiRes's probes on VMS since making
that work both in and out of core in a general way is no small
feat.
So we go back to requiring no compiler messages in the test
compiles.
Craig A. Berry [Sat, 2 Jan 2021 22:37:39 +0000 (16:37 -0600)]
sprintf does not display 54 digits on VMS
It displays 17, which is what Perl and apparently just about
everybody else used to do. I'm not convinced there was ever a
bug here as no standard I can find says you have to display 3
times as many digits as are necessary to provide a non-lossy
round trip from double to character and back.
Felipe Gasper [Tue, 29 Dec 2020 08:22:40 +0000 (03:22 -0500)]
Signatures: add argument counts to count-mismatch error messages.
Issue #18405
Karl Williamson [Sat, 29 Aug 2020 16:55:47 +0000 (10:55 -0600)]
Document various CopSTASHfoo functions
Karl Williamson [Sat, 26 Dec 2020 15:44:08 +0000 (08:44 -0700)]
Use perl.h versions of PERL_UNUSED_foo in XSUB.h
This commit was applied to perl.h, but not to XSUB.h:
commit
a730e3f230f364cffe49370f816f975ae7c9c403
Author: Jarkko Hietaniemi <jhi@iki.fi>
Date: Thu Sep 4 09:08:33 2014 -0400
Use sizeof() in UNUSED_ARG and UNUSED_VAR to avoid accessing the values.
The values might even be uninitialized in the case of PERL_UNUSED_VAR.
Karl Williamson [Sat, 2 Jan 2021 22:42:25 +0000 (15:42 -0700)]
regexec.c: Fix assertion failure GH #18451
This was caused by copying too many characters for the size of the
buffer. Only one character is needed.
Karl Williamson [Sat, 2 Jan 2021 19:45:09 +0000 (12:45 -0700)]
regexec.c: Clarify comments
Karl Williamson [Sat, 2 Jan 2021 17:18:26 +0000 (10:18 -0700)]
regexp.h: Clarify how a computed value is derived.