Commit | Line | Data |
---|---|---|
44691e6f AB |
1 | =encoding utf8 |
2 | ||
3 | =head1 NAME | |
4 | ||
e0f0cf8a | 5 | perldelta - what is new for perl v5.29.7 |
e4c43fa1 | 6 | |
4026b091 S |
7 | =head1 DESCRIPTION |
8 | ||
e0f0cf8a | 9 | This document describes differences between the 5.29.6 release and the 5.29.7 |
4026b091 S |
10 | release. |
11 | ||
e0f0cf8a A |
12 | If you are upgrading from an earlier release such as 5.29.5, first read |
13 | L<perl5296delta>, which describes differences between 5.29.5 and 5.29.6. | |
14 | ||
e0f0cf8a | 15 | =head1 Deprecations |
0ce66d44 | 16 | |
5203d63d KW |
17 | =head2 In XS code, use of various macros dealing with UTF-8. |
18 | ||
19 | This deprecation was scheduled to become fatal in 5.30, but has been | |
20 | delayed to 5.32 due to problems that showed up with some CPAN modules. | |
21 | For details of what's affected, see L<perldeprecation| | |
1c4b2ed9 | 22 | perldeprecation/In XS code, use of various macros dealing with UTF-8.>. |
21d34e95 | 23 | |
e0f0cf8a A |
24 | =head1 Performance Enhancements |
25 | ||
4380f76d | 26 | =over 4 |
4234ac96 | 27 | |
15f62f05 | 28 | =item * |
4234ac96 | 29 | |
1c4b2ed9 A |
30 | A handful of small optimizations related to character folding |
31 | and character classes in regular expressions. | |
72b2b1d9 | 32 | |
e0f0cf8a | 33 | =back |
72b2b1d9 | 34 | |
e0f0cf8a | 35 | =head1 Modules and Pragmata |
1ab3a811 | 36 | |
3e52c030 | 37 | =head2 Updated Modules and Pragmata |
1ab3a811 | 38 | |
3e52c030 | 39 | =over 4 |
1ab3a811 | 40 | |
3e52c030 | 41 | =item * |
e0f0cf8a | 42 | |
3e52c030 | 43 | L<Compress::Raw::Bzip2> has been upgraded from version 2.081 to 2.084. |
e0f0cf8a | 44 | |
3e52c030 | 45 | =item * |
e0f0cf8a | 46 | |
3e52c030 | 47 | L<Compress::Raw::Zlib> has been upgraded from version 2.081 to 2.084. |
2029a7cc A |
48 | |
49 | =item * | |
50 | ||
1c4b2ed9 | 51 | L<CPAN> has been upgraded from version 2.21 to 2.22. |
1ab3a811 | 52 | |
1c4b2ed9 | 53 | =item * |
1ab3a811 | 54 | |
1c4b2ed9 | 55 | L<DB_File> has been upgraded from version 1.842 to 1.843. |
fdfb42a0 | 56 | |
1c4b2ed9 | 57 | =item * |
fdfb42a0 | 58 | |
1c4b2ed9 A |
59 | L<File::Find> has been upgraded from version 1.35 to 1.36. |
60 | ||
61 | Variables C<< $Is_Win32 >> and C<< $Is_VMS >> are being initialized. | |
11d2c931 JK |
62 | |
63 | =item * | |
64 | ||
3e52c030 A |
65 | L<File::Spec> has been upgraded from version 3.76 to 3.77. |
66 | ||
67 | =item * | |
68 | ||
69 | L<File::Temp> has been upgraded from version 0.2308 to 0.2309. | |
70 | ||
71 | =item * | |
72 | ||
73 | IO-Compress has been upgraded from version 2.081 to 2.084. | |
74 | ||
75 | Adds support for C<< IO::Uncompress::Zstd >> and | |
76 | C<< IO::Uncompress::UnLzip >>. | |
77 | ||
78 | The C<< BinModeIn >> and C<< BinModeOut >> options are now no-ops. | |
79 | ALL files will be read/written in binmode. | |
80 | ||
81 | =item * | |
82 | ||
1c4b2ed9 | 83 | L<lib> has been upgraded from version 0.64 to 0.65. |
e116fd3c | 84 | |
3e52c030 A |
85 | =item * |
86 | ||
87 | L<Math::BigInt> has been upgraded from version 1.999813 to 1.999816. | |
88 | ||
89 | C<< bnok() >> now supports the full Kronenburg extension. | |
90 | L<[cpan #95628]|https://rt.cpan.org/Ticket/Display.html?id=95628>. | |
91 | ||
92 | =item * | |
93 | ||
94 | L<Math::BigInt::FastCalc> has been upgraded from version 0.5007 to 0.5008. | |
95 | ||
96 | =item * | |
97 | ||
98 | L<Module::CoreList> has been upgraded from version 5.20181218 to 5.20190120. | |
99 | ||
100 | =item * | |
101 | ||
102 | L<Test::Simple> has been upgraded from version 1.302141 to 1.302160. | |
103 | ||
104 | =item * | |
105 | ||
106 | L<Unicode::Collate> has been upgraded from version 1.25 to 1.27. | |
107 | ||
4234ac96 AC |
108 | =back |
109 | ||
15f62f05 | 110 | =head1 Documentation |
4234ac96 | 111 | |
15f62f05 | 112 | =head2 Changes to Existing Documentation |
4234ac96 | 113 | |
15f62f05 KE |
114 | We have attempted to update the documentation to reflect the changes |
115 | listed in this document. If you find any we have missed, send email | |
116 | to L<perlbug@perl.org|mailto:perlbug@perl.org>. | |
4234ac96 | 117 | |
15f62f05 KE |
118 | Additionally, the following selected changes have been made: |
119 | ||
1c4b2ed9 | 120 | =head3 L<perlvar> |
0ce66d44 A |
121 | |
122 | =over 4 | |
123 | ||
0deccbc4 A |
124 | =item * |
125 | ||
bcbc8289 | 126 | More specific documentation of paragraph mode. L<[perl #133722]|https://rt.perl.org/Ticket/Display.html?id=133722>. |
0deccbc4 A |
127 | |
128 | =back | |
0ce66d44 | 129 | |
e0f0cf8a A |
130 | =head1 Diagnostics |
131 | ||
132 | The following additions or changes have been made to diagnostic output, | |
133 | including warnings and fatal error messages. For the complete list of | |
134 | diagnostic messages, see L<perldiag>. | |
135 | ||
4380f76d KE |
136 | =head2 Changes to Existing Diagnostics |
137 | ||
4380f76d KE |
138 | =over 4 |
139 | ||
140 | =item * | |
141 | ||
fee5d599 TC |
142 | L<Prototype not terminated|perldiag/"Prototype not terminated"> |
143 | ||
1c4b2ed9 | 144 | The file and line number is now reported for this error. |
bcbc8289 | 145 | L<[perl #133524]|https://rt.perl.org/Ticket/Display.html?id=133524> |
0ce66d44 | 146 | |
4234ac96 AC |
147 | =back |
148 | ||
149 | =head1 Testing | |
150 | ||
4380f76d KE |
151 | Tests were added and changed to reflect the other additions and |
152 | changes in this release. Furthermore, these significant changes were | |
153 | made: | |
154 | ||
4380f76d KE |
155 | =over 4 |
156 | ||
157 | =item * | |
158 | ||
1c4b2ed9 | 159 | Fix intermittent tests which failed due to race conditions which |
bcbc8289 | 160 | surface during parallel testing. L<[perl #133740]|https://rt.perl.org/Ticket/Display.html?id=133740>. |
4380f76d | 161 | |
1c4b2ed9 | 162 | =item * |
ea89b333 | 163 | |
1c4b2ed9 | 164 | Thoroughly test paragraph mode, using a new test file, |
bcbc8289 | 165 | F<t/io/paragraph_mode.t>. L<[perl #133722]|https://rt.perl.org/Ticket/Display.html?id=133722>. |
20ccb10a | 166 | |
e0f0cf8a | 167 | =back |
20ccb10a | 168 | |
1c4b2ed9 | 169 | =head1 Selected Bug Fixes |
20ccb10a | 170 | |
e0f0cf8a | 171 | =over 4 |
0ce66d44 A |
172 | |
173 | =item * | |
174 | ||
1c4b2ed9 | 175 | Fixed a failure to match properly. |
b20a43d7 | 176 | |
1c4b2ed9 | 177 | An EXACTFish regnode has a finite length it can hold for the string |
0d9be615 | 178 | being matched. If that length is exceeded, a second node is used for |
1c4b2ed9 A |
179 | the next segment of the string, for as many regnodes as are needed. |
180 | Care has to be taken where to break the string, in order to deal | |
181 | multi-character folds in Unicode correctly. If we want to break a | |
182 | string at a place which could potentially be in the middle of a | |
183 | multi-character fold, we back off one (or more) characters, leaving | |
184 | a shorter EXACTFish regnode. This backing off mechanism contained | |
bcbc8289 | 185 | an off-by-one error. L<[perl #133756]|https://rt.perl.org/Ticket/Display.html?id=133756>. |
0ce66d44 A |
186 | |
187 | =item * | |
188 | ||
429944ca | 189 | A bare C<eof> call with no previous file handle now returns true. |
bcbc8289 | 190 | L<[perl #133721]|https://rt.perl.org/Ticket/Display.html?id=133721> |
0ce66d44 | 191 | |
ff2d4c11 TC |
192 | =item * |
193 | ||
194 | Failing to compile a format now aborts compilation. Like other errors | |
195 | in sub-parses this could leave the parser in a strange state, possibly | |
bcbc8289 | 196 | crashing perl if compilation continued. L<[perl #132158]|https://rt.perl.org/Ticket/Display.html?id=132158> |
ff2d4c11 | 197 | |
e0f0cf8a | 198 | =back |
0ce66d44 | 199 | |
e0f0cf8a | 200 | =head1 Acknowledgements |
990f9aa0 | 201 | |
1c0558a0 A |
202 | Perl 5.29.7 represents approximately 5 weeks of development since Perl |
203 | 5.29.6 and contains approximately 97,000 lines of changes across 350 files | |
204 | from 8 authors. | |
990f9aa0 | 205 | |
1c0558a0 A |
206 | Excluding auto-generated files, documentation and release tools, there were |
207 | approximately 27,000 lines of changes to 190 .pm, .t, .c and .h files. | |
208 | ||
209 | Perl continues to flourish into its fourth decade thanks to a vibrant | |
210 | community of users and developers. The following people are known to have | |
211 | contributed the improvements that became Perl 5.29.7: | |
212 | ||
213 | Abigail, Chris 'BinGOs' Williams, Eugen Konkov, Hauke D, James E Keenan, | |
214 | Karl Williamson, Tomasz Konojacki, Tony Cook. | |
215 | ||
216 | The list above is almost certainly incomplete as it is automatically | |
217 | generated from version control history. In particular, it does not include | |
218 | the names of the (very much appreciated) contributors who reported issues to | |
219 | the Perl bug tracker. | |
220 | ||
221 | Many of the changes included in this version originated in the CPAN modules | |
222 | included in Perl's core. We're grateful to the entire CPAN community for | |
223 | helping Perl to flourish. | |
224 | ||
225 | For a more complete list of all of Perl's historical contributors, please | |
226 | see the F<AUTHORS> file in the Perl source distribution. | |
f5b73711 | 227 | |
44691e6f AB |
228 | =head1 Reporting Bugs |
229 | ||
373fec1e | 230 | If you find what you think is a bug, you might check the perl bug database |
15f62f05 KE |
231 | at L<https://rt.perl.org/>. There may also be information at |
232 | L<http://www.perl.org/>, the Perl Home Page. | |
44691e6f | 233 | |
e08634c5 SH |
234 | If you believe you have an unreported bug, please run the L<perlbug> program |
235 | included with your release. Be sure to trim your bug down to a tiny but | |
236 | sufficient test case. Your bug report, along with the output of C<perl -V>, | |
b5cbfe35 | 237 | will be sent off to perlbug@perl.org to be analysed by the Perl porting team. |
44691e6f | 238 | |
87c118b9 DM |
239 | If the bug you are reporting has security implications which make it |
240 | inappropriate to send to a publicly archived mailing list, then see | |
373fec1e SH |
241 | L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> |
242 | for details of how to report the issue. | |
44691e6f | 243 | |
390ae6f9 S |
244 | =head1 Give Thanks |
245 | ||
373fec1e SH |
246 | If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, |
247 | you can do so by running the C<perlthanks> program: | |
390ae6f9 S |
248 | |
249 | perlthanks | |
250 | ||
251 | This will send an email to the Perl 5 Porters list with your show of thanks. | |
252 | ||
44691e6f AB |
253 | =head1 SEE ALSO |
254 | ||
e08634c5 SH |
255 | The F<Changes> file for an explanation of how to view exhaustive details on |
256 | what changed. | |
44691e6f AB |
257 | |
258 | The F<INSTALL> file for how to build Perl. | |
259 | ||
260 | The F<README> file for general stuff. | |
261 | ||
262 | The F<Artistic> and F<Copying> files for copyright information. | |
263 | ||
264 | =cut |