This Week on perl5-porters - 6-12 July 2008


Topics of Interest

my $@ - a proposal

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00140.html

Encode 2.25 released!

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00157.html

Dual-life and autodie

  pumpking input appreciated
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00135.html

Strictly no indirect object syntax

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00215.html

t/op/exec.t fails on Fedora

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00141.html

FiX segfault in serialized version objects

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00264.html

Perl histories back to 1995 in MarkMail

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00137.html

5.10.x Perl_op_clear PM_GETRE_SAFE still in CORE

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00139.html

Which test files need to use the watchdog() function?

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00156.html

Proposal for enhancement of Storable (2.18)

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00160.html

New probes

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00169.html

perl-5.10.0-4 -> perl-5.10.0-5 update appears to break DateTime

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00195.html

perl-5.10.0-4 -> perl-5.10.0-5 site_perl update needed

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00206.html

my $foo = "bar" if $baz;

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00219.html

Changes in m//m in 5.10

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00230.html

shift->(@_) doesn't do the same as &{+shift}

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00242.html

Perl Benchmark Suite

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00241.html

formats, and write.t's sensitivity

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00262.html

Data::Dumper patch

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00263.html

The assert()ions in sv_chop() and the passed-in pointer

  change 34138
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00277.html

perl cross compilation for at91sam9260

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00287.html

integer.pm - behaviour v documentation

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00298.html

Problem in Exporter

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00317.html


TODO of the week


Patches of Interest

test.pl fix

In the previous weeks it came to pass that Jerry D. Hedden started working on test.pl to give it an overhaul. The latest version made it into blead. Of great interest is a watchdog timer, that will allow tests that can stumble around in the dark to be killed after an appropriate amount of time.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00153.html

watchdog() some IO tests

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00255.html

threads::shared 1.25

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00257.html

B-Debug-1.11 - B::Flags CORE test fix

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00276.html

[perl5db.t should not load Term::ReadLine::Gnu

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00285.html

threads::shared 1.25

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00289.html

Correction to change 34138

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00310.html


New and old bugs from RT

Security of ARGV using 2-argument open - It's a feature (#2783)

Joshua ben Jore made a fine argument for axing the too-clever behaviour of open by ignoring the shellish nature of such characters as <, > and |. This was judged as being a little to backwards incompatible in 5.10, but could be considered for 5.12.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00295.html

Storable seg faults under perl 5.8.0 solaris, maximal 64bit (#18049)

Bram wanted to know if the problem was caused by defining use64bitall, since the other combinations smoke cleanly for the Solaris CPAN testers.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00128.html

This problem seems to be fixed and a small patch for B::Xref (#18306)

Renée Bäcker believes this is fixed.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00197.html

Bug fix in malloc.c (#50856)

Mark Noyes filled in details about this problem, where it transpires that different parts of a program are calling Perl's malloc and the underlying libc malloc. It nearly works, except for a minor detail regarding the rounding-up alignment of the different source blocks.

  surprised it works at all
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00312.html

Feature: regexp modifier to disable interpolation like m'' (#54702)

Yves Orton grudgingly admitted that it adding a modifier to a pattern, such as /$foo/d, to suppress interpolation, is doable. In which case the above would be interpreted as an end-of-line followed by literal 'foo'.

  but would it help
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00231.html

Panic in regex processing (unknown regstclass 0) (#55466)

Yves Orton suggested if that someone could isolate the regular expression in the Net::IP test suite that was giving 5.10 grief, then he would take a look and see if he could fix it.

  yves helps those that help themselves
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00229.html

'once' warnings from xs modules in perl 5.10.0 (#55550)

Rafaël Garcia-Suarez didn't like Chia-liang Kao's idea of making DynaLoader load warnings and instead suggested a GV_ADDMULTI manoeuvre.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00186.html

overloading and formats (#55668)

Nicholas Clark demonstrated the interaction between formats and variables (the former consume the latter) and suggested that any attempt to introduce string overloading into the picture was destined to end in tears.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00261.html

Perl 5.10 breaks \N{} in regex interpolated inside regex (with charnames) (#56444)

YVes Orton gave the rationale behind the change (speed) that caused the above failure to occur. That said, he had no idea what the underlying cause of the problem was, and suggested someone fire up a debugger and see why charnames was being descoped.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00161.html

m/a{1,0}/ compiles but doesn't match a literal string (#56526)

Yves Orton confirmed that Michael Cartmell's reasoning was sound, as was the patch. As such, someone should go ahead and apply it.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00228.html

pad_alloc and fold_constants are not members of public API (#56536)

Dmitry Karasik wanted to build B::Generate on MSWin32, but the above two API functions need to go public. Rafaël agreed to letting fold_constants out into the light, but declined pad_alloc, as it's too low-level.

  contents may settle in transit
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00185.html

5.10.0 crash on serialised v-strings (#56606)

John Peacock got to work to fix Data::Dumper breakage when serialising with version objects. Due to the incestuous nature of CPAN.pm, the core and the duality of version.pm, he faced considerable difficulty in getting the change to be heeded. In the end he tracked down the CPAN authors who use Data::Dumper to serialise version numbers (in META.yml files) and suggested that an upgrade of their own would be a wise course of action.

Unfortunately no-one could think of a better solution.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00178.html

Math::BigInt gives completely (bogus results) when Math::BigInt::GMP is used (#56608)

Marc Lehmann suggested there was a problem; Bram and Tels wanted to know what version he was using before jumping to conclusions. Tels was pretty sure that the symptoms pointed to a signed/unsigned mismatch.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00127.html

Perl 5.10.0 double-free bug with Regular Expressions (#56610)

Andris Kalnozols pointed to a new bug in 5.10 regarding tied hashes. Chris Madsen slimmed the test case down considerably.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00126.html

PerlIO resource leaks on open() and then :pop in :unix and :stdio (#56644)

Goro Fuji nailed down some leaks in PerlIO with some patches and tests, attributing the problems to (ahem) "a bad design of PerlIO virtual table".

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00147.html

using $1 evaluates strangely in list context when combined with ?: operator (#56674)

Not a bug when you can describe the reason behind the behaviour, as chromatic did, with some additional material from Aristotle Pagaltzis.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00162.html

Some bugs in Perl regexp (core Perl issues) (#56690, #56738)

Serge discovered that print "ab" =~ /^a?(?=b)b/ prints nothing, instead of 1, which is rather distressing. A couple of variations on the theme also produced bad results. Abigail could do little more than write some TODO tests that Steve Peters applied.

He also found another bug where $^N and $1 disagreed about what had just been matched. Yves Orton pointed out that as the match used a quantified capture buffer (as in /(foo){2}/), the result is pretty much undefined in the first place (and fixing it would be very difficult).

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00189.html
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00200.html

5.10.0 Attribute::Handlers segmentation fault (#56766)

Naquad found a problem, Vincent Pit whipped up a quick patch to fix the problem (which was in fact in Data::Dumper). Now waiting for application.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00217.html

\w with use locale does not match Russian letters (#56820)

Peter found a problem on Gentoo, not being able to match Russian characters with \w after setting the locale. On the other hand it worked perfectly on FreeBSD.

  here's a nickel, kid
  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00251.html

Perl-5.8.8 compilation on AIX 5.1 (#56826)

Kawaljeet Kaur had problems building perl on AIX, and was unnerved by all the "Note (probably harmless): No library found for -lfoo" messages. Unfortunately, two tests failed in the test suite, which was the really interesting bit, except we didn't get to find out which ones they were.

Andy Dougherty amended the documentation to minimise this possibility for confusion, and earns a gold star for achieving less documentation at the end of the process.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00250.html

No test coverage for the DO_UTF8() branch of case FF_CHECKCHOP in pp_formline (#56834)

Nicholas Clark found some code that he thought was probably incorrect and certainly inefficient, but was loathe to make the changes without a regression test that actually exercised the code path in question.

He dropped a few hints as to how one might write a test that would hit the right branch.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00259.html

Taint bug with \G and pos() on hash entries (#56842)

Matt Sergeant found another bug where pos gets lost on the value of a hash key... when taint mode is active.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00258.html

can't use v[0-9]+ as label (vstring) (#56880)

Trying to drop a v1: as target for a next and its ilk will cause a syntax error (on 5.8 through 5.11).

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00271.html

regex utf8 "uninitialized value" error (#56902)

Ben Bullock related the tale of a regular expression generating spurious "uninitialized value" warnings according to the current setting of UTF-8.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00274.html

DBI memory leak (#56908)

lav identified a leak in DBI that occurs in 5.10 but not in 5.8. Since DBI plays fast and loose with the internals for speed, and the internals were heavily reworked during the 5.9 development track, it's really not that surprising.

And probably something that needs to be fixed in DBI rather than the core.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00283.html

Perl5 Bug Summary

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00278.html
  http://rt.perl.org/rt3/NoAuth/perl5/Overview.html


This is the BBC


New Core Modules


In Brief

Last week's summary

There were no summaries for the two previous weeks as Real Life imposed its own constraints in a big way. I feel very guilty about this, please accept my sincere apologies.

  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00318.html

About this summary

This summary was written by David Landgren.

Weekly summaries are published on http://use.perl.org/ and posted on a mailing list, (subscription: perl5-summary-subscribe@perl.org). The archive is at http://dev.perl.org/perl5/list-summaries/. Corrections and comments are welcome.

If you found this summary useful, please consider contributing to the Perl Foundation or attending a YAPC to help support the development of Perl.