perl 5.8.0 RC 2 Released

pudge on 2002-06-21T16:49:46

Perl 5.8.0 Release Candidate 2 is now available. This is a release candidate, and is not recommended for use in a production environment, but downloading and testing is strongly encouraged. Read on for the announcement, and also read perldelta to see what's changed.


Perl 5.8.0 Release Candidate 2

The Perl 5 developer team is pleased to announce the Release Candidate 2 (RC2) of Perl 5.8.0.

The RC2 includes changes made by the Perl 5 development team since RC1 (released 2002-06-01) If you had problems with RC1, please retry now. If you hadn't, please check that we didn't break anything.

Please test extensively.

Your help in testing the upcoming perl 5.8.0 is much appreciated.

This is a source code release, not a binary release. You will need a C development environment.

Please note that Perl 5.8.0 is a major new release of Perl containing many new features, enhancements to existing features and bug fixes. This version is ``Release Candidate 2''; the purpose of this version is to permit and encourage the Perl community to conduct extensive testing and to report problems so that we, and the owners of affected Perl packages, have an opportunity to correct them.

Because the process of testing the vast quantity of Perl software will take time, and because issues uncovered by this testing may result in further changes or corrections to Perl 5.8.0 and the various Perl packages, WE DO NOT RECOMMEND USING RELEASE CANDIDATE 2 IN A PRODUCTION ENVIRONMENT.

Please wait for the final version of Perl 5.8.0 for production use. As always, you should conduct an appropriate level of testing before using any new product in your production environment.

As specified in the licenses for Perl (see the files named Artistic or Copying), THIS PACKAGE IS PROVIDED WITH ABSOLUTELY NO WARRANTY.

New Release Candidates will come out about every few weeks until we are satisfied with the results, at which point the final 5.8.0 will be released.


Where To Get It

The 5.8.0 RC2 is now available at

        http://mirrors.kernel.org/cpan/src/perl-5.8.0-RC2.tgz
        http://cpan.valueclick.com/src/perl-5.8.0-RC2.tgz
        ftp://ftp.leo.org/pub/CPAN/src/perl-5.8.0-RC2.tgz
        ftp://ftp.funet.fi/pub/CPAN/src/perl-5.8.0-RC2.tgz 

and as the CPAN mirrors catch up, in the src/ subdirectory of your nearest friendly CPAN mirror.

The size of the file is 10975492 bytes and the MD5 checksum for the file is

        8921b99874bf4b1daba7daba3ff70e4a  perl-5.8.0-RC2.tgz

This release should work in all UNIX/Linux and Microsoft environments,
and in other environments which have POSIX/UNIX interfaces, such as
BeOS, Cygwin, MPE/iX, NetWare, OS/2, QNX, VMS, VOS, and z/OS,
and the appropriate C compilation environment.

Mac OS Classic port of 5.8.0 is available separately, follow http://dev.macperl.org/


Why To Get It

For the list of changes in 5.8.0 see the pod/perldelta.pod, available separately online at

        http://mirrors.kernel.org/cpan/doc/perldelta.pod
        http://cpan.valueclick.com/doc/perldelta.pod
        ftp://ftp.leo.org/pub/CPAN/doc/perldelta.pod
        ftp://ftp.funet.fi/pub/CPAN/doc/perldelta.pod 

(and again, eventually at all CPAN mirrors-- note, though, that these URLs are not permanent, they will be removed when the final 5.8.0 is released)

The .tgz file will unpack into a directory called ``perl-5.8.0-RC2''.


How To Do It

You will configure, build, and test Perl. Below is a short summary, for the full story read the ``INSTALL'' file.

Configuring

If you are in a UNIX-like system, you can setup Perl for compilation by changing into the ``perl-5.8.0-RC2'' directory and issuing the following command:

        sh Configure -des

This will simply select all the defaults for your system, INCLUDING defaulting to install in the usual location for production software. (So don't run make install if you run Configure this way!)

If you are not in a UNIX-like system (say, Win32), please read the ``INSTALL'' file and any possible platform specific README files for further instructions, and skip the parts below that don't apply to your platform.

If you want to go through Configure interactively (for example to change the default installation directories), do just

        sh Configure

Building

To build Perl issue the command

        make all

Note that the build times can vary considerably. Perl 5.8.0 is about twice the size of 5.6.1, and some source code files are quite large, so your compiler might have hard time processing them. On a fast modern system with lots of CPU and memory the build can be a matter of ten minutes, but on slower/older/more heavily loaded systems it can take up to eight hours, while half an hour to an hour being common.

Testing

After the build has finished, it's time to test the build.

        make test

Again, testing times vary a lot. Perl 5.8.0 has more than five times the tests of Perl 5.6.1. Fifteen minutes to half an hour is quite normal, but a slow system may easily take an hour or more. If all tests are successful, ``make test'' will say ``All tests successful'' (unsurprisingly).

If all tests are not successful, you may get a more detailed report by changing to the t/ subdirectory and running the ``harness'' script, something like this

        cd t ./perl harness

You may need to set up your dynamic library path before that (the final message of ``make test'' should tell all the needed details).

The more detailed report will be very useful when your report problems. Knowing your exact configuration is essential, too: usually running the ``myconfig'' script from the build directory produces this information.

Note that some systems or configurations have known problems, see perldelta for details, no need to report them.

In case you still see errors, please document them via the perlbug system, as detailed in the ``INSTALL'' file, section ``Reporting Problems''.

Finally note that if you happen to have a ``less common'' platform, like some of the rarer UNIXes, or something even more exotic, we will be glad to hear even of successes, not just about possible problems.

Installing

Once you are happy with the test results of Perl itself (or you are just feeling extraordinarily brave), you may consider installing it.

The Perl development team has tried to guarantee that popular Perl applications like CGI, LWP, mod_perl and DBI/DBD work with 5.8.0. Note ``work'', not necessarily ``work without warnings'': for example DBD::Oracle works, but during compilation and testing you may see various warnings. Also in some cases not all the functionality of the modules may be available (yet).

However...

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.)

INSTALLING THIS PERL RELEASE WILL OVERWRITE YOUR CURRENT PERL RELEASE. (For example, /usr/bin/perl will become Perl 5.8.0.)

DO NOT INSTALL THIS INTO PRODUCTION USE UNLESS YOU REALLY MEAN IT.

If you still feel like installing this, you can do so by ``make install''.

If you want to install this, but want to install it into some less dangerous place (and not overwrite your current installation), do the following

        make realclean
        sh Configure -des -Dprefix=/test/perl580 -Uinstallusrbinperl
        make all
        make test

and then the ``make install''. The -Dprefix will place the Perl installation at the said directory (the Perl executable will be /test/perl580/bin/perl), and the -Uinstallusrbinperl will avoid overwriting /usr/bin/perl with a copy of the Perl 5.8.0 executable.


Testing The Perl Installation

You should test both your own code, and other code that you use.

Testing Your Own Code

Test your own code with perl 5.8.0, but in case of surprises read the perldelta.pod carefully before judging something as a bug. In some cases the behaviour of Perl has changed.

Testing Perl Modules

You should try reinstalling your favourite CPAN modules to guarantee that they will continue working under Perl 5.8.

Note that if you find some module either failing its tests or you see the tests emitting warning messages, please first and foremost report these problems to the author of the module. Advise him/her about the impending 5.8.0 release and where to get the RC2 (you might for example point the author to this very message). Since there are hundreds of modules available, the Perl 5 developer team is not qualified to be experts on all of them; it is much faster if the module author resolves any problems.

In some cases you may also consider contacting some mailing lists to ask for help (and to spread awareness of the upcoming 5.8.0), for example if your operating system or the modules have mailing lists of their own.

That's it.


AUTHOR

Jarkko Hietaniemi on behalf of the Perl 5 developer team