Commit | Line | Data |
---|---|---|
43323ad1 SH |
1 | =encoding utf8 |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | perl5281delta - what is new for perl v5.28.1 | |
6 | ||
7 | =head1 DESCRIPTION | |
8 | ||
9 | This document describes differences between the 5.28.0 release and the 5.28.1 | |
10 | release. | |
11 | ||
12 | If you are upgrading from an earlier release such as 5.26.0, first read | |
13 | L<perl5280delta>, which describes differences between 5.26.0 and 5.28.0. | |
14 | ||
15 | =head1 Security | |
16 | ||
17 | =head2 [CVE-2018-18311] Integer overflow leading to buffer overflow and segmentation fault | |
18 | ||
19 | Integer arithmetic in C<Perl_my_setenv()> could wrap when the combined length | |
20 | of the environment variable name and value exceeded around 0x7fffffff. This | |
21 | could lead to writing beyond the end of an allocated buffer with attacker | |
22 | supplied data. | |
23 | ||
29c6c804 | 24 | L<[GH #16560]|https://github.com/Perl/perl5/issues/16560> |
43323ad1 SH |
25 | |
26 | =head2 [CVE-2018-18312] Heap-buffer-overflow write in S_regatom (regcomp.c) | |
27 | ||
28 | A crafted regular expression could cause heap-buffer-overflow write during | |
29 | compilation, potentially allowing arbitrary code execution. | |
30 | ||
29c6c804 | 31 | L<[GH #16649]|https://github.com/Perl/perl5/issues/16649> |
43323ad1 SH |
32 | |
33 | =head1 Incompatible Changes | |
34 | ||
35 | There are no changes intentionally incompatible with 5.28.0. If any exist, | |
36 | they are bugs, and we request that you submit a report. See | |
37 | L</Reporting Bugs> below. | |
38 | ||
39 | =head1 Modules and Pragmata | |
40 | ||
41 | =head2 Updated Modules and Pragmata | |
42 | ||
43 | =over 4 | |
44 | ||
45 | =item * | |
46 | ||
47 | L<Module::CoreList> has been upgraded from version 5.20180622 to 5.20181129_28. | |
48 | ||
49 | =back | |
50 | ||
51 | =head1 Selected Bug Fixes | |
52 | ||
53 | =over 4 | |
54 | ||
55 | =item * | |
56 | ||
57 | Perl 5.28 introduced an C<index()> optimization when comparing to -1 (or | |
58 | indirectly, e.g. >= 0). When this optimization was triggered inside a C<when> | |
59 | clause it caused a warning ("Argument %s isn't numeric in smart match"). This | |
60 | has now been fixed. | |
29c6c804 | 61 | L<[GH #16626]|https://github.com/Perl/perl5/issues/16626> |
43323ad1 SH |
62 | |
63 | =item * | |
64 | ||
65 | Matching of decimal digits in script runs, introduced in Perl 5.28, had a bug | |
66 | that led to C<"1\N{THAI DIGIT FIVE}"> matching C</^(*sr:\d+)$/> when it should | |
67 | not. This has now been fixed. | |
68 | ||
69 | =item * | |
70 | ||
71 | The new in-place editing code no longer leaks directory handles. | |
29c6c804 | 72 | L<[GH #16602]|https://github.com/Perl/perl5/issues/16602> |
43323ad1 SH |
73 | |
74 | =back | |
75 | ||
76 | =head1 Acknowledgements | |
77 | ||
78 | Perl 5.28.1 represents approximately 5 months of development since Perl 5.28.0 | |
79 | and contains approximately 6,100 lines of changes across 44 files from 12 | |
80 | authors. | |
81 | ||
82 | Excluding auto-generated files, documentation and release tools, there were | |
83 | approximately 700 lines of changes to 12 .pm, .t, .c and .h files. | |
84 | ||
85 | Perl continues to flourish into its fourth decade thanks to a vibrant community | |
86 | of users and developers. The following people are known to have contributed | |
87 | the improvements that became Perl 5.28.1: | |
88 | ||
89 | Aaron Crane, Abigail, Chris 'BinGOs' Williams, Dagfinn Ilmari Mannsåker, David | |
90 | Mitchell, James E Keenan, John SJ Anderson, Karen Etheridge, Karl Williamson, | |
91 | Sawyer X, Steve Hay, Tony Cook. | |
92 | ||
93 | The list above is almost certainly incomplete as it is automatically generated | |
94 | from version control history. In particular, it does not include the names of | |
95 | the (very much appreciated) contributors who reported issues to the Perl bug | |
96 | tracker. | |
97 | ||
98 | Many of the changes included in this version originated in the CPAN modules | |
99 | included in Perl's core. We're grateful to the entire CPAN community for | |
100 | helping Perl to flourish. | |
101 | ||
102 | For a more complete list of all of Perl's historical contributors, please see | |
103 | the F<AUTHORS> file in the Perl source distribution. | |
104 | ||
105 | =head1 Reporting Bugs | |
106 | ||
107 | If you find what you think is a bug, you might check the perl bug database | |
108 | at L<https://rt.perl.org/> . There may also be information at | |
109 | L<http://www.perl.org/> , the Perl Home Page. | |
110 | ||
111 | If you believe you have an unreported bug, please run the L<perlbug> program | |
112 | included with your release. Be sure to trim your bug down to a tiny but | |
113 | sufficient test case. Your bug report, along with the output of C<perl -V>, | |
114 | will be sent off to perlbug@perl.org to be analysed by the Perl porting team. | |
115 | ||
116 | If the bug you are reporting has security implications which make it | |
117 | inappropriate to send to a publicly archived mailing list, then see | |
118 | L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION> | |
119 | for details of how to report the issue. | |
120 | ||
121 | =head1 Give Thanks | |
122 | ||
123 | If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, | |
124 | you can do so by running the C<perlthanks> program: | |
125 | ||
126 | perlthanks | |
127 | ||
128 | This will send an email to the Perl 5 Porters list with your show of thanks. | |
129 | ||
130 | =head1 SEE ALSO | |
131 | ||
132 | The F<Changes> file for an explanation of how to view exhaustive details on | |
133 | what changed. | |
134 | ||
135 | The F<INSTALL> file for how to build Perl. | |
136 | ||
137 | The F<README> file for general stuff. | |
138 | ||
139 | The F<Artistic> and F<Copying> files for copyright information. | |
140 | ||
141 | =cut |