This is the mail archive of the
mailing list for the Cygwin project.
[ANNOUNCEMENT] Updated: perl-5.8.0-1
- From: "Gerrit P. Haase" <gp at familiehaase dot de>
- To: cygwin at cygwin dot com
- Date: Tue, 30 Jul 2002 06:43:15 -0400 (EDT)
- Subject: [ANNOUNCEMENT] Updated: perl-5.8.0-1
- Reply-to: cygwin at cygwin dot com
perl-5.8.0-1 has been uploaded to sourceware
-- it should be on the mirrors soon.
Please see 'NOTES' below.
To update your installation, click on the "Install Cygwin now" link on
the http://cygwin.com/ web page. This downloads setup.exe to your
system. Save it and run setup, answer the questions and pick up
'perl' from the 'Interpreters' category. You need to check the 'Exp'
Previous perl installed with setup.exe will be removed, but your
custom modules won't be removed. See 'Modules' and 'Different Perl
versions' section in the 'NOTES' below for details about possibilities
of custom installation.
Note that downloads from sources.redhat.com (aka cygwin.com) aren't
allowed due to bandwidth limitations. This means that you will need
to find a mirror which has this update.
These mirrors already got the package, the others will probably have
the latest version of this package fairly soon:
In the US,
are reliable high bandwidth connection.
If you want to make a point or ask a question the Cygwin mailing
list is the appropriate place.
CYGWIN-ANNOUNCE UNSUBSCRIBE INFO:
To unsubscribe to the cygwin-announce mailing list, look at the
"List-Unsubscribe: " tag in the email header of this message. Send
email to the address specified there. It will be in the format:
THIS IS A REAL NEW PERL RELEASE THAT IS BINARY INCOMPATIBLE WITH ANY
PREVIOUS PERL RELEASE. THIS MEANS THAT YOUR OLD EXTENSIONS (.xs code,
those Perl modules requiring a C compiler) WILL NOT WORK AND WILL HAVE
TO BE RECOMPILED. (Pure Perl modules should continue working.)
Since this is the first release of 'perl-5.8.0' on Cygwin, it is
tagged as 'Test'. This means you need to choose the 'Exp' radio
button to force setup.exe to do the install. Perl is in the category
'Interpreters'. setup.exe will remove perl-5.6.1 if you install
perl-5.8.0. To install perl-5.8.0 without removing perl-5.6.1 please
see 'Different Perl versions' below.
To get a summary of all the modules you installed for perl-5.6.1 you
can use the CPAN module (before you install perl-5.8.0), just start it
as usual ($ /usr/bin/cpan) and type in the CPAN shell:
to get a snapshot of 'your own' perl installation.
To reinstall all the modules (after installing perl-5.8.0) type in the
new CPAN shell:
cpan> install Bundle::Snapshot_2002_07_29_00
Different Perl versions:
It is possible to use more than one perl. To achieve this you cannot
use setup.exe since it will remove perl-5.6.1 before it installs
perl-5.8.0, so you'll need to install perl-5.8.0 manually.
To do this, copy the perl-5.8.0-1 tarball to /path/to/somewhere and
after 'cd' to '/' type in a Cygwin shell:
$ tar xjf /path/to/somewhere/perl-5.8.0-1.tar.bz2
This will overwrite perl.exe, other executables and the scripts, but
perl5.6.1.exe, libperl5_6_1.dll and the modules in
/usr/lib/perl5/5.6.1 will stay.
>From your scripts you call the different perl versions now with
perl5.6.1 or perl5.8.0, /usr/bin/perl will be version 5.8.0.
Some of my scripts stopped to work after upgrading. E.g. a wrapper
calls a perl script that pipes mailtext to ssmtp. To make use of this
script now, I needed to add 'export PERLIO=perlio' to the wrapper
which calls the script. (See also the /usr/bin/cpan script which is a
shell script now)
>From the official 'Perl 5.8.0 Release Announcement'
- New IO Implementation:
the new PerlIO implementation is both a portable stdio implementation
(at the source code level) and a flexible new framework for richer
- Better Unicode Support:
Unicode support has been much enhanced since 5.6, at all levels:
- now supports Unicode 3.2.0 (5.6.1 supports 3.0.1)
- at the language (and internals) level Unicode support is
now more ubiquitous and robust
- regular expressions now work with Unicode
- support for non-Latin encodings (such as the various
Chinese/Japanese/Korean encodings) through the Encode module
- Better Numeric Accuracy:
previous Perls relied on vendors' string-to-number and back
routines which in some cases proved to be too much trust
leading to nonportable and wrong behaviours
- 64-bit support:
64-bit support is now considered to be mature -- if your platform
supports 64-bit integers or address space, you can compile Perl to
- Safe Signals:
in previous versions of Perl signals could corrupt Perl's internal
- Many New Modules:
Digest::MD5, File::Temp, Filter::Simple, libnet, List::Util,
Memoize, MIME::Base64, Scalar::Util, Storable, Switch,
Test::More, Test::Simple, Text::Balanced, Tie::File, ...
- BINARY INCOMPATIBLE:
mainly because of the PerlIO introduction, Perl 5.8 is not
binary compatible with any earlier Perl release, XS MODULES
WILL HAVE TO BE RECOMPILED!
- Unicode Model Changed (no more "use utf8", almost)
In Perl 5.6 "Unicodeness" was lexically scoped to the operations;
in Perl 5.8 "Unicodeness" is bound to the data. The only remaining
use of "use utf8" is when the Perl script itself is written in the
UTF-8 encoding of Unicode.
As always, you should conduct an appropriate level of testing before
using any new product in your production environment.
Gerrit P. Haase, 2002-07-30
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html