| 1 | ------------- |
| 2 | Version 5.003 |
| 3 | ------------- |
| 4 | |
| 5 | ***> IMPORTANT NOTICE: <*** |
| 6 | The main reason for this release was to fix a security bug affecting |
| 7 | suidperl on some systems. If you build suidperl on your system, it |
| 8 | is strongly recommended that you replace any existing copies with |
| 9 | version 5.003 or later immediately. |
| 10 | |
| 11 | The changes in 5.003 have been held to a minimum, in the hope that this |
| 12 | will simplify installation and testing at sites which may be affected |
| 13 | by the security hole in suidperl. In brief, 5.003 does the following: |
| 14 | |
| 15 | - Plugs security hole in suidperl mechanism on affected systems |
| 16 | |
| 17 | - MakeMaker was also updated to version 5.34, and extension Makefile.PLs |
| 18 | were modified to match it. |
| 19 | |
| 20 | - The following hints files were updated: bsdos.sh, hpux.sh, linux.sh, |
| 21 | machten.sh, solaris_2.sh |
| 22 | |
| 23 | - A fix was added to installperl to insure that file permissions were |
| 24 | set correctly for the installed C header files. |
| 25 | |
| 26 | - t/op/stat.t was modified to work around MachTen's belief that /dev/null |
| 27 | is a terminal device. |
| 28 | |
| 29 | - Incorporation of Perl version information into the VMS' version of |
| 30 | config.h was changed to make it compatible with the older VAXC. |
| 31 | |
| 32 | - Minor fixes were made to VMS-specific C code, and the routine |
| 33 | VMS::Filespec::rmsexpand was added. |
| 34 | |
| 35 | ---------------- |
| 36 | Version 5.002_01 |
| 37 | ---------------- |
| 38 | |
| 39 | - The EMBED namespace changes are now used by default, in order to better |
| 40 | segregate Perl's C global symbols from those belonging to embedding |
| 41 | applications or to libraries. This makes it necessary to rebuild dynamic |
| 42 | extensions built under previous versions of Perl without the EMBED option. |
| 43 | The default use of EMBED can be overridden by placing -DNO_EMBED on the |
| 44 | cc command line. |
| 45 | |
| 46 | The EMBED change is the beginning of a general cleanup of C global |
| 47 | symbols used by Perl, so binary compatibility with previously |
| 48 | compiled dynamic extensions may be broken again in the next few |
| 49 | releases. |
| 50 | |
| 51 | - Several bugs in the core were fixed, including the following: |
| 52 | - made sure FILE * for -e temp file was closed only once |
| 53 | - improved form of single-statement macro definitions to keep |
| 54 | as many ccs as possible happy |
| 55 | - fixed file tests to insure that signed values were used when |
| 56 | computing differences between times. |
| 57 | - fixed toke.c so implicit loop isn't doubled when perl is |
| 58 | invoked with both the -p and -n switches |
| 59 | |
| 60 | - The new SUBVERSION number has been included in the default value for |
| 61 | architecture-specific library directories, so development and |
| 62 | production architecture-dependent libraries can coexist. |
| 63 | |
| 64 | - Two new magic variables, $^E and $^O, have been added. $^E contains the |
| 65 | OS-specific equivalent of $!. $^O contains the name of the operating |
| 66 | system, in order to make it easily available to Perl code whose behavior |
| 67 | differs according to its environment. The standard library files have |
| 68 | been converted to use $^O in preference to $Config{'osname'}. |
| 69 | |
| 70 | - A mechanism was added to allow listing of locally applied patches |
| 71 | in the output of perl -v. |
| 72 | |
| 73 | - Miscellaneous minor corrections and updates were made to the documentation. |
| 74 | |
| 75 | - Extensive updates were made to the OS/2 and VMS ports |
| 76 | |
| 77 | - The following hints file were updated: bsdos.sh, dynixptx.sh, |
| 78 | irix_6_2.sh, linux.sh, os2.sh |
| 79 | |
| 80 | - Several changes were made to standard library files: |
| 81 | - reduced use of English.pm and $`, $', and $& in library modules, |
| 82 | since these degrade module loading and evaluation of regular expressions, |
| 83 | respectively. |
| 84 | - File/Basename.pm: Added path separator to dirname('.') |
| 85 | - File/Copy.pm: Added support for VMS and OS/2 system-level copy |
| 86 | - MakeMaker updated to v5.26 |
| 87 | - Symbol.pm now accepts old (') and new (::) package delimiters |
| 88 | - Sys/Syslog.pm uses Sys::Hostname only when necessary |
| 89 | - chat2.pl picks up necessary constants from socket.ph |
| 90 | - syslog.pl: Corrected thinko 'Socket' --> 'Syslog' |
| 91 | - xsubpp updated to v1.935 |
| 92 | |
| 93 | |
| 94 | - The perlbug utility is now more cautious about sending mail, in order |
| 95 | to reduce the chance of accidentally send a bug report by giving the |
| 96 | wrong response to a prompt. |
| 97 | |
| 98 | - The -m switch has been added to perldoc, causing it to display the |
| 99 | Perl code in target file as well as any documentation. |
| 100 | |