This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
more perldelta updates
[perl5.git] / pod / perldelta.pod
1 =encoding utf8
2
3 =head1 NAME
4
5 perldelta - what is new for perl v5.35.3
6
7 =head1 DESCRIPTION
8
9 This document describes differences between the 5.35.2 release and the 5.35.3
10 release.
11
12 If you are upgrading from an earlier release such as 5.35.1, first read
13 L<perl5352delta>, which describes differences between 5.35.1 and 5.35.2.
14
15 =head1 Notice
16
17 With this release, the experimental C<switch> feature, present in every feature
18 bundle since they were introduced in v5.10, has been removed from the v5.36
19 bundle.  If you want to live dangerously and use it, you'll have to enable it
20 explicitly.
21
22 =head1 Core Enhancements
23
24 All warnings are enabled automatically within the scope of
25 a C<L<use v5.35|perlfunc/use VERSION>> (or higher) declaration.
26
27 =head1 Modules and Pragmata
28
29 =head2 Updated Modules and Pragmata
30
31 =over 4
32
33 =item *
34
35 L<feature> has been upgraded from version 1.66 to 1.67.
36
37 Added a simple API to check which features or feature bundles are
38 enabled.  (github L<#18968|https://github.com/Perl/perl5/pull/18968>)
39
40 =item *
41
42 L<Pod::Html> has been upgraded from version 1.31 to 1.32.
43
44 =item *
45
46 L<sort> has been upgraded from version 2.04 to 2.05.
47
48 The C<sort> pragma is now a no-op, and its use is discouraged.
49 C<sort::current> now issues a deprecation warning and always returns I<stable>.
50
51 =item *
52
53 L<Text::Tabs> and L<Text::Wrap> have been upgraded from CPAN (Text-Tabs+Wrap)
54 version 2013.0523 to 2021.0804.
55
56 =item *
57
58 L<Time::HiRes> has been upgraded from version 1.9768 to 1,9769.
59
60 Makefile.PL now correct handles configuration set in perl hints.
61 (github L<#18953|https://github.com/Perl/perl5/issues/18953>)
62
63 =item *
64
65 L<XXX> has been upgraded from version A.xx to B.yy.
66
67 If there was something important to note about this change, include that here.
68
69 =back
70
71 =head1 Documentation
72
73 =head2 New Documentation
74
75 =head3 F<Porting/vote_admin_guide.pod>
76
77 This document provides the process for administering an election or vote
78 within the Perl Core Team.
79
80 =head2 Changes to Existing Documentation
81
82 We have attempted to update the documentation to reflect the changes
83 listed in this document.  If you find any we have missed, open an issue
84 at L<https://github.com/Perl/perl5/issues>.
85
86 Additionally, the following selected changes have been made:
87
88 =head3 L<perlop>
89
90 =over 4
91
92 =item *
93
94 now notes that an invocant only needs to be an object or class name
95 for method calls, not for subroutine references.
96
97 =back
98
99 =head3 L<perlexperiment>
100
101 =over 4
102
103 =item *
104
105 notes the C<:win32> IO pseudolayer is removed (this happened in 5.35.2).
106
107 =back
108
109 =head3 L<perldeprecation>
110
111 =over 4
112
113 =item *
114
115 notes the new location for functions moved from L<Pod::Html> to
116 L<Pod::Html::Util> that are no longer intended to be used outside of core.
117
118 =back
119
120 =head1 Configuration and Compilation
121
122 =over 4
123
124 =item *
125
126 The makedepend step is now run in parallel by using make
127
128 This reduces the time for
129
130   time sh ./makedepend MAKE=make cflags
131
132 from 5 seconds to 2 seconds with MAKEFLAGS=-j8
133
134 =item *
135
136 F<Configure> now tests whether C<< #include <xlocale.h> >> is required
137 to use the POSIX 1003 thread-safe locale functions or some related
138 extensions.  This prevents problems where a non-public F<xlocale.h> is
139 removed in a library update, or F<xlocale.h> isn't intended for public
140 use. (github L<#18936|https://github.com/Perl/perl5/pull/18936>)
141
142 =back
143
144 =head1 Internal Changes
145
146 =over 4
147
148 =item *
149
150 Macros have been added to F<perl.h> to facilitate version comparisons:
151 C<PERL_GCC_VERSION_GE>, C<PERL_GCC_VERSION_GT>, C<PERL_GCC_VERSION_LE> and
152 C<PERL_GCC_VERSION_LT>.
153
154 Inline functions have been added to F<embed.h> to determine the position of
155 the least significant 1 bit in a word: C<lsbit_pos32> and C<lsbit_pos64>.
156
157 =back
158
159 =head1 Selected Bug Fixes
160
161 =over 4
162
163 =item *
164
165 Use of the C<mktables> debugging facility would cause perl to croak since
166 v5.31.10; this problem has now been fixed.
167
168 =item *
169
170 C<makedepend> logic is now compatible with BSD make (fixes
171 L<GH #19046|https://github.com/Perl/perl5/issues/19046>).
172
173 =back
174
175 =head1 Errata From Previous Releases
176
177 =over 4
178
179 =item *
180
181 L<perl5300delta> mistakenly identified a CVE whose correct identification is CVE-2015-1592.
182
183 =back
184
185 =head1 Acknowledgements
186
187 XXX Generate this with:
188
189   perl Porting/acknowledgements.pl v5.35.2..HEAD
190
191 =head1 Reporting Bugs
192
193 If you find what you think is a bug, you might check the perl bug database
194 at L<https://github.com/Perl/perl5/issues>.  There may also be information at
195 L<http://www.perl.org/>, the Perl Home Page.
196
197 If you believe you have an unreported bug, please open an issue at
198 L<https://github.com/Perl/perl5/issues>.  Be sure to trim your bug down to a
199 tiny but sufficient test case.
200
201 If the bug you are reporting has security implications which make it
202 inappropriate to send to a public issue tracker, then see
203 L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
204 for details of how to report the issue.
205
206 =head1 Give Thanks
207
208 If you wish to thank the Perl 5 Porters for the work we had done in Perl 5,
209 you can do so by running the C<perlthanks> program:
210
211     perlthanks
212
213 This will send an email to the Perl 5 Porters list with your show of thanks.
214
215 =head1 SEE ALSO
216
217 The F<Changes> file for an explanation of how to view exhaustive details on
218 what changed.
219
220 The F<INSTALL> file for how to build Perl.
221
222 The F<README> file for general stuff.
223
224 The F<Artistic> and F<Copying> files for copyright information.
225
226 =cut