This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta for f605e527
[perl5.git] / pod / perldelta.pod
1 =encoding utf8
2
3 =head1 NAME
4
5 [ this is a template for a new perldelta file.  Any text flagged as XXX needs
6 to be processed before release. ]
7
8 perldelta - what is new for perl v5.21.8
9
10 =head1 DESCRIPTION
11
12 This document describes differences between the 5.21.7 release and the 5.21.8
13 release.
14
15 If you are upgrading from an earlier release such as 5.21.6, first read
16 L<perl5217delta>, which describes differences between 5.21.6 and 5.21.7.
17
18 =head1 Notice
19
20 XXX Any important notices here
21
22 =head1 Core Enhancements
23
24 XXX New core language features go here.  Summarize user-visible core language
25 enhancements.  Particularly prominent performance optimisations could go
26 here, but most should go in the L</Performance Enhancements> section.
27
28 [ List each enhancement as a =head2 entry ]
29
30 =head2 The warnings pragma now supports warnings outside of "all"
31
32 Ever since perl v5.6.0 we've had no way of adding new warnings without
33 retroactively adding them to all existing programs that used C<-w>,
34 C<-W> or C<use warnings>.
35
36 This caused us to not add new useful warnings out of fear that they
37 might unduly burden users who just wanted to upgrade perl and didn't
38 want to deal with a bunch of warnings from their existing code.
39
40 We now support a way to have our cake and eat it too, and can add new
41 warnings to the core going forward through other top-level warning
42 categories. See L<the warnings documentation|warnings/Top-level
43 warning categories & associated confusion> for details.
44
45 =head2 Non-Capturing Regular Expression Flag
46
47 Regular expressions now support a C</n> flag that disables capturing
48 and filling in C<$1>, C<$2>, etc... inside of groups:
49
50   "hello" =~ /(hi|hello)/n; # $1 is not set
51
52 This is equivalent to putting C<?:> at the beginning of every capturing group.
53
54 See L<perlre/"n"> for more information.
55
56 =head2 C<prototype> with no arguments
57
58 C<prototype()> with no arguments now infers C<$_>.  [perl #123514]
59
60 =head1 Security
61
62 XXX Any security-related notices go here.  In particular, any security
63 vulnerabilities closed should be noted here rather than in the
64 L</Selected Bug Fixes> section.
65
66 [ List each security issue as a =head2 entry ]
67
68 =head1 Incompatible Changes
69
70 XXX For a release on a stable branch, this section aspires to be:
71
72     There are no changes intentionally incompatible with 5.XXX.XXX
73     If any exist, they are bugs, and we request that you submit a
74     report.  See L</Reporting Bugs> below.
75
76 [ List each incompatible change as a =head2 entry ]
77
78 =head1 Deprecations
79
80 XXX Any deprecated features, syntax, modules etc. should be listed here.
81
82 =head2 Module removals
83
84 XXX Remove this section if inapplicable.
85
86 The following modules will be removed from the core distribution in a
87 future release, and will at that time need to be installed from CPAN.
88 Distributions on CPAN which require these modules will need to list them as
89 prerequisites.
90
91 The core versions of these modules will now issue C<"deprecated">-category
92 warnings to alert you to this fact.  To silence these deprecation warnings,
93 install the modules in question from CPAN.
94
95 Note that these are (with rare exceptions) fine modules that you are encouraged
96 to continue to use.  Their disinclusion from core primarily hinges on their
97 necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
98 not usually on concerns over their design.
99
100 =over
101
102 =item XXX
103
104 XXX Note that deprecated modules should be listed here even if they are listed
105 as an updated module in the L</Modules and Pragmata> section.
106
107 =back
108
109 [ List each other deprecation as a =head2 entry ]
110
111 =head1 Performance Enhancements
112
113 XXX Changes which enhance performance without changing behaviour go here.
114 There may well be none in a stable release.
115