This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Dagfinn Ilmari Mannsåker [Tue, 17 Jan 2017 17:37:56 +0000 (17:37 +0000)]
Eliminate remaining uses of PL_statbuf
Give Perl_nextargv its own statbuf and pass a pointer to it into
Perl_do_open_raw and thence S_openn_cleanup when needed.
Also reduce the scope of the existing statbuf in Perl_nextargv to make
it clear it's distinct from the one populated by do_open_raw.
Fix perldelta entry for PL_statbuf removal
Dagfinn Ilmari Mannsåker [Sun, 26 Mar 2017 13:26:22 +0000 (15:26 +0200)]
Improve error message for bogus -MO=… arguments
Commit
7a9b44b9 expanded the scope of the string eval that loads the
B::* backend module, but didn't move the $@ check and croak to outside
it. Restore it and further improve the error message.
Before:
$ perl -MO=Concise=-debug -e1
syntax error at (eval 2) line 18, near "="
BEGIN failed--compilation aborted.
After:
$ ./perl -Ilib -MO=Concise=-debug -e1
Loading compiler backend 'B::Concise=-debug' failed: syntax error at (eval 2) line 18, near "="
at -e line 0.
BEGIN failed--compilation aborted.
Dagfinn Ilmari Mannsåker [Wed, 31 May 2017 16:05:22 +0000 (17:05 +0100)]
Note removal of deprecated attributes in perldelta and perlexperiment
Dagfinn Ilmari Mannsåker [Mon, 18 Jan 2016 12:52:29 +0000 (12:52 +0000)]
Remove deprecated no-op :locked attribute
It's been a no-op since 5.10 and deprecated since 5.12.
Dagfinn Ilmari Mannsåker [Mon, 18 Jan 2016 12:42:55 +0000 (12:42 +0000)]
Remove deprecated no-op :unique attribute
It's been deprecated and a no-op since 5.10.
Move :unique test into it own file so it can be skipped separately
Merely parsing an unknown attribute fails, so the skip has to happen
at BEGIN time.
Dagfinn Ilmari Mannsåker [Sat, 12 Nov 2016 16:08:18 +0000 (17:08 +0100)]
Remove deprecated comma-less format variable lists
This has been issuing a deprecation warning since perl 5.000.
H.Merijn Brand [Thu, 11 May 2017 14:47:45 +0000 (16:47 +0200)]
Disable readdir_r and readdir64_r on glibc >= 2.24
DESCRIPTION
This function is deprecated; use readdir(3) instead.
The readdir_r() function was invented as a reentrant version of read-
dir(3). It reads the next directory entry from the directory stream
dirp, and returns it in the caller-allocated buffer pointed to by
entry. For details of the dirent structure, see readdir(3).
A pointer to the returned buffer is placed in *result; if the end of
the directory stream was encountered, then NULL is instead returned in
*result.
It is recommended that applications use readdir(3) instead of read-
dir_r(). Furthermore, since version 2.24, glibc deprecates read-
dir_r(). The reasons are as follows:
* On systems where NAME_MAX is undefined, calling readdir_r() may be
unsafe because the interface does not allow the caller to specify
the length of the buffer used for the returned directory entry.
* On some systems, readdir_r() can't read directory entries with very
long names. When the glibc implementation encounters such a name,
readdir_r() fails with the error ENAMETOOLONG after the final direc-
tory entry has been read. On some other systems, readdir_r() may
return a success status, but the returned d_name field may not be
null terminated or may be truncated.
* In the current POSIX.1 specification (POSIX.1-2008), readdir(3) is
not required to be thread-safe. However, in modern implementations
(including the glibc implementation), concurrent calls to readdir(3)
that specify different directory streams are thread-safe. There-
fore, the use of readdir_r() is generally unnecessary in multi-
threaded programs. In cases where multiple threads must read from
the same directory stream, using readdir(3) with external synchro-
nization is still preferable to the use of readdir_r(), for the rea-
sons given in the points above.
* It is expected that a future version of POSIX.1 will make read-
dir_r() obsolete, and require that readdir(3) be thread-safe when
concurrently employed on different directory streams.
Lukas Mai [Fri, 26 May 2017 18:15:12 +0000 (20:15 +0200)]
add X<s> to s/// in perlop (RT #131371)
This should make 'perldoc -f s' work.
Yves Orton [Mon, 8 May 2017 13:01:08 +0000 (15:01 +0200)]
fixup typo (squash candidate) in globbing code comments
This fixes up a typo from
444c4cd5e784ec836ff4a81a582bcb0df9f1e277,
if possible before merging to blead squash this commit with that.
Yves Orton [Tue, 25 Apr 2017 13:17:06 +0000 (15:17 +0200)]
[perl #131211] fixup File::Glob degenerate matching
The old code would go quadratic with recursion and backtracking
when doing patterns like "a*a*a*a*a*a*a*x" on a file like
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa".
This patch changes the code to not recurse, and to not backtrack,
as per this article from Russ Cox: https://research.swtch.com/glob
It also adds a micro-optimisation for M_ONE and M_SET under the new code.
Thanks to Avar and Russ Cox for helping with this patch, along with
Jilles Tjoelker and the rest of the FreeBSD community.
Sawyer X [Wed, 31 May 2017 21:40:02 +0000 (23:40 +0200)]
perldelta: New perldelta
Sawyer X [Wed, 31 May 2017 21:38:32 +0000 (23:38 +0200)]
epigraphs: linkify releasae
Sawyer X [Wed, 31 May 2017 21:34:37 +0000 (23:34 +0200)]
tick release
Sawyer X [Wed, 31 May 2017 21:31:22 +0000 (23:31 +0200)]
epigraph: Updating, pending link
Sawyer X [Wed, 31 May 2017 18:54:05 +0000 (20:54 +0200)]
add new release to perlhist
Sawyer X [Wed, 31 May 2017 18:41:36 +0000 (20:41 +0200)]
perldelta.pod: Finalize perldelta
Sawyer X [Wed, 31 May 2017 18:23:00 +0000 (20:23 +0200)]
Update Module::CoreList for 5.27.0
Sawyer X [Wed, 31 May 2017 14:22:59 +0000 (16:22 +0200)]
Add changes
Ricardo Signes [Wed, 31 May 2017 14:02:08 +0000 (10:02 -0400)]
CoreList: bump version for v5.27.0 release
Sawyer X [Wed, 31 May 2017 12:25:02 +0000 (14:25 +0200)]
Update Module::CoreList
Sawyer X [Wed, 31 May 2017 12:25:21 +0000 (14:25 +0200)]
Regenerate and update Op_private and uconfig.h
Sawyer X [Wed, 31 May 2017 01:24:15 +0000 (03:24 +0200)]
META: Update
Sawyer X [Wed, 31 May 2017 01:17:37 +0000 (03:17 +0200)]
Correct versions in INSTALL
Sawyer X [Wed, 31 May 2017 01:15:07 +0000 (03:15 +0200)]
Bump version: 5.26.0 -> 5.27.0, including fixes
Sawyer X [Wed, 31 May 2017 01:10:29 +0000 (03:10 +0200)]
Bump feature.pm for 5.27.0
Sawyer X [Wed, 31 May 2017 00:42:31 +0000 (02:42 +0200)]
perldelta: New perldelta (5.27.0)
Sawyer X [Tue, 30 May 2017 20:54:30 +0000 (22:54 +0200)]
release_schedule: Updated, ticked
Sawyer X [Tue, 30 May 2017 20:50:18 +0000 (22:50 +0200)]
epigraphs.pod: Add 5.26.0, link pending
Sawyer X [Tue, 30 May 2017 11:53:15 +0000 (13:53 +0200)]
perlhist: Move 5.26.0 to another table to fix line length
Sawyer X [Tue, 30 May 2017 11:39:43 +0000 (13:39 +0200)]
add new release to perlhist
Sawyer X [Tue, 30 May 2017 11:02:18 +0000 (13:02 +0200)]
perldelta: Sort order of modules
Sawyer X [Tue, 30 May 2017 11:01:47 +0000 (13:01 +0200)]
perldelta: Update acknowledgements
Sawyer X [Tue, 30 May 2017 10:50:46 +0000 (12:50 +0200)]
Update Module::CoreList for 5.26.0
Sawyer X [Tue, 30 May 2017 09:58:06 +0000 (11:58 +0200)]
Revert "Fallbacks for Perl_fp_class_denorm()."
This reverts commit
e77299d3416e7e737523afdc0642734205e46d59.
This was reverted due to a major freeze. It was merged into the
blead-next branch and will appear in 5.26.1.
Jarkko Hietaniemi [Mon, 29 May 2017 06:28:30 +0000 (09:28 +0300)]
Fallbacks for Perl_fp_class_denorm().
These may be needed if the compiler doesn't expose the C99 math
without some special switches.
Sawyer X [Sun, 28 May 2017 20:36:55 +0000 (22:36 +0200)]
perldelta: Mention perlthanks
Sawyer X [Mon, 29 May 2017 20:23:45 +0000 (22:23 +0200)]
perldelta: More fixes
Sawyer X [Mon, 29 May 2017 12:14:21 +0000 (14:14 +0200)]
perldelta: A few more grammatical improvements
Sawyer X [Sun, 28 May 2017 20:43:34 +0000 (22:43 +0200)]
perldelta: Remove unnecessary space
Sawyer X [Sun, 28 May 2017 20:12:53 +0000 (22:12 +0200)]
perldelta: Merge similar OS sections:
* Merge OS X and macOS to Darwin. (Maybe under "macOS"?)
* Merge Win32 into Windows.
Jarkko Hietaniemi [Sun, 28 May 2017 16:56:29 +0000 (19:56 +0300)]
perldelta: Mention the problem with g++ 6 and subnormal floats.
David Mitchell [Thu, 25 May 2017 08:13:36 +0000 (09:13 +0100)]
remove perl525*delta.pod
David Mitchell [Thu, 25 May 2017 08:10:54 +0000 (09:10 +0100)]
perldelta: remove mention of comp.lang.perl.misc
David Mitchell [Wed, 24 May 2017 12:30:44 +0000 (13:30 +0100)]
perldelta: move an entry from 'Errata'
'Errata From Previous Releases' contained a fix from 5.25.1 only reported
in perl5253delta. This still counts as fixed in the current release from
5.26.0's viewpoint.
David Mitchell [Wed, 24 May 2017 12:20:32 +0000 (13:20 +0100)]
perldelta: remove 'Known Problems' section.
All the entries in it appear to be copied from perl5250delta.pod and are
likely no longer relevant.
David Mitchell [Wed, 24 May 2017 12:15:38 +0000 (13:15 +0100)]
perldelta: davem's 2nd half proofreading
From "Utility Changes" to "Selected Bug Fixes" inclusive
A lot of the bug fix descriptions were very opaque - often just the subject
line from a commit message.
Sawyer X [Wed, 24 May 2017 10:33:47 +0000 (12:33 +0200)]
epigraphs.pod: Adding announcement email link
Sawyer X [Wed, 24 May 2017 01:23:26 +0000 (03:23 +0200)]
regenerate META
Sawyer X [Wed, 24 May 2017 00:49:13 +0000 (02:49 +0200)]
Update epigraph, link forthcoming
Sawyer X [Tue, 23 May 2017 23:25:35 +0000 (01:25 +0200)]
disarm RCnnn bump
Sawyer X [Tue, 23 May 2017 19:52:20 +0000 (21:52 +0200)]
Update perlhist
Sawyer X [Tue, 23 May 2017 19:32:47 +0000 (21:32 +0200)]
perldelta: fix some POD
Sawyer X [Mon, 22 May 2017 21:19:48 +0000 (23:19 +0200)]
Update META files
Sawyer X [Mon, 22 May 2017 21:19:36 +0000 (23:19 +0200)]
bump version to RCnnn
Sawyer X [Mon, 22 May 2017 21:16:25 +0000 (23:16 +0200)]
add new release to perlhist
Todd Rinaldo [Tue, 23 May 2017 14:48:00 +0000 (09:48 -0500)]
Remove the leading dot in the file name from the do example so it does not confuse readers
David Mitchell [Tue, 23 May 2017 16:43:18 +0000 (17:43 +0100)]
perldelta: add extra changed diag entry
Thanks to Ilmari for the correct pod escape voodoo.
David Mitchell [Tue, 23 May 2017 15:41:20 +0000 (16:41 +0100)]
perldelta: Diagnostics fixups
I did a diff of the 5.24.0 and current perldiag.pod's
and used it to fix up the new/changed diagnostics sections.
In particular: for changed diagnostics, I added a short description of
*what* had changed. I also moved some entries between sections, deduped,
added missing entries etc.
David Mitchell [Tue, 23 May 2017 10:35:34 +0000 (11:35 +0100)]
more perldelta fixups.
This is my reading from the start of the file through to the start of
=head1 Documentation
* the new 'do' warning isn't mandatory (but merely enabled by default)
* make it clear that the -Di cmd-line switch is new
* remove some optimisations that are trivial or not really optimisations.
* For modules, remove descriptions of bug fixes which are obscure/trivial
* I don't know how the "Compatibility with 5.8 has been restored" text
for threads came about - it was added in the 5.25.1 perldelta, but no
commits around that time seem to support this. So I removed it.
* a few typos etc
* I also added an Internals entry for OP_SPLIT/OP_PUSHRE.
Karl Williamson [Tue, 23 May 2017 07:05:13 +0000 (01:05 -0600)]
perldelta: Add missing messages to list
I went through perldiag, and copied over links to these messages that
had failed to get placed into perldelta.
Karl Williamson [Tue, 23 May 2017 07:03:02 +0000 (01:03 -0600)]
perldelta: Convert warning to standard form
It turns out that this message isn't a generic one, but quite specific,
so convert to that and move to sorted position in list.
Karl Williamson [Tue, 23 May 2017 05:57:09 +0000 (23:57 -0600)]
perldelta: Sort new warnings section
alphabetically, after having standardized the entry format
Karl Williamson [Tue, 23 May 2017 05:56:24 +0000 (23:56 -0600)]
perldelta: Add 2 blank lines
for readability.
Karl Williamson [Tue, 23 May 2017 05:47:52 +0000 (23:47 -0600)]
perldelta: Sort new errors section
alphabetically, after having made the entries uniform.
Tony Cook [Tue, 23 May 2017 05:47:44 +0000 (15:47 +1000)]
perldelta: move the description of 128095 where it belongs
Tony Cook [Tue, 23 May 2017 05:46:27 +0000 (15:46 +1000)]
perldelta: the :utf8 handle warning is now on by default
Tony Cook [Tue, 23 May 2017 05:43:04 +0000 (15:43 +1000)]
perldelta: re-word the entry for 130335
Karl Williamson [Tue, 23 May 2017 05:23:44 +0000 (23:23 -0600)]
perldelta: Make links to ticket numbers
Spotted by Tony Cook.
I did not verify that all these links work; if there was already a typo
in the ticket number, the link will fail.
Karl Williamson [Tue, 23 May 2017 05:09:17 +0000 (23:09 -0600)]
perldelta: Use '#' for ticket number
Tony Cook spotted that we sometimes say [perl 000] and sometimes
[perl #000]. Make them consistent.
Karl Williamson [Tue, 23 May 2017 05:04:13 +0000 (23:04 -0600)]
perldelta: Provide a reference to new feature
This pod discusses the new experimental feature listed in the
diagnostics section. Refer to that.
Karl Williamson [Tue, 23 May 2017 04:58:55 +0000 (22:58 -0600)]
perldelta: Provide links for changed diagnostics
Karl Williamson [Tue, 23 May 2017 04:47:13 +0000 (22:47 -0600)]
perldelta.pod: Move diagnostic in file
This description applies to multiple diagnostics. Move it to the area
where others like it are.
Karl Williamson [Tue, 23 May 2017 04:33:15 +0000 (22:33 -0600)]
perldelta: Move some bug fixes to proper section
Somehow these ended up under changed diagnostics, though one could argue
they kinda sorta might belong under diagnostics.
Karl Williamson [Tue, 23 May 2017 04:27:26 +0000 (22:27 -0600)]
perldelta: Fix up "Experimental %s on scalar" msg
This is changed to the format of the other entries that describe a
single message, and moved to the list of those, sorted alphabetically.
Karl Williamson [Tue, 23 May 2017 03:45:57 +0000 (21:45 -0600)]
perldelta: Collapse :utf8 handle entries
There were two entries dealing with this.
Karl Williamson [Tue, 23 May 2017 03:29:17 +0000 (21:29 -0600)]
perldelta: Add some C<>
These were overlooked in earlier commits
Karl Williamson [Tue, 23 May 2017 03:26:21 +0000 (21:26 -0600)]
perldelta: Rmv duplicate entry
Karl Williamson [Mon, 22 May 2017 23:48:45 +0000 (17:48 -0600)]
perldelta: It was perlmod that changed
Not perlmodinstall
Karl Williamson [Mon, 22 May 2017 22:33:53 +0000 (16:33 -0600)]
perldelta: Fix link.
Spotted by Dan Book
Karl Williamson [Mon, 22 May 2017 22:23:19 +0000 (16:23 -0600)]
perldelta: Add link for more expanation
The link explains unescaped "{" more.
Karl Williamson [Mon, 22 May 2017 22:10:33 +0000 (16:10 -0600)]
perldelta: Clarify -Di switch entry
I didn't understand this, and looked at the actual commits to figure it
out.
Karl Williamson [Mon, 22 May 2017 21:48:53 +0000 (15:48 -0600)]
perldelta: Add missing links
All API functions mentioned as new are now linked to, as well as various
other things that should be linked to.
Karl Williamson [Mon, 22 May 2017 21:33:37 +0000 (15:33 -0600)]
perldelta: Rmv entry that applied only to 5.25 dev release
Karl Williamson [Mon, 22 May 2017 21:30:02 +0000 (15:30 -0600)]
perldelta: Clarify entry for [perl #129106]
Karl Williamson [Mon, 22 May 2017 21:20:36 +0000 (15:20 -0600)]
perldelta: Clarify a utf8 decode entry
This clarifies that the changes listed here apply to several of the
decode function variants, not just one.
Karl Williamson [Mon, 22 May 2017 21:18:26 +0000 (15:18 -0600)]
perldelta: Clarify about when isFOO_utf8 now die
Karl Williamson [Mon, 22 May 2017 21:12:55 +0000 (15:12 -0600)]
perldelta: perlop changes
This adds a new item, and clarifies the existing one
Karl Williamson [Mon, 22 May 2017 21:11:41 +0000 (15:11 -0600)]
perldelta: Clarified perlhack entry
Karl Williamson [Mon, 22 May 2017 21:10:03 +0000 (15:10 -0600)]
perldelta: Reordered split() so most important is 1st
Karl Williamson [Mon, 22 May 2017 21:07:56 +0000 (15:07 -0600)]
perldelta: Clarify seek() entry
Karl Williamson [Mon, 22 May 2017 21:06:17 +0000 (15:06 -0600)]
perldelta: Move dtrace ticket number
I believe this makes it clearer that it applies to all the fixes in the
list
Karl Williamson [Mon, 22 May 2017 21:02:30 +0000 (15:02 -0600)]
perldelta: Remove duplicate entry
This is an exact copy of another entry for [perl #129090]
Karl Williamson [Mon, 22 May 2017 20:58:03 +0000 (14:58 -0600)]
pod/perldelta: Reword #129903 description
I looked at the ticket to understand better how to clarify this.
Karl Williamson [Mon, 22 May 2017 20:56:54 +0000 (14:56 -0600)]
pod/perldelta: Reword #130010 description
I looked at the commits and ticket to clarify this
Karl Williamson [Mon, 22 May 2017 20:51:56 +0000 (14:51 -0600)]
perldelta: Add missing =item
Karl Williamson [Mon, 22 May 2017 20:45:48 +0000 (14:45 -0600)]
perldelta: Nit fixes
This has what I believe are non-controversial changes, missing or extra
words, typos and punctuation, plus a couple of clarifications and
cautions.
Karl Williamson [Mon, 22 May 2017 20:16:22 +0000 (14:16 -0600)]
perldelta: Standardize on ticket #'s being at ends
Bug fixes are hereby standardized so the ticket number appears at the
end of the entry, instead of some being at the beginning.
Karl Williamson [Mon, 22 May 2017 19:11:32 +0000 (13:11 -0600)]
podcheck: Module::Signatures is known correct.
Karl Williamson [Mon, 22 May 2017 19:39:49 +0000 (13:39 -0600)]
perldelta: Add pod formatting codes
This adds mostly C<>, but some F<>, B<>, I<> as well. Fixed an S<> to
C<>
Karl Williamson [Mon, 22 May 2017 20:07:53 +0000 (14:07 -0600)]
perldelta: Fix overlooked C<.>
This is turned into C<".">. It should have been done as part of
df48f9a40b9a0dd18a1e55dffe80ba98b5e5a99c