This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
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
Karl Williamson [Mon, 22 May 2017 19:23:40 +0000 (13:23 -0600)]
perldelta: Fix link displays
This fixes the displays of some links. Most of this fix is
that one shouldn't say
C<L<foo/bar>>
This is because it translates to 'bar in foo' entirely in the
fixed-width font. And 'in foo' shouldn't be in fixed width. (I will
bring this up to see if Pod::Simple should change, or it should be
flagged by Pod::Checker.)
Instead one should currently write
L<C<bar>|foo/bar>
Karl Williamson [Mon, 22 May 2017 17:49:28 +0000 (11:49 -0600)]
perldelta: Standardize references to Perl
There is a mixture of saying Perl "5.foo" and "v5.foo". This
standardizes to the two most common variants. When the word "Perl"
precedes the version number, the "v" is omitted. Perl is capitalized.
When the number stands alone, the "v" is added.
However, the NAME section must say 'perl v5.26.0' as that form is
expected from Porting/pod_lib.pl
Sawyer X [Mon, 22 May 2017 19:21:39 +0000 (21:21 +0200)]
Fix various POD issues
James E Keenan [Mon, 22 May 2017 19:19:03 +0000 (15:19 -0400)]
Correct POD formating error detected by t/porting/podcheck.t.
The text in the link lacked the open- and close-double quotes found in the
section head being linked to.
Karl Williamson [Mon, 22 May 2017 17:32:14 +0000 (11:32 -0600)]
perldelta: Note new test scripts
I went through the commits since 5.24.1, and found these added scripts
that were missing from perldelta. This entailed rewriting the existing
entry on APItest, as a bunch of test files were split.
Karl Williamson [Mon, 22 May 2017 16:46:54 +0000 (10:46 -0600)]
perldelta: Fix some single char C< >
Some characters that should have been in C< > weren't.
Single character C< > should instead be C<" "> (where the space is any
character). This is how they are displayed anyway in non-gui devices,
and in gui, the single character really doesn't stand out as distinct,
whereas longer strings tend to. Though, I did add quotes around the
range operator "..", as that wasnt very distinct without them.
I removed the C<> from C<1>, as the 1 is a generic value.