| 1 | =encoding utf8 |
| 2 | |
| 3 | =head1 NAME |
| 4 | |
| 5 | perl5182delta - what is new for perl v5.18.2 |
| 6 | |
| 7 | =head1 DESCRIPTION |
| 8 | |
| 9 | This document describes differences between the 5.18.1 release and the 5.18.2 |
| 10 | release. |
| 11 | |
| 12 | If you are upgrading from an earlier release such as 5.18.0, first read |
| 13 | L<perl5181delta>, which describes differences between 5.18.0 and 5.18.1. |
| 14 | |
| 15 | =head1 Modules and Pragmata |
| 16 | |
| 17 | =head2 Updated Modules and Pragmata |
| 18 | |
| 19 | =over 4 |
| 20 | |
| 21 | =item * |
| 22 | |
| 23 | L<B> has been upgraded from version 1.42_01 to 1.42_02. |
| 24 | |
| 25 | The fix for [perl #118525] introduced a regression in the behaviour of |
| 26 | C<B::CV::GV>, changing the return value from a C<B::SPECIAL> object on |
| 27 | a C<NULL> C<CvGV> to C<undef>. C<B::CV::GV> again returns a |
| 28 | C<B::SPECIAL> object in this case. [perl #119413] |
| 29 | |
| 30 | =item * |
| 31 | |
| 32 | L<B::Concise> has been upgraded from version 0.95 to 0.95_01. |
| 33 | |
| 34 | This fixes a bug in dumping unexpected SPECIALs. |
| 35 | |
| 36 | =item * |
| 37 | |
| 38 | L<English> has been upgraded from version 1.06 to 1.06_01. This fixes an |
| 39 | error about the performance of C<$`>, C<$&>, and C<$'>. |
| 40 | |
| 41 | =item * |
| 42 | |
| 43 | L<File::Glob> has been upgraded from version 1.20 to 1.20_01. |
| 44 | |
| 45 | =back |
| 46 | |
| 47 | =head1 Documentation |
| 48 | |
| 49 | =head2 Changes to Existing Documentation |
| 50 | |
| 51 | =over 4 |
| 52 | |
| 53 | =item * |
| 54 | |
| 55 | L<perlrepository> has been restored with a pointer to more useful pages. |
| 56 | |
| 57 | =item * |
| 58 | |
| 59 | L<perlhack> has been updated with the latest changes from blead. |
| 60 | |
| 61 | =back |
| 62 | |
| 63 | =head1 Selected Bug Fixes |
| 64 | |
| 65 | =over 4 |
| 66 | |
| 67 | =item * |
| 68 | |
| 69 | Perl 5.18.1 introduced a regression along with a bugfix for lexical subs. |
| 70 | Some B::SPECIAL results from B::CV::GV became undefs instead. This broke |
| 71 | Devel::Cover among other libraries. This has been fixed. [perl #119351] |
| 72 | |
| 73 | =item * |
| 74 | |
| 75 | Perl 5.18.0 introduced a regression whereby C<[:^ascii:]>, if used in the same |
| 76 | character class as other qualifiers, would fail to match characters in the |
| 77 | Latin-1 block. This has been fixed. [perl #120799] |
| 78 | |
| 79 | =item * |
| 80 | |
| 81 | Perl 5.18.0 introduced a regression when using ->SUPER::method with AUTOLOAD |
| 82 | by looking up AUTOLOAD from the current package, rather than the current |
| 83 | package’s superclass. This has been fixed. [perl #120694] |
| 84 | |
| 85 | =item * |
| 86 | |
| 87 | Perl 5.18.0 introduced a regression whereby C<-bareword> was no longer |
| 88 | permitted under the C<strict> and C<integer> pragmata when used together. This |
| 89 | has been fixed. [perl #120288] |
| 90 | |
| 91 | =item * |
| 92 | |
| 93 | Previously PerlIOBase_dup didn't check if pushing the new layer succeeded |
| 94 | before (optionally) setting the utf8 flag. This could cause |
| 95 | segfaults-by-nullpointer. This has been fixed. |
| 96 | |
| 97 | =item * |
| 98 | |
| 99 | A buffer overflow with very long identifiers has been fixed. |
| 100 | |
| 101 | =item * |
| 102 | |
| 103 | A regression from 5.16 in the handling of padranges led to assertion failures |
| 104 | if a keyword plugin declined to handle the second ‘my’, but only after creating |
| 105 | a padop. |
| 106 | |
| 107 | This affected, at least, Devel::CallParser under threaded builds. |
| 108 | |
| 109 | This has been fixed. |
| 110 | |
| 111 | =item * |
| 112 | |
| 113 | The construct C<< $r=qr/.../; /$r/p >> is now handled properly, an issue which |
| 114 | had been worsened by changes 5.18.0. [perl #118213] |
| 115 | |
| 116 | =back |
| 117 | |
| 118 | =head1 Acknowledgements |
| 119 | |
| 120 | Perl 5.18.2 represents approximately 3 months of development since Perl |
| 121 | 5.18.1 and contains approximately 980 lines of changes across 39 files from 4 |
| 122 | authors. |
| 123 | |
| 124 | Perl continues to flourish into its third decade thanks to a vibrant |
| 125 | community of users and developers. The following people are known to have |
| 126 | contributed the improvements that became Perl 5.18.2: |
| 127 | |
| 128 | Craig A. Berry, David Mitchell, Ricardo Signes, Tony Cook. |
| 129 | |
| 130 | The list above is almost certainly incomplete as it is automatically |
| 131 | generated from version control history. In particular, it does not include |
| 132 | the names of the (very much appreciated) contributors who reported issues to |
| 133 | the Perl bug tracker. |
| 134 | |
| 135 | Many of the changes included in this version originated in the CPAN modules |
| 136 | included in Perl's core. We're grateful to the entire CPAN community for |
| 137 | helping Perl to flourish. |
| 138 | |
| 139 | For a more complete list of all of Perl's historical contributors, please see |
| 140 | the F<AUTHORS> file in the Perl source distribution. |
| 141 | |
| 142 | =head1 Reporting Bugs |
| 143 | |
| 144 | If you find what you think is a bug, you might check the articles recently |
| 145 | posted to the comp.lang.perl.misc newsgroup and the perl bug database at |
| 146 | http://rt.perl.org/perlbug/ . There may also be information at |
| 147 | http://www.perl.org/ , the Perl Home Page. |
| 148 | |
| 149 | If you believe you have an unreported bug, please run the L<perlbug> program |
| 150 | included with your release. Be sure to trim your bug down to a tiny but |
| 151 | sufficient test case. Your bug report, along with the output of C<perl -V>, |
| 152 | will be sent off to perlbug@perl.org to be analysed by the Perl porting team. |
| 153 | |
| 154 | If the bug you are reporting has security implications, which make it |
| 155 | inappropriate to send to a publicly archived mailing list, then please send it |
| 156 | to perl5-security-report@perl.org. This points to a closed subscription |
| 157 | unarchived mailing list, which includes all the core committers, who will be |
| 158 | able to help assess the impact of issues, figure out a resolution, and help |
| 159 | co-ordinate the release of patches to mitigate or fix the problem across all |
| 160 | platforms on which Perl is supported. Please only use this address for |
| 161 | security issues in the Perl core, not for modules independently distributed on |
| 162 | CPAN. |
| 163 | |
| 164 | =head1 SEE ALSO |
| 165 | |
| 166 | The F<Changes> file for an explanation of how to view exhaustive details on |
| 167 | what changed. |
| 168 | |
| 169 | The F<INSTALL> file for how to build Perl. |
| 170 | |
| 171 | The F<README> file for general stuff. |
| 172 | |
| 173 | The F<Artistic> and F<Copying> files for copyright information. |
| 174 | |
| 175 | =cut |