This Week on perl5-porters (3-9 November 2003)

rafael on 2003-11-10T20:06:00

This week was undoubtedly a maintenance-oriented week, as it has seen the release of perl 5.8.2, and of perl 5.6.2 RC1. But of course and as usual this wasn't the only topic on the always active p5p list. Read below for the full details.

5.8.2

After a final release candidate 2, Nicholas Clark uploaded the final perl 5.8.2 to CPAN. Nicholas plans to release maintenance tarballs regularly, the next one being scheduled for new years eve.

    http://xrl.us/3gf 

Some build problems are reported, though : apparently perl 5.8.1 and 5.8.2 have problems on HP-UX 11, on AIX 5 with gcc 3, and on Solaris 9 with gcc and 64 bit integers.

5.6.2-RC1

But the cycle of maintenance releases is not finished yet. Rafael released the RC1 of perl 5.6.2. See the announcement :

    http://xrl.us/3gx 

Some problems are still to be fixed, notably (it appears) on Mac OS X.

More on UNIVERSAL

Michael Jacob has some ideas about improvements that could be made to the UNIVERSAL class, root of all Perl classes. His proposals are that can() ceases (in some future release) to search methods in UNIVERSAL (except when UNIVERSAL is specifically mentioned in @ISA), and implement smart versions of AUTOLOAD(), DESTROY(), and import() in UNIVERSAL.

Michael Schwern argues that this functionality should go in an UNIVERSAL::AUTOLOAD module on CPAN, but that it's too dangerous to be put straight into UNIVERSAL, even after a deprecation cycle.

    http://xrl.us/3gy 

MakeMaker woes

Michael Schwern released ExtUtils::MakeMaker 6.18, 6.19 and 6.20. (6.19 fixed a test glitch, 6.20 contained mostly Windows and Cygwin fixes.) It was discovered by upgrading bleadperl to the latest MakeMakers that the core module SDBM_File was making too many assumptions about MakeMaker's internals. This was fixed, but the generated makefiles still don't work with non-GNU makes.

    http://xrl.us/3b5 

(To be noted : 5.8.2 and 5.6.2-RC1 still ship with MakeMaker 6.17.)

Relocatable tests and installation

Ilya Zakharevich proposes a patch to make core tests relocatable, so that they can be run against an installed perl. His method is to add an environment variables that prevents those tests to adjust @INC to their needs.

    http://xrl.us/3lq 

Ilya also provided several patches to fix various flaws in the installation process of perl ; some of them are specific to OS/2. The last one proposes to add to make install a PREFIX=/some/dir argument. Some discussion follows, about how this PREFIX differs from the existing DESTDIR, and what are the actual usages for those flags.

    http://xrl.us/3lo 

Blocking and non-blocking reads

Stas Bekman asks about which read() APIs provided by perl are blocking, and which ones are not. Mark-Jason Dominus explains that 'blocking' and 'non-blocking' refer to the behavior of 'read' on certain file descriptors when there is *no* data available. They're not a property of the system call, but of the file descriptor. Dan Sugalski and Tom Christiansen provide some more insight.

    http://xrl.us/3gh 

In Brief

Brian Ingerson wins the prize of the funniest mail of the week.

    http://xrl.us/3gi 

Is the perltoc manpage useful ?

    http://xrl.us/3gj 

Stas Bekman asks also whether the hash rehashing scheme in perl 5.10 will be the 5.8.1 one or the 5.8.2 one.

    http://xrl.us/3gk 

Stas also reports (bug #24404) that it's possible to write require "dir" where dir is a directory. require() should check that its argument isn't a directory.

Alan Burlison asks for the plans on maintaining binary compatibility in perl 5.8.x where x > 2. Nicholas answers that he wants to keep future maintenance versions compatible.

    http://xrl.us/3gm 

Ilya Zakharevich provided a patch to speed up sprintf().

Scott Roy reports that calling exists() on a shared hash for a non-existent element may crash perl (bug #24407). Dave Mitchell provides a fix.

About this summary

This summary was once again written by your usual summarizer and 5.6.2 pumpking, Rafael Garcia-Suarez. Summaries appear weekly on http://use.perl.org/ and on a mailing list, which subscription address is perl5-summary-subscribe@perl.org . Corrections and comments are welcome.