Commit | Line | Data |
---|---|---|
4380f76d KE |
1 | =encoding utf8 |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | perl5295delta - what is new for perl v5.29.5 | |
6 | ||
7 | =head1 DESCRIPTION | |
8 | ||
9 | This document describes differences between the 5.29.4 release and the 5.29.5 | |
10 | release. | |
11 | ||
12 | If you are upgrading from an earlier release such as 5.29.3, first read | |
13 | L<perl5294delta>, which describes differences between 5.29.3 and 5.29.4. | |
14 | ||
15 | =head1 Core Enhancements | |
16 | ||
17 | =head2 C<-Drv> now means something on C<-DDEBUGGING> builds | |
18 | ||
19 | Now, adding the verbose flag (C<-Dv>) to the C<-Dr> flag turns on all | |
20 | possible regular expression debugging. | |
21 | ||
22 | =head1 Performance Enhancements | |
23 | ||
24 | =over 4 | |
25 | ||
26 | =item * | |
27 | ||
28 | Regular expression pattern matching of things like C<qr/[^I<a>]/> is | |
29 | significantly sped up, where I<a> is any ASCII character. Which classes | |
30 | will get this speed up is complicated and depends on the underlying bit | |
31 | patterns of those characters, so differs between ASCII and EBCDIC | |
32 | platforms, but all case pairs, like C<qr/[Gg]/> are included, as is | |
33 | C<[^01]>. | |
34 | ||
35 | =back | |
36 | ||
37 | =head1 Modules and Pragmata | |
38 | ||
39 | =head2 Updated Modules and Pragmata | |
40 | ||
41 | =over 4 | |
42 | ||
43 | =item * | |
44 | ||
45 | L<Data::Dumper> has been upgraded from version 2.172 to 2.173. | |
46 | ||
47 | =item * | |
48 | ||
49 | L<Errno> has been upgraded from version 1.29 to 1.30. | |
50 | ||
51 | =item * | |
52 | ||
53 | L<File::Spec> has been upgraded from version 3.75 to 3.76. | |
54 | ||
55 | =item * | |
56 | ||
57 | L<GDBM_File> has been upgraded from version 1.17 to 1.18. | |
58 | ||
59 | =item * | |
60 | ||
61 | L<Module::CoreList> has been upgraded from version 5.20181020 to 5.20181120. | |
62 | ||
63 | =item * | |
64 | ||
65 | L<NDBM_File> has been upgraded from version 1.14 to 1.15. | |
66 | ||
67 | =item * | |
68 | ||
69 | L<ODBM_File> has been upgraded from version 1.15 to 1.16. | |
70 | ||
71 | =item * | |
72 | ||
73 | L<re> has been upgraded from version 0.36 to 0.37. | |
74 | ||
75 | =item * | |
76 | ||
77 | L<SDBM_File> has been upgraded from version 1.14 to 1.15. | |
78 | ||
79 | =back | |
80 | ||
81 | =head1 Documentation | |
82 | ||
83 | =head2 Changes to Existing Documentation | |
84 | ||
85 | We have attempted to update the documentation to reflect the changes | |
86 | listed in this document. If you find any we have missed, send email | |
87 | to L<perlbug@perl.org|mailto:perlbug@perl.org>. | |
88 | ||
89 | Additionally, the following selected changes have been made: | |
90 | ||
91 | =head3 L<perlfunc> | |
92 | ||
93 | =over 4 | |
94 | ||
95 | =item * | |
96 | ||
97 | The entry for L<perlfunc/-X> has been clarified to indicate that symbolic | |
98 | links are followed for most tests. | |
99 | ||
100 | =back | |
101 | ||
102 | =head1 Configuration and Compilation | |
103 | ||
104 | =over 4 | |
105 | ||
106 | =item * | |
107 | ||
49e38958 | 108 | Normally the thread-safe functions are used only on threaded builds. |
4380f76d KE |
109 | It is now possible to force their use on unthreaded builds on systems |
110 | that have them available, by including the | |
111 | C<-Accflags='-DUSE_THREAD_SAFE_LOCALE'> option to F<Configure>. | |
112 | ||
113 | =back | |
114 | ||
115 | =head1 Testing | |
116 | ||
117 | Tests were added and changed to reflect the other additions and changes | |
118 | in this release. | |
119 | ||
120 | =head1 Platform Support | |
121 | ||
122 | =head2 Platform-Specific Notes | |
123 | ||
124 | =over 4 | |
125 | ||
126 | =item Mac OS X | |
127 | ||
128 | Perl's build and testing process on Mac OS X for C<-Duseshrplib> | |
129 | builds is now compatible with Mac OS X System Integrity Protection | |
130 | (SIP). | |
131 | ||
132 | SIP prevents binaries in F</bin> (and a few other places) being passed | |
133 | the C<DYLD_LIBRARY_PATH> environment variable. For our purposes this | |
134 | prevents C<DYLD_LIBRARY_PATH> from being passed to the shell, which | |
135 | prevents that variable being passed to the testing or build process, | |
136 | so running C<perl> couldn't find F<libperl.dylib>. | |
137 | ||
138 | To workaround that, the initial build of the F<perl> executable | |
139 | expects to find F<libperl.dylib> in the build directory, and the | |
140 | library path is then adjusted during installation to point to the | |
141 | installed library. | |
142 | ||
143 | [perl #126706] | |
144 | ||
145 | =item Minix3 | |
146 | ||
147 | Some support for Minix3 has been re-added. | |
148 | ||
149 | =back | |
150 | ||
151 | =head1 Selected Bug Fixes | |
152 | ||
153 | =over 4 | |
154 | ||
155 | =item * | |
156 | ||
157 | L<SDBM_File> is now more robust with corrupt database files. The | |
158 | improvements do not make SDBM files suitable as an interchange format. | |
159 | [perl #132147] | |
160 | ||
161 | =item * | |
162 | ||
163 | C<binmode($fh);> or C<binmode($fh, ':raw');> now properly removes the | |
164 | C<:utf8> flag from the default C<:crlf> I/O layer on Win32. [perl | |
165 | #133604] | |
166 | ||
167 | =item * | |
168 | ||
169 | The experimental reference aliasing feature was misinterpreting array and | |
170 | hash slice assignment as being localised, e.g. | |
171 | ||
172 | \(@a[3,5,7]) = \(....); | |
173 | ||
174 | was being interpreted as: | |
175 | ||
176 | local \(@a[3,5,7]) = \(....); | |
177 | ||
178 | [perl #133538] | |
179 | ||
180 | =back | |
181 | ||
182 | =head1 Acknowledgements | |
183 | ||
184 | Perl 5.29.5 represents approximately 4 weeks of development since Perl | |
185 | 5.29.4 and contains approximately 4,000 lines of changes across 110 files | |
186 | from 18 authors. | |
187 | ||
188 | Excluding auto-generated files, documentation and release tools, there were | |
189 | approximately 2,600 lines of changes to 51 .pm, .t, .c and .h files. | |
190 | ||
191 | Perl continues to flourish into its fourth decade thanks to a vibrant | |
192 | community of users and developers. The following people are known to have | |
193 | contributed the improvements that became Perl 5.29.5: | |
194 | ||
195 | Aaron Crane, Chris 'BinGOs' Williams, Dagfinn Ilmari Mannsåker, Dan | |
196 | Dedrick, David Cantrell, David Mitchell, Dominic Hargreaves, H.Merijn Brand, | |
197 | James Clarke, James E Keenan, Karen Etheridge, Karl Williamson, Niko Tyni, | |
198 | Pali, Phil Pearl (Lobbes), Sawyer X, Tomasz Konojacki, Tony Cook. | |
199 | ||
200 | The list above is almost certainly incomplete as it is automatically | |
201 | generated from version control history. In particular, it does not include | |
202 | the names of the (very much appreciated) contributors who reported issues to | |
203 | the Perl bug tracker. | |
204 | ||
205 | Many of the changes included in this version originated in the CPAN modules | |
206 | included in Perl's core. We're grateful to the entire CPAN community for | |
207 | helping Perl to flourish. | |
208 | ||
209 | For a more complete list of all of Perl's historical contributors, please | |
210 | see the F<AUTHORS> file in the Perl source distribution. | |
211 | ||
212 | =head1 Reporting Bugs | |
213 | ||
214 | If you find what you think is a bug, you might check the perl bug database | |
215 | at L<https://rt.perl.org/>. There may also be information at | |
216 | L<http://www.perl.org/>, the Perl Home Page. | |
217 | ||
218 | If you believe you have an unreported bug, please run the L<perlbug> program | |
219 | included with your release. Be sure to trim your bug down to a tiny but | |
220 | sufficient test case. Your bug report, along with the output of C<perl -V>, | |
221 | will be sent off to perlbug@perl.org to be analysed by the Perl porting team. | |
222 | ||
223 | If the bug you are reporting has security implications which make it | |
224 | inappropriate to send to a publicly archived mailing list, then see | |
225 | L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> | |
226 | for details of how to report the issue. | |
227 | ||
228 | =head1 Give Thanks | |
229 | ||
230 | If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, | |
231 | you can do so by running the C<perlthanks> program: | |
232 | ||
233 | perlthanks | |
234 | ||
235 | This will send an email to the Perl 5 Porters list with your show of thanks. | |
236 | ||
237 | =head1 SEE ALSO | |
238 | ||
239 | The F<Changes> file for an explanation of how to view exhaustive details on | |
240 | what changed. | |
241 | ||
242 | The F<INSTALL> file for how to build Perl. | |
243 | ||
244 | The F<README> file for general stuff. | |
245 | ||
246 | The F<Artistic> and F<Copying> files for copyright information. | |
247 | ||
248 | =cut |