This week was a rather interesting week among the Perl 5 porters. Read about pattern matching extensions, CPAN distribution issues, and various bugs and problems.
Yitzchak Scott-Thoennes proposed a new flag,/w, to modify the return
value of the pattern match operator in list context. Basically it prepends
the value of $& to the list of returned values ($1..$n).
Rafael Garcia-Suarez and Merijn Brand asked about the implied constructs
qr//w and/(?w)/ : these shouldn't be allowed since/w affects
the return value of the match, not the pattern itself.
Tim Conrow pointed out that/w conflicts with the Perl 6 switch of the
same name. Jos Boumans proposed/r instead. A new version of the patch
is in the works.
http://xrl.us/e9v
Nicholas Clark forwards to P5P an idea of Simon Wistow : to release a
dummy warnings module to CPAN, so that using lexical warnings in a
module doesn't also mandate at least perl 5.6.0. Stas Bekman then proposes
to create a Perl-Backport distribution, aimed at installing various
back-compatibility stubs based on the current perl's version. As he says,
CPAN module authors just need to include Perl::Backport in their
PREREQ_PM and it'll do the rest of the job.
http://xrl.us/e9w
Stas Bekman made a proposal to help the CPAN indexer to distinguish between the different distributions that provide a specific package, and to decide which one should be installed by CPAN.pm / CPANPLUS. His idea is to introduce a new variable, say $CPAN_MASTER_PACKAGE, to hold the name of the master distribution containing a module. An alternative option would be to include a file BUNDLED in the distribution, to list all packages that are to be ignored by the indexer.
Andreas Koenig points out that the contents of the inc/ subdirectories
of CPAN distributions are currently ignored by the indexer. For example,
only-0.26 and PAR-0.66 come with Autrijus Tang's Module::Install
distributed under inc/. Autrijus notes that the inc name is not yet
definitive and should not be relied upon. He also liked Stas' BUNDLED file
idea and suggested that this file could use the MANIFEST.SKIP syntax (i.e.
^inc/ to excludes files from inc/).
http://xrl.us/e9x
John L. Allen has problems compiling Perl 5.8.0 on AIX with long doubles with the latest version of IBM's compiler (vac). Apparently Configure isn't getting right the modfl support. He's working on this with Merijn.
http://xrl.us/e9z
Doug Thayer reports a case of segfault, using GDBM in a threaded program (bug #21699). Arthur Bergman says that the fix is probably to make GDBM thread aware.
http://xrl.us/e92
Jean Forget reminds us that he put on CPAN an alpha version of an enhanced
diagnostics module, containing bug fixes and support for
internationalization. Wolfgang Laun announces that he'll have a look at
it.
http://xrl.us/e93
Michael G Schwern announced a new alpha release of MakeMaker (version 6.06_03, then 6.06_04). Testers welcome.
http://xrl.us/e94
He also reported bug #21742 : encountering a require Foo::Bar statement
invoked in void context and from an eval(STRING) statement, perl 5.8.0
isn't able to compute correctly the module's return value, because it
provides a wrong context for it. (The correct context to be provided would
be scalar context, and perl actually provides void context in this case.)
http://xrl.us/e95
Juerd reports bug #21744 about B::Deparse. A code snippet is worth a dozen
words
$ perl -MO=Deparse -e'print "${foo}::bar"'
print "$foo::bar";
Enache Adrian (which I haven't already mentioned, although he posted a load of bug fixes this week, as usual) provides a fix.
http://xrl.us/e96
This summary was brought to you by Rafael Garcia-Suarez. Weekly summaries are available on http://use.perl.org/ and/or via a mailing list, which subscription address is perl5-summary-subscribe@perl.org . Comments, corrections, additions, and suggestions are welcome.
Special thanks to the metamark.net folks for providing this short url service, and to Iain Truskett for WWW::Shorten.