Commit | Line | Data |
---|---|---|
b7d6a4ec MM |
1 | =encoding utf8 |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | perl5351delta - what is new for perl v5.35.1 | |
6 | ||
7 | =head1 DESCRIPTION | |
8 | ||
9 | This document describes differences between the 5.35.0 release and the 5.35.1 | |
10 | release. | |
11 | ||
12 | If you are upgrading from an earlier release such as 5.34.0, first read | |
13 | L<perl5350delta>, which describes differences between 5.34.0 and 5.35.0. | |
14 | ||
15 | =head1 Modules and Pragmata | |
16 | ||
17 | =head2 Updated Modules and Pragmata | |
18 | ||
19 | =over 4 | |
20 | ||
21 | =item * | |
22 | ||
23 | L<B::Deparse> has been upgraded from version 1.56 to 1.57. | |
24 | ||
25 | =item * | |
26 | ||
27 | L<Data::Dumper> has been upgraded from version 2.179 to 2.181. | |
28 | ||
29 | =item * | |
30 | ||
31 | L<feature> has been upgraded from version 1.65 to 1.66. | |
32 | ||
33 | =item * | |
34 | ||
35 | L<File::Copy> has been upgraded from version 2.35 to 2.36. | |
36 | ||
37 | Inode numbers are now compared as strings, so that large inode numbers | |
38 | are correctly distinguished. (GH #18788) | |
39 | ||
40 | =item * | |
41 | ||
42 | L<File::Glob> has been upgraded from version 1.33 to 1.35. | |
43 | ||
44 | =item * | |
45 | ||
46 | L<File::Spec> has been upgraded from version 3.80 to 3.81. | |
47 | ||
48 | =item * | |
49 | ||
50 | L<File::stat> has been upgraded from version 1.09 to 1.10. | |
51 | ||
52 | =item * | |
53 | ||
54 | L<IO> has been upgraded from version 1.46 to 1.47. | |
55 | ||
56 | Implement sync() for win32. | |
57 | ||
58 | =item * | |
59 | ||
60 | L<Module::CoreList> has been upgraded from version 5.20210521 to 5.20210620. | |
61 | ||
62 | =item * | |
63 | ||
64 | L<Opcode> has been upgraded from version 1.50 to 1.51. | |
65 | ||
66 | =item * | |
67 | ||
68 | L<open> has been upgraded from version 1.12 to 1.13. | |
69 | ||
70 | =item * | |
71 | ||
72 | L<PathTools|Cwd> has been upgraded from version 3.80 to 3.81. | |
73 | ||
74 | Inodes numbers are now compared as strings, so that large inode numbers | |
75 | are correctly distinguished. (GH #18788) | |
76 | ||
77 | =item * | |
78 | ||
79 | L<perlfaq> has been upgraded from version 5.20210411 to 5.20210520. | |
80 | ||
81 | =item * | |
82 | ||
83 | L<POSIX> has been upgraded from version 1.97 to 1.98. | |
84 | ||
85 | =item * | |
86 | ||
87 | L<Scalar::Util> has been upgraded from version 1.55 to 1.56. | |
88 | ||
89 | =item * | |
90 | ||
91 | L<Socket> has been upgraded from version 2.031 to 2.032. | |
92 | ||
93 | =item * | |
94 | ||
95 | L<Test::Simple> has been upgraded from version 1.302183 to 1.302185. | |
96 | ||
97 | =item * | |
98 | ||
99 | L<Unicode::Collate> has been upgraded from version 1.29 to 1.30. | |
100 | ||
101 | One warning in F<mkheader> averted (rt.cpan.org #133952). | |
102 | ||
103 | =item * | |
104 | ||
105 | L<Unicode::UCD> has been upgraded from version 0.75 to 0.76. | |
106 | ||
107 | =item * | |
108 | ||
109 | L<version> has been upgraded from version 0.9928 to 0.9929. | |
110 | ||
111 | =item * | |
112 | ||
113 | L<XS::APItest> has been upgraded from version 1.16 to 1.17. | |
114 | ||
115 | =back | |
116 | ||
117 | =head2 Changes to Existing Diagnostics | |
118 | ||
119 | =over 4 | |
120 | ||
121 | =item * | |
122 | ||
123 | L<Can't modify %s in %s|perldiag/"Can't modify %s in %s"> | |
124 | (for scalar assignment to C<undef>) | |
125 | ||
126 | Attempting to perform a scalar assignment to C<undef>, for example via | |
127 | C<undef = $foo;>, previously triggered a fatal runtime error with the | |
128 | message "L<Modification of a read-only value attempted|perldiag/"Modification of a read-only value attempted">." | |
129 | It is more helpful to detect such attempted assignments prior to | |
130 | runtime, so they are now compile time errors, resulting in the message | |
131 | "Can't modify undef operator in scalar assignment". | |
132 | ||
133 | =back | |
134 | ||
135 | =head1 Internal Changes | |
136 | ||
137 | =over 4 | |
138 | ||
139 | =item * | |
140 | ||
141 | Since the removal of PERL_OBJECT in Perl 5.8, PERL_IMPLICIT_CONTEXT and | |
142 | MULTIPLICITY have been synonymous and they were being used interchangeably. | |
143 | To simplify the code, all instances of PERL_IMPLICIT_CONTEXT have been | |
144 | replaced with MULTIPLICITY. | |
145 | ||
146 | PERL_IMPLICIT_CONTEXT will remain defined for compatibility with XS modules. | |
147 | ||
148 | =back | |
149 | ||
150 | =head1 Selected Bug Fixes | |
151 | ||
152 | =over 4 | |
153 | ||
154 | =item * | |
155 | ||
156 | utime() now correctly sets errno/C<$!> when called on a closed handle. | |
157 | ||
158 | =item * | |
159 | ||
160 | B::Deparse now correctly handles try/catch blocks with more complex scopes. | |
161 | [L<GH #18874|https://github.com/Perl/perl5/issues/18874>] | |
162 | ||
163 | =back | |
164 | ||
165 | =head1 Obituary | |
166 | ||
167 | Raun "Spider" Boardman (SPIDB on CPAN), author of at least 66 commits to the | |
168 | Perl 5 core distribution between 1996 and 2002, passed away May 24 2021 from | |
169 | complications of COVID. He will be missed. | |
170 | ||
171 | =head1 Acknowledgements | |
172 | ||
173 | Perl 5.35.1 represents approximately 4 weeks of development since Perl | |
174 | 5.35.0 and contains approximately 57,000 lines of changes across 410 files | |
175 | from 28 authors. | |
176 | ||
177 | Excluding auto-generated files, documentation and release tools, there were | |
178 | approximately 53,000 lines of changes to 220 .pm, .t, .c and .h files. | |
179 | ||
180 | Perl continues to flourish into its fourth decade thanks to a vibrant | |
181 | community of users and developers. The following people are known to have | |
182 | contributed the improvements that became Perl 5.35.1: | |
183 | ||
184 | Alyssa Ross, Chris 'BinGOs' Williams, Dan Book, Dan Jacobson, Dave Cross, | |
185 | Dave Lambley, E. Choroba, Felipe Gasper, H.Merijn Brand, Hugo van der | |
186 | Sanden, James E Keenan, Karen Etheridge, Karl Williamson, Leon Timmermans, | |
187 | Matthew Horsfall, Max Maischein, Michael G Schwern, Nicholas Clark, Paul | |
188 | Evans, Ricardo Signes, Richard Leach, Scott Baker, Thibault Duponchelle, | |
189 | Todd Rinaldo, Tomasz Konojacki, Tomoyuki Sadahiro, Tony Cook, Михаил | |
190 | Козачков. | |
191 | ||
192 | The list above is almost certainly incomplete as it is automatically | |
193 | generated from version control history. In particular, it does not include | |
194 | the names of the (very much appreciated) contributors who reported issues to | |
195 | the Perl bug tracker. | |
196 | ||
197 | Many of the changes included in this version originated in the CPAN modules | |
198 | included in Perl's core. We're grateful to the entire CPAN community for | |
199 | helping Perl to flourish. | |
200 | ||
201 | For a more complete list of all of Perl's historical contributors, please | |
202 | see the F<AUTHORS> file in the Perl source distribution. | |
203 | ||
204 | =head1 Reporting Bugs | |
205 | ||
206 | If you find what you think is a bug, you might check the perl bug database | |
207 | at L<https://github.com/Perl/perl5/issues>. There may also be information at | |
208 | L<http://www.perl.org/>, the Perl Home Page. | |
209 | ||
210 | If you believe you have an unreported bug, please open an issue at | |
211 | L<https://github.com/Perl/perl5/issues>. Be sure to trim your bug down to a | |
212 | tiny but sufficient test case. | |
213 | ||
214 | If the bug you are reporting has security implications which make it | |
215 | inappropriate to send to a public issue tracker, then see | |
216 | L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> | |
217 | for details of how to report the issue. | |
218 | ||
219 | =head1 Give Thanks | |
220 | ||
221 | If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, | |
222 | you can do so by running the C<perlthanks> program: | |
223 | ||
224 | perlthanks | |
225 | ||
226 | This will send an email to the Perl 5 Porters list with your show of thanks. | |
227 | ||
228 | =head1 SEE ALSO | |
229 | ||
230 | The F<Changes> file for an explanation of how to view exhaustive details on | |
231 | what changed. | |
232 | ||
233 | The F<INSTALL> file for how to build Perl. | |
234 | ||
235 | The F<README> file for general stuff. | |
236 | ||
237 | The F<Artistic> and F<Copying> files for copyright information. | |
238 | ||
239 | =cut |