📄 perl571delta.1
字号:
.\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05).\".\" Standard preamble:.\" ========================================================================.de Sh \" Subsection heading.br.if t .Sp.ne 5.PP\fB\\$1\fR.PP...de Sp \" Vertical space (when we can't use .PP).if t .sp .5v.if n .sp...de Vb \" Begin verbatim text.ft CW.nf.ne \\$1...de Ve \" End verbatim text.ft R.fi...\" Set up some character translations and predefined strings. \*(-- will.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left.\" double quote, and \*(R" will give a right double quote. \*(C+ will.\" give a nicer C++. Capital omega is used to do unbreakable dashes and.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,.\" nothing in troff, for use with C<>..tr \(*W-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'.ie n \{\. ds -- \(*W-. ds PI pi. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch. ds L" "". ds R" "". ds C` "". ds C' ""'br\}.el\{\. ds -- \|\(em\|. ds PI \(*p. ds L" ``. ds R" '''br\}.\".\" Escape single quotes in literal strings from groff's Unicode transform..ie \n(.g .ds Aq \(aq.el .ds Aq '.\".\" If the F register is turned on, we'll generate index entries on stderr for.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index.\" entries marked with X<> in POD. Of course, you'll have to process the.\" output yourself in some meaningful fashion..ie \nF \{\. de IX. tm Index:\\$1\t\\n%\t"\\$2"... nr % 0. rr F.\}.el \{\. de IX...\}.\".\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2)..\" Fear. Run. Save yourself. No user-serviceable parts.. \" fudge factors for nroff and troff.if n \{\. ds #H 0. ds #V .8m. ds #F .3m. ds #[ \f1. ds #] \fP.\}.if t \{\. ds #H ((1u-(\\\\n(.fu%2u))*.13m). ds #V .6m. ds #F 0. ds #[ \&. ds #] \&.\}. \" simple accents for nroff and troff.if n \{\. ds ' \&. ds ` \&. ds ^ \&. ds , \&. ds ~ ~. ds /.\}.if t \{\. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u". ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'.\}. \" troff and (daisy-wheel) nroff accents.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'.ds 8 \h'\*(#H'\(*b\h'-\*(#H'.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#].ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#].ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#].ds ae a\h'-(\w'a'u*4/10)'e.ds Ae A\h'-(\w'A'u*4/10)'E. \" corrections for vroff.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'. \" for low resolution devices (crt and lpr).if \n(.H>23 .if \n(.V>19 \\{\. ds : e. ds 8 ss. ds o a. ds d- d\h'-1'\(ga. ds D- D\h'-1'\(hy. ds th \o'bp'. ds Th \o'LP'. ds ae ae. ds Ae AE.\}.rm #[ #] #H #V #F C.\" ========================================================================.\".IX Title "PERL571DELTA 1".TH PERL571DELTA 1 "2007-12-18" "perl v5.10.0" "Perl Programmers Reference Guide".\" For nroff, turn off justification. Always turn off hyphenation; it makes.\" way too many mistakes in technical documents..if n .ad l.nh.SH "NAME"perl571delta \- what's new for perl v5.7.1.SH "DESCRIPTION".IX Header "DESCRIPTION"This document describes differences between the 5.7.0 release and the5.7.1 release..PP(To view the differences between the 5.6.0 release and the 5.7.0release, see perl570delta.).SH "Security Vulnerability Closed".IX Header "Security Vulnerability Closed"(This change was already made in 5.7.0 but bears repeating here.).PPA potential security vulnerability in the optional suidperl componentof Perl was identified in August 2000. suidperl is neither built norinstalled by default. As of April 2001 the only known vulnerableplatform is Linux, most likely all Linux distributions. \s-1CERT\s0 andvarious vendors and distributors have been alerted about the vulnerability.See http://www.cpan.org/src/5.0/sperl\-2000\-08\-05/sperl\-2000\-08\-05.txtfor more information..PPThe problem was caused by Perl trying to report a suspected securityexploit attempt using an external program, /bin/mail. On Linuxplatforms the /bin/mail program had an undocumented feature whichwhen combined with suidperl gave access to a root shell, resulting ina serious compromise instead of reporting the exploit attempt. If youdon't have /bin/mail, or if you have 'safe setuid scripts', or ifsuidperl is not installed, you are safe..PPThe exploit attempt reporting feature has been completely removed fromall the Perl 5.7 releases (and will be gone also from the maintenancerelease 5.6.1), so that particular vulnerability isn't there anymore.However, further security vulnerabilities are, unfortunately, alwayspossible. The suidperl code is being reviewed and if deemed too riskyto continue to be supported, it may be completely removed from futurereleases. In any case, suidperl should only be used by securityexperts who know exactly what they are doing and why they are usingsuidperl instead of some other solution such as sudo( see http://www.courtesan.com/sudo/ )..SH "Incompatible Changes".IX Header "Incompatible Changes".IP "\(bu" 4Although \*(L"you shouldn't do that\*(R", it was possible to write code thatdepends on Perl's hashed key order (Data::Dumper does this). The newalgorithm \*(L"One-at-a-Time\*(R" produces a different hashed key order.More details are in \*(L"Performance Enhancements\*(R"..IP "\(bu" 4The list of filenames from \fIglob()\fR (or <...>) is now by default sortedalphabetically to be csh-compliant. (\fIbsd_glob()\fR does still sort platformnatively, \s-1ASCII\s0 or \s-1EBCDIC\s0, unless \s-1GLOB_ALPHASORT\s0 is specified.).SH "Core Enhancements".IX Header "Core Enhancements".Sh "\s-1AUTOLOAD\s0 Is Now Lvaluable".IX Subsection "AUTOLOAD Is Now Lvaluable"\&\s-1AUTOLOAD\s0 is now lvaluable, meaning that you can add the :lvalue attributeto \s-1AUTOLOAD\s0 subroutines and you can assign to the \s-1AUTOLOAD\s0 return value..Sh "PerlIO is Now The Default".IX Subsection "PerlIO is Now The Default".IP "\(bu" 4\&\s-1IO\s0 is now by default done via PerlIO rather than system's \*(L"stdio\*(R".PerlIO allows \*(L"layers\*(R" to be \*(L"pushed\*(R" onto a file handle to alter thehandle's behaviour. Layers can be specified at open time via 3\-argform of open:.Sp.Vb 1\& open($fh,\*(Aq>:crlf :utf8\*(Aq, $path) || ....Ve.Spor on already opened handles via extended \f(CW\*(C`binmode\*(C'\fR:.Sp.Vb 1\& binmode($fh,\*(Aq:encoding(iso\-8859\-7)\*(Aq);.Ve.SpThe built-in layers are: unix (low level read/write), stdio (as inprevious Perls), perlio (re-implementation of stdio buffering in aportable manner), crlf (does \s-1CRLF\s0 <=> \*(L"\en\*(R" translation as on Win32,but available on any platform). A mmap layer may be available ifplatform supports it (mostly UNIXes)..SpLayers to be applied by default may be specified via the 'open' pragma..SpSee \*(L"Installation and Configuration Improvements\*(R" for the effectsof PerlIO on your architecture name..IP "\(bu" 4File handles can be marked as accepting Perl's internal encoding of Unicode(\s-1UTF\-8\s0 or UTF-EBCDIC depending on platform) by a pseudo layer \*(L":utf8\*(R" :.Sp.Vb 1\& open($fh,">:utf8","Uni.txt");.Ve.SpNote for \s-1EBCDIC\s0 users: the pseudo layer \*(L":utf8\*(R" is erroneously namedfor you since it's not \s-1UTF\-8\s0 what you will be getting but insteadUTF-EBCDIC. See perlunicode, utf8, andhttp://www.unicode.org/unicode/reports/tr16/ for more information.In future releases this naming may change..IP "\(bu" 4File handles can translate character encodings from/to Perl's internalUnicode form on read/write via the \*(L":\fIencoding()\fR\*(R" layer..IP "\(bu" 4File handles can be opened to \*(L"in memory\*(R" files held in Perl scalars via:.Sp.Vb 1\& open($fh,\*(Aq>\*(Aq, \e$variable) || ....Ve.IP "\(bu" 4Anonymous temporary files are available without need to\&'use FileHandle' or other module via.Sp.Vb 1\& open($fh,"+>", undef) || ....Ve.SpThat is a literal undef, not an undefined value..IP "\(bu" 4The list form of \f(CW\*(C`open\*(C'\fR is now implemented for pipes (at least on \s-1UNIX\s0):.Sp.Vb 1\& open($fh,"\-|", \*(Aqcat\*(Aq, \*(Aq/etc/motd\*(Aq).Ve.Spcreates a pipe, and runs the equivalent of exec('cat', '/etc/motd') inthe child process..IP "\(bu" 4The following builtin functions are now overridable: \fIchop()\fR, \fIchomp()\fR,\&\fIeach()\fR, \fIkeys()\fR, \fIpop()\fR, \fIpush()\fR, \fIshift()\fR, \fIsplice()\fR, \fIunshift()\fR..IP "\(bu" 4Formats now support zero-padded decimal fields..IP "\(bu" 4Perl now tries internally to use integer values in numeric conversionsand basic arithmetics (+ \- * /) if the arguments are integers, andtries also to keep the results stored internally as integers.This change leads into often slightly faster and always less lossyarithmetics. (Previously Perl always preferred floating point numbersin its math.).IP "\(bu" 4The \fIprintf()\fR and \fIsprintf()\fR now support parameter reordering using the\&\f(CW\*(C`%\ed+\e$\*(C'\fR and \f(CW\*(C`*\ed+\e$\*(C'\fR syntaxes. For example.Sp.Vb 1\& print "%2\e$s %1\e$s\en", "foo", "bar";.Ve.Spwill print \*(L"bar foo\en\*(R"; This feature helps in writinginternationalised software..IP "\(bu" 4Unicode in general should be now much more usable. Unicode can beused in hash keys, Unicode in regular expressions should work now,Unicode in tr/// should work now (though tr/// seems to be aparticularly tricky to get right, so you have been warned).IP "\(bu" 4The Unicode Character Database coming with Perl has been upgradedto Unicode 3.1. For more information, see http://www.unicode.org/ ,and http://www.unicode.org/unicode/reports/tr27/.SpFor developers interested in enhancing Perl's Unicode capabilities:almost all the \s-1UCD\s0 files are included with the Perl distribution inthe lib/unicode subdirectory. The most notable omission, for spaceconsiderations, is the Unihan database..IP "\(bu" 4The Unicode character classes \ep{Blank} and \ep{SpacePerl} have beenadded. \*(L"Blank\*(R" is like C \fIisblank()\fR, that is, it contains only\&\*(L"horizontal whitespace\*(R" (the space character is, the newline isn't),and the \*(L"SpacePerl\*(R" is the Unicode equivalent of \f(CW\*(C`\es\*(C'\fR (\ep{Space}isn't, since that includes the vertical tabulator character, whereas\&\f(CW\*(C`\es\*(C'\fR doesn't.).Sh "Signals Are Now Safe".IX Subsection "Signals Are Now Safe"Perl used to be fragile in that signals arriving at inopportune momentscould corrupt Perl's internal state..SH "Modules and Pragmata".IX Header "Modules and Pragmata".Sh "New Modules".IX Subsection "New Modules".IP "\(bu" 4B::Concise, by Stephen McCamant, is a new compiler backend forwalking the Perl syntax tree, printing concise info about ops.The output is highly customisable..SpSee B::Concise for more information..IP "\(bu" 4Class::ISA, by Sean Burke, for reporting the search path for aclass's \s-1ISA\s0 tree, has been added..SpSee Class::ISA for more information..IP "\(bu" 4Cwd has now a split personality: if possible, an extension is used,(this will hopefully be both faster and more secure and robust) butif not possible, the familiar Perl library implementation is used.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -