xref: /openbsd/gnu/usr.bin/perl/pod/perl5182delta.pod (revision 6fb12b70)
1*6fb12b70Safresh1=encoding utf8
2*6fb12b70Safresh1
3*6fb12b70Safresh1=head1 NAME
4*6fb12b70Safresh1
5*6fb12b70Safresh1perl5182delta - what is new for perl v5.18.2
6*6fb12b70Safresh1
7*6fb12b70Safresh1=head1 DESCRIPTION
8*6fb12b70Safresh1
9*6fb12b70Safresh1This document describes differences between the 5.18.1 release and the 5.18.2
10*6fb12b70Safresh1release.
11*6fb12b70Safresh1
12*6fb12b70Safresh1If you are upgrading from an earlier release such as 5.18.0, first read
13*6fb12b70Safresh1L<perl5181delta>, which describes differences between 5.18.0 and 5.18.1.
14*6fb12b70Safresh1
15*6fb12b70Safresh1=head1 Modules and Pragmata
16*6fb12b70Safresh1
17*6fb12b70Safresh1=head2 Updated Modules and Pragmata
18*6fb12b70Safresh1
19*6fb12b70Safresh1=over 4
20*6fb12b70Safresh1
21*6fb12b70Safresh1=item *
22*6fb12b70Safresh1
23*6fb12b70Safresh1L<B> has been upgraded from version 1.42_01 to 1.42_02.
24*6fb12b70Safresh1
25*6fb12b70Safresh1The fix for [perl #118525] introduced a regression in the behaviour of
26*6fb12b70Safresh1C<B::CV::GV>, changing the return value from a C<B::SPECIAL> object on
27*6fb12b70Safresh1a C<NULL> C<CvGV> to C<undef>.  C<B::CV::GV> again returns a
28*6fb12b70Safresh1C<B::SPECIAL> object in this case.  [perl #119413]
29*6fb12b70Safresh1
30*6fb12b70Safresh1=item *
31*6fb12b70Safresh1
32*6fb12b70Safresh1L<B::Concise> has been upgraded from version 0.95 to 0.95_01.
33*6fb12b70Safresh1
34*6fb12b70Safresh1This fixes a bug in dumping unexpected SPECIALs.
35*6fb12b70Safresh1
36*6fb12b70Safresh1=item *
37*6fb12b70Safresh1
38*6fb12b70Safresh1L<English> has been upgraded from version 1.06 to 1.06_01.  This fixes an
39*6fb12b70Safresh1error about the performance of C<$`>, C<$&>, and C<$'>.
40*6fb12b70Safresh1
41*6fb12b70Safresh1=item *
42*6fb12b70Safresh1
43*6fb12b70Safresh1L<File::Glob> has been upgraded from version 1.20 to 1.20_01.
44*6fb12b70Safresh1
45*6fb12b70Safresh1=back
46*6fb12b70Safresh1
47*6fb12b70Safresh1=head1 Documentation
48*6fb12b70Safresh1
49*6fb12b70Safresh1=head2 Changes to Existing Documentation
50*6fb12b70Safresh1
51*6fb12b70Safresh1=over 4
52*6fb12b70Safresh1
53*6fb12b70Safresh1=item *
54*6fb12b70Safresh1
55*6fb12b70Safresh1L<perlrepository> has been restored with a pointer to more useful pages.
56*6fb12b70Safresh1
57*6fb12b70Safresh1=item *
58*6fb12b70Safresh1
59*6fb12b70Safresh1L<perlhack> has been updated with the latest changes from blead.
60*6fb12b70Safresh1
61*6fb12b70Safresh1=back
62*6fb12b70Safresh1
63*6fb12b70Safresh1=head1 Selected Bug Fixes
64*6fb12b70Safresh1
65*6fb12b70Safresh1=over 4
66*6fb12b70Safresh1
67*6fb12b70Safresh1=item *
68*6fb12b70Safresh1
69*6fb12b70Safresh1Perl 5.18.1 introduced a regression along with a bugfix for lexical subs.
70*6fb12b70Safresh1Some B::SPECIAL results from B::CV::GV became undefs instead.  This broke
71*6fb12b70Safresh1Devel::Cover among other libraries.  This has been fixed.  [perl #119351]
72*6fb12b70Safresh1
73*6fb12b70Safresh1=item *
74*6fb12b70Safresh1
75*6fb12b70Safresh1Perl 5.18.0 introduced a regression whereby C<[:^ascii:]>, if used in the same
76*6fb12b70Safresh1character class as other qualifiers, would fail to match characters in the
77*6fb12b70Safresh1Latin-1 block.  This has been fixed.  [perl #120799]
78*6fb12b70Safresh1
79*6fb12b70Safresh1=item *
80*6fb12b70Safresh1
81*6fb12b70Safresh1Perl 5.18.0 introduced a regression when using ->SUPER::method with AUTOLOAD
82*6fb12b70Safresh1by looking up AUTOLOAD from the current package, rather than the current
83*6fb12b70Safresh1package’s superclass.  This has been fixed. [perl #120694]
84*6fb12b70Safresh1
85*6fb12b70Safresh1=item *
86*6fb12b70Safresh1
87*6fb12b70Safresh1Perl 5.18.0 introduced a regression whereby C<-bareword> was no longer
88*6fb12b70Safresh1permitted under the C<strict> and C<integer> pragmata when used together.  This
89*6fb12b70Safresh1has been fixed.  [perl #120288]
90*6fb12b70Safresh1
91*6fb12b70Safresh1=item *
92*6fb12b70Safresh1
93*6fb12b70Safresh1Previously PerlIOBase_dup didn't check if pushing the new layer succeeded
94*6fb12b70Safresh1before (optionally) setting the utf8 flag. This could cause
95*6fb12b70Safresh1segfaults-by-nullpointer.  This has been fixed.
96*6fb12b70Safresh1
97*6fb12b70Safresh1=item *
98*6fb12b70Safresh1
99*6fb12b70Safresh1A buffer overflow with very long identifiers has been fixed.
100*6fb12b70Safresh1
101*6fb12b70Safresh1=item *
102*6fb12b70Safresh1
103*6fb12b70Safresh1A regression from 5.16 in the handling of padranges led to assertion failures
104*6fb12b70Safresh1if a keyword plugin declined to handle the second ‘my’, but only after creating
105*6fb12b70Safresh1a padop.
106*6fb12b70Safresh1
107*6fb12b70Safresh1This affected, at least, Devel::CallParser under threaded builds.
108*6fb12b70Safresh1
109*6fb12b70Safresh1This has been fixed.
110*6fb12b70Safresh1
111*6fb12b70Safresh1=item *
112*6fb12b70Safresh1
113*6fb12b70Safresh1The construct C<< $r=qr/.../; /$r/p >> is now handled properly, an issue which
114*6fb12b70Safresh1had been worsened by changes 5.18.0. [perl #118213]
115*6fb12b70Safresh1
116*6fb12b70Safresh1=back
117*6fb12b70Safresh1
118*6fb12b70Safresh1=head1 Acknowledgements
119*6fb12b70Safresh1
120*6fb12b70Safresh1Perl 5.18.2 represents approximately 3 months of development since Perl
121*6fb12b70Safresh15.18.1 and contains approximately 980 lines of changes across 39 files from 4
122*6fb12b70Safresh1authors.
123*6fb12b70Safresh1
124*6fb12b70Safresh1Perl continues to flourish into its third decade thanks to a vibrant
125*6fb12b70Safresh1community of users and developers. The following people are known to have
126*6fb12b70Safresh1contributed the improvements that became Perl 5.18.2:
127*6fb12b70Safresh1
128*6fb12b70Safresh1Craig A. Berry, David Mitchell, Ricardo Signes, Tony Cook.
129*6fb12b70Safresh1
130*6fb12b70Safresh1The list above is almost certainly incomplete as it is automatically
131*6fb12b70Safresh1generated from version control history. In particular, it does not include
132*6fb12b70Safresh1the names of the (very much appreciated) contributors who reported issues to
133*6fb12b70Safresh1the Perl bug tracker.
134*6fb12b70Safresh1
135*6fb12b70Safresh1Many of the changes included in this version originated in the CPAN modules
136*6fb12b70Safresh1included in Perl's core. We're grateful to the entire CPAN community for
137*6fb12b70Safresh1helping Perl to flourish.
138*6fb12b70Safresh1
139*6fb12b70Safresh1For a more complete list of all of Perl's historical contributors, please see
140*6fb12b70Safresh1the F<AUTHORS> file in the Perl source distribution.
141*6fb12b70Safresh1
142*6fb12b70Safresh1=head1 Reporting Bugs
143*6fb12b70Safresh1
144*6fb12b70Safresh1If you find what you think is a bug, you might check the articles recently
145*6fb12b70Safresh1posted to the comp.lang.perl.misc newsgroup and the perl bug database at
146*6fb12b70Safresh1http://rt.perl.org/perlbug/ .  There may also be information at
147*6fb12b70Safresh1http://www.perl.org/ , the Perl Home Page.
148*6fb12b70Safresh1
149*6fb12b70Safresh1If you believe you have an unreported bug, please run the L<perlbug> program
150*6fb12b70Safresh1included with your release.  Be sure to trim your bug down to a tiny but
151*6fb12b70Safresh1sufficient test case.  Your bug report, along with the output of C<perl -V>,
152*6fb12b70Safresh1will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
153*6fb12b70Safresh1
154*6fb12b70Safresh1If the bug you are reporting has security implications, which make it
155*6fb12b70Safresh1inappropriate to send to a publicly archived mailing list, then please send it
156*6fb12b70Safresh1to perl5-security-report@perl.org.  This points to a closed subscription
157*6fb12b70Safresh1unarchived mailing list, which includes all the core committers, who will be
158*6fb12b70Safresh1able to help assess the impact of issues, figure out a resolution, and help
159*6fb12b70Safresh1co-ordinate the release of patches to mitigate or fix the problem across all
160*6fb12b70Safresh1platforms on which Perl is supported.  Please only use this address for
161*6fb12b70Safresh1security issues in the Perl core, not for modules independently distributed on
162*6fb12b70Safresh1CPAN.
163*6fb12b70Safresh1
164*6fb12b70Safresh1=head1 SEE ALSO
165*6fb12b70Safresh1
166*6fb12b70Safresh1The F<Changes> file for an explanation of how to view exhaustive details on
167*6fb12b70Safresh1what changed.
168*6fb12b70Safresh1
169*6fb12b70Safresh1The F<INSTALL> file for how to build Perl.
170*6fb12b70Safresh1
171*6fb12b70Safresh1The F<README> file for general stuff.
172*6fb12b70Safresh1
173*6fb12b70Safresh1The F<Artistic> and F<Copying> files for copyright information.
174*6fb12b70Safresh1
175*6fb12b70Safresh1=cut
176