[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 =head1 NAME 2 3 perl584delta - what is new for perl v5.8.4 4 5 =head1 DESCRIPTION 6 7 This document describes differences between the 5.8.3 release and 8 the 5.8.4 release. 9 10 =head1 Incompatible Changes 11 12 Many minor bugs have been fixed. Scripts which happen to rely on previously 13 erroneous behaviour will consider these fixes as incompatible changes :-) 14 You are advised to perform sufficient acceptance testing on this release 15 to satisfy yourself that this does not affect you, before putting this 16 release into production. 17 18 The diagnostic output of Carp has been changed slightly, to add a space after 19 the comma between arguments. This makes it much easier for tools such as 20 web browsers to wrap it, but might confuse any automatic tools which perform 21 detailed parsing of Carp output. 22 23 The internal dump output has been improved, so that non-printable characters 24 such as newline and backspace are output in C<\x> notation, rather than 25 octal. This might just confuse non-robust tools which parse the output of 26 modules such as Devel::Peek. 27 28 =head1 Core Enhancements 29 30 =head2 Malloc wrapping 31 32 Perl can now be built to detect attempts to assign pathologically large chunks 33 of memory. Previously such assignments would suffer from integer wrap-around 34 during size calculations causing a misallocation, which would crash perl, and 35 could theoretically be used for "stack smashing" attacks. The wrapping 36 defaults to enabled on platforms where we know it works (most AIX 37 configurations, BSDi, Darwin, DEC OSF/1, FreeBSD, HP/UX, GNU Linux, OpenBSD, 38 Solaris, VMS and most Win32 compilers) and defaults to disabled on other 39 platforms. 40 41 =head2 Unicode Character Database 4.0.1 42 43 The copy of the Unicode Character Database included in Perl 5.8 has 44 been updated to 4.0.1 from 4.0.0. 45 46 =head2 suidperl less insecure 47 48 Paul Szabo has analysed and patched C<suidperl> to remove existing known 49 insecurities. Currently there are no known holes in C<suidperl>, but previous 50 experience shows that we cannot be confident that these were the last. You may 51 no longer invoke the set uid perl directly, so to preserve backwards 52 compatibility with scripts that invoke #!/usr/bin/suidperl the only set uid 53 binary is now C<sperl5.8.>I<n> (C<sperl5.8.4> for this release). C<suidperl> 54 is installed as a hard link to C<perl>; both C<suidperl> and C<perl> will 55 invoke C<sperl5.8.4> automatically the set uid binary, so this change should 56 be completely transparent. 57 58 For new projects the core perl team would strongly recommend that you use 59 dedicated, single purpose security tools such as C<sudo> in preference to 60 C<suidperl>. 61 62 =head2 format 63 64 In addition to bug fixes, C<format>'s features have been enhanced. See 65 L<perlform> 66 67 =head1 Modules and Pragmata 68 69 The (mis)use of C</tmp> in core modules and documentation has been tidied up. 70 Some modules available both within the perl core and independently from CPAN 71 ("dual-life modules") have not yet had these changes applied; the changes 72 will be integrated into future stable perl releases as the modules are 73 updated on CPAN. 74 75 =head2 Updated modules 76 77 =over 4 78 79 =item Attribute::Handlers 80 81 =item B 82 83 =item Benchmark 84 85 =item CGI 86 87 =item Carp 88 89 =item Cwd 90 91 =item Exporter 92 93 =item File::Find 94 95 =item IO 96 97 =item IPC::Open3 98 99 =item Local::Maketext 100 101 =item Math::BigFloat 102 103 =item Math::BigInt 104 105 =item Math::BigRat 106 107 =item MIME::Base64 108 109 =item ODBM_File 110 111 =item POSIX 112 113 =item Shell 114 115 =item Socket 116 117 There is experimental support for Linux abstract Unix domain sockets. 118 119 =item Storable 120 121 =item Switch 122 123 Synced with its CPAN version 2.10 124 125 =item Sys::Syslog 126 127 C<syslog()> can now use numeric constants for facility names and priorities, 128 in addition to strings. 129 130 =item Term::ANSIColor 131 132 =item Time::HiRes 133 134 =item Unicode::UCD 135 136 =item Win32 137 138 Win32.pm/Win32.xs has moved from the libwin32 module to core Perl 139 140 =item base 141 142 =item open 143 144 =item threads 145 146 Detached threads are now also supported on Windows. 147 148 =item utf8 149 150 =back 151 152 =head1 Performance Enhancements 153 154 =over 4 155 156 =item * 157 158 Accelerated Unicode case mappings (C</i>, C<lc>, C<uc>, etc). 159 160 =item * 161 162 In place sort optimised (eg C<@a = sort @a>) 163 164 =item * 165 166 Unnecessary assignment optimised away in 167 168 my $s = undef; 169 my @a = (); 170 my %h = (); 171 172 =item * 173 174 Optimised C<map> in scalar context 175 176 =back 177 178 =head1 Utility Changes 179 180 The Perl debugger (F<lib/perl5db.pl>) can now save all debugger commands for 181 sourcing later, and can display the parent inheritance tree of a given class. 182 183 =head1 Installation and Configuration Improvements 184 185 The build process on both VMS and Windows has had several minor improvements 186 made. On Windows Borland's C compiler can now compile perl with PerlIO and/or 187 USE_LARGE_FILES enabled. 188 189 C<perl.exe> on Windows now has a "Camel" logo icon. The use of a camel with 190 the topic of Perl is a trademark of O'Reilly and Associates Inc., and is used 191 with their permission (ie distribution of the source, compiling a Windows 192 executable from it, and using that executable locally). Use of the supplied 193 camel for anything other than a perl executable's icon is specifically not 194 covered, and anyone wishing to redistribute perl binaries I<with> the icon 195 should check directly with O'Reilly beforehand. 196 197 Perl should build cleanly on Stratus VOS once more. 198 199 =head1 Selected Bug Fixes 200 201 More utf8 bugs fixed, notably in how C<chomp>, C<chop>, C<send>, and 202 C<syswrite> and interact with utf8 data. Concatenation now works correctly 203 when C<use bytes;> is in scope. 204 205 Pragmata are now correctly propagated into (?{...}) constructions in regexps. 206 Code such as 207 208 my $x = qr{ ... (??{ $x }) ... }; 209 210 will now (correctly) fail under use strict. (As the inner C<$x> is and 211 has always referred to C<$::x>) 212 213 The "const in void context" warning has been suppressed for a constant in an 214 optimised-away boolean expression such as C<5 || print;> 215 216 C<perl -i> could C<fchmod(stdin)> by mistake. This is serious if stdin is 217 attached to a terminal, and perl is running as root. Now fixed. 218 219 =head1 New or Changed Diagnostics 220 221 C<Carp> and the internal diagnostic routines used by C<Devel::Peek> have been 222 made clearer, as described in L</Incompatible Changes> 223 224 =head1 Changed Internals 225 226 Some bugs have been fixed in the hash internals. Restricted hashes and 227 their place holders are now allocated and deleted at slightly different times, 228 but this should not be visible to user code. 229 230 =head1 Future Directions 231 232 Code freeze for the next maintenance release (5.8.5) will be on 30th June 233 2004, with release by mid July. 234 235 =head1 Platform Specific Problems 236 237 This release is known not to build on Windows 95. 238 239 =head1 Reporting Bugs 240 241 If you find what you think is a bug, you might check the articles 242 recently posted to the comp.lang.perl.misc newsgroup and the perl 243 bug database at http://bugs.perl.org. There may also be 244 information at http://www.perl.org, the Perl Home Page. 245 246 If you believe you have an unreported bug, please run the B<perlbug> 247 program included with your release. Be sure to trim your bug down 248 to a tiny but sufficient test case. Your bug report, along with the 249 output of C<perl -V>, will be sent off to perlbug@perl.org to be 250 analysed by the Perl porting team. You can browse and search 251 the Perl 5 bugs at http://bugs.perl.org/ 252 253 =head1 SEE ALSO 254 255 The F<Changes> file for exhaustive details on what changed. 256 257 The F<INSTALL> file for how to build Perl. 258 259 The F<README> file for general stuff. 260 261 The F<Artistic> and F<Copying> files for copyright information. 262 263 =cut
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |