Perl gait and post rate, The summarizer watches. Read it all below.
Ken Williams, who is going to release the Cwd module on CPAN, wants to backport it to perl 5.005. However, this involves replacing XSLoader, that it uses, by the older DynaLoader -- or, to use a backward compatible boilerplate -- or, ultimately, to release on CPAN XSLoader itself, as Michael Schwern suggested.
In fact, Michael even provided a small tarball of XSLoader, repackaged for CPAN. He also wrote tests for it and cleaned it up a bit.
While we're at it : Randal L. Schwartz reported that the version of the
base module on CPAN (in the Class-Fields distribution) was higher than the one currently included in perl 5.8.1.
Michael Schwern says that a backport of
fields must remain on CPAN. It's important to note that the CPAN and core versions of those modules are functionally equivalent, their only difference being purely internal. He added that Class::Field is a failure and should be left dying slowly. Nevertheless, he separated the CPAN version of
fields from Class::Fields, which is going to CPAN as
base-2.0. He also mentions that he's bored with those modules and would welcome someone to take over the CPAN version.
Mark-Jason Dominus wishes (bug #23614) that
next could support dynamic labels, specified via a variable. (
goto supports this.) Enache Adrian remarks that this isn't probably worth the performance penalty. Schwern quotes Larry.
Nicholas Clark posted the code of
spambench, a simple script aimed at benchmarking a perl interpreter against SpamAssassin and a known email corpus.
His results so far : copy-on-write doesn't seem to make a difference in speed (perhaps in memory usage ? there aren't memory statistics), and a perl interpreter compiled with ithread support is slower by 4/5%.
Mark-Jason Dominus proposed a patch to improve the performance of Pod::Parser. However, Marek Rouchal (who maintains Pod::Parser) rejected it, for reasons pertaining to the correctness of the algorithm : he wants the parse tree to contain no empty nodes and no consecutive text nodes. Marek also says that Pod::Simple is nowadays considered a better alternative to write pod parsers backends.
Martyn Pearce reports bug #23645 : tell() returns 0 after having opened a file in append mode with perl 5.8.x ; but perl 5.6.x returns the real file position. Andreas Koenig finds that the patch that changed the behaviour of tell() is a patch to the Linux compilation hints file, and indeed the bug disappears if perl is configured with
-Dd_stdstdio=define. Jarkko commited a fix, but labels it as probably wrong.
Tim Jenness released File::Temp 0.14 (last week, in fact).
Lukas Mai reported that the prototypes for shift() and pop() should be
;\@ instead of
\@. Rafael fixed this, and added a regression test for the prototypes of built-ins. (bug #23572.)
David Coppit reported (bug #23578) that the
delete_package() function provided by the Symbol module is sometimes so zealous that the deleted package can't be reloaded efficiently. Rafael explained this (and why it won't probably be fixed in a near future.)
Nicholas Clark filed a couple of bugs that were uncovered by valgrind (#23753, #23576). One of them involves matching something against a regular expression, and then introducing
$& at run-time via an
Tassilo von Parseval found a strange bug involving the scoping of @- and @+, used in a tied hash, accessed from the right-hand side of a substitution (bug #23624). But the workaround is even stranger.
This week's summary was written by Rafael Garcia-Suarez. Summaries are published weekly on http://use.perl.org/ and on a mailing list, which subscription address is firstname.lastname@example.org. Comments and corrections are welcome. Yes I know, I'm not good at haikus.