Commit | Line | Data |
---|---|---|
44691e6f AB |
1 | =encoding utf8 |
2 | ||
3 | =head1 NAME | |
4 | ||
1e189079 | 5 | perldelta - what is new for perl v5.27.2 |
89853d76 | 6 | |
b5cbfe35 | 7 | =head1 DESCRIPTION |
89853d76 | 8 | |
1e189079 | 9 | This document describes differences between the 5.27.1 release and the 5.27.2 |
b5cbfe35 | 10 | release. |
89853d76 | 11 | |
1e189079 EH |
12 | If you are upgrading from an earlier release such as 5.27.0, first read |
13 | L<perl5271delta>, which describes differences between 5.27.0 and 5.27.1. | |
fbdbf2a7 | 14 | |
1e189079 | 15 | =head1 Core Enhancements |
fbdbf2a7 | 16 | |
a8b85d6c KW |
17 | =head2 Unicode 10.0 is supported |
18 | ||
19 | A list of changes is at | |
20 | L<http://www.unicode.org/versions/Unicode10.0.0>. | |
21 | ||
1e189079 | 22 | =head1 Modules and Pragmata |
9a4e033c | 23 | |
1e189079 | 24 | =head2 Updated Modules and Pragmata |
1b510166 | 25 | |
1b510166 S |
26 | =over 4 |
27 | ||
28 | =item * | |
29 | ||
ba2fe89f | 30 | L<arybase> has been upgraded from version 0.12 to 0.13. |
9a4e033c | 31 | |
516aa7ad JK |
32 | =item * |
33 | ||
ba0219e6 Z |
34 | L<Carp> has been upgraded from version 1.42 to 1.43. |
35 | ||
36 | =item * | |
37 | ||
ba2fe89f AC |
38 | L<Encode> has been upgraded from version 2.88 to 2.92. |
39 | ||
40 | =item * | |
41 | ||
42 | L<encoding> has been upgraded from version 2.19 to 2.20. | |
d912eab8 Z |
43 | |
44 | =item * | |
45 | ||
6baee08a | 46 | L<ExtUtils::CBuilder> has been upgraded from version 0.280225 to 0.280228. |
516aa7ad | 47 | |
af94b3ac Z |
48 | =item * |
49 | ||
ba2fe89f | 50 | L<feature> has been upgraded from version 1.48 to 1.49. |
af94b3ac | 51 | |
ba2fe89f | 52 | =item * |
16beba24 | 53 | |
ba2fe89f | 54 | L<File::Glob> has been upgraded from version 1.28 to 1.29. |
a049258c | 55 | |
ba2fe89f AC |
56 | =item * |
57 | ||
58 | L<File::Spec> and L<Cwd> have been upgraded from version 3.67 to 3.68. | |
fbe3f407 | 59 | |
759020c9 | 60 | =item * |
7ca0bfc4 | 61 | |
ba2fe89f AC |
62 | L<List::Util> has been upgraded from version 1.46_02 to 1.48. |
63 | ||
64 | =item * | |
65 | ||
66 | L<Math::BigRat> has been upgraded from version 0.2611 to 0.2613. | |
67 | ||
68 | =item * | |
69 | ||
70 | L<Module::CoreList> has been upgraded from version 5.20170621 to 5.20170720. | |
71 | ||
72 | =item * | |
73 | ||
74 | L<Opcode> has been upgraded from version 1.39 to 1.40. | |
75 | ||
76 | =item * | |
77 | ||
78 | L<PerlIO::scalar> has been upgraded from version 0.27 to 0.29. | |
79 | ||
80 | =item * | |
81 | ||
82 | L<POSIX> has been upgraded from version 1.76 to 1.77. | |
83 | ||
84 | =item * | |
85 | ||
86 | L<re> has been upgraded from version 0.34 to 0.35. | |
87 | ||
88 | =item * | |
89 | ||
90 | L<Scalar::Util> has been upgraded from version 1.46_02 to 1.48. | |
91 | ||
92 | =item * | |
93 | ||
94 | L<Time::HiRes> has been upgraded from version 1.9741 to 1.9743. | |
95 | ||
96 | =item * | |
97 | ||
98 | L<Time::Piece> has been upgraded from version 1.31 to 1.3201. | |
1b510166 | 99 | |
1e189079 | 100 | =back |
9a4e033c | 101 | |
1b510166 S |
102 | =head1 Selected Bug Fixes |
103 | ||
1b510166 S |
104 | =over 4 |
105 | ||
106 | =item * | |
107 | ||
43901c14 TC |
108 | List assignment (C<aassign>) could in some rare cases allocate an |
109 | entry on the mortal stack and leave the entry uninitialized. [perl | |
110 | #131570] | |
1b510166 | 111 | |
3072e759 TC |
112 | =item * |
113 | ||
114 | Attempting to apply an attribute to an C<our> variable where a | |
115 | function of that name already exists could result in a NULL pointer | |
116 | being supplied where an SV was expected, crashing perl. [perl | |
117 | #131597] | |
118 | ||
20ae58f7 AC |
119 | =item * |
120 | ||
121 | C<split ' '> now correctly handles the argument being split when in the | |
122 | scope of the L<< C<unicode_strings>|feature/"The 'unicode_strings' feature" | |
123 | >> feature. Previously, when a string using the single-byte internal | |
124 | representation contained characters that are whitespace by Unicode rules but | |
125 | not by ASCII rules, it treated those characters as part of fields rather | |
126 | than as field separators. [perl #130907] | |
127 | ||
ab9a6a63 AC |
128 | =item * |
129 | ||
130 | Several built-in functions previously had bugs that could cause them to | |
131 | write to the internal stack without allocating room for the item being | |
132 | written. In rare situations, this could have led to a crash. These bugs have | |
133 | now been fixed, and if any similar bugs are introduced in future, they will | |
134 | be detected automatically in debugging builds. | |
135 | ||
136 | =item * | |
137 | ||
138 | Using a symbolic ref with postderef syntax as the key in a hash lookup was | |
139 | yielding an assertion failure on debugging builds. [perl #131627] | |
140 | ||
141 | =item * | |
142 | ||
143 | Array and hash variables whose names begin with a caret now admit indexing | |
144 | inside their curlies when interpolated into strings, as in C<< | |
145 | "${^CAPTURE[0]}" >> to index C<@{^CAPTURE}>. [perl #131664] | |
146 | ||
1e189079 | 147 | =back |
9a4e033c | 148 | |
1e189079 | 149 | =head1 Acknowledgements |
0cc8c746 | 150 | |
8abafd33 AC |
151 | Perl 5.27.2 represents approximately 4 weeks of development since Perl 5.27.1 |
152 | and contains approximately 26,000 lines of changes across 290 files from 18 | |
153 | authors. | |
2e0dcc12 | 154 | |
8abafd33 AC |
155 | Excluding auto-generated files, documentation and release tools, there were |
156 | approximately 9,700 lines of changes to 150 .pm, .t, .c and .h files. | |
157 | ||
158 | Perl continues to flourish into its third decade thanks to a vibrant community | |
159 | of users and developers. The following people are known to have contributed the | |
160 | improvements that became Perl 5.27.2: | |
161 | ||
162 | Aaron Crane, Alberto Simões, Chris 'BinGOs' Williams, Dagfinn Ilmari | |
163 | Mannsåker, David Mitchell, E. Choroba, Eric Herman, Father Chrysostomos, James | |
164 | E Keenan, Karl Williamson, Lukas Mai, Ricardo Signes, Sawyer X, Steve Hay, Tony | |
165 | Cook, Vitali Peil, Yves Orton, Zefram. | |
166 | ||
167 | The list above is almost certainly incomplete as it is automatically generated | |
168 | from version control history. In particular, it does not include the names of | |
169 | the (very much appreciated) contributors who reported issues to the Perl bug | |
170 | tracker. | |
171 | ||
172 | Many of the changes included in this version originated in the CPAN modules | |
173 | included in Perl's core. We're grateful to the entire CPAN community for | |
174 | helping Perl to flourish. | |
175 | ||
176 | For a more complete list of all of Perl's historical contributors, please see | |
177 | the F<AUTHORS> file in the Perl source distribution. | |
f5b73711 | 178 | |
44691e6f AB |
179 | =head1 Reporting Bugs |
180 | ||
b5cbfe35 S |
181 | If you find what you think is a bug, you might check the perl bug database |
182 | at L<https://rt.perl.org/> . There may also be information at | |
183 | L<http://www.perl.org/> , the Perl Home Page. | |
44691e6f | 184 | |
e08634c5 SH |
185 | If you believe you have an unreported bug, please run the L<perlbug> program |
186 | included with your release. Be sure to trim your bug down to a tiny but | |
187 | sufficient test case. Your bug report, along with the output of C<perl -V>, | |
b5cbfe35 | 188 | will be sent off to perlbug@perl.org to be analysed by the Perl porting team. |
44691e6f | 189 | |
87c118b9 DM |
190 | If the bug you are reporting has security implications which make it |
191 | inappropriate to send to a publicly archived mailing list, then see | |
c0ea3294 SH |
192 | L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> |
193 | for details of how to report the issue. | |
44691e6f | 194 | |
390ae6f9 S |
195 | =head1 Give Thanks |
196 | ||
197 | If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, | |
198 | you can do so by running the C<perlthanks> program: | |
199 | ||
200 | perlthanks | |
201 | ||
202 | This will send an email to the Perl 5 Porters list with your show of thanks. | |
203 | ||
44691e6f AB |
204 | =head1 SEE ALSO |
205 | ||
e08634c5 SH |
206 | The F<Changes> file for an explanation of how to view exhaustive details on |
207 | what changed. | |
44691e6f AB |
208 | |
209 | The F<INSTALL> file for how to build Perl. | |
210 | ||
211 | The F<README> file for general stuff. | |
212 | ||
213 | The F<Artistic> and F<Copying> files for copyright information. | |
214 | ||
215 | =cut |