=head1 This Week on perl5-porters - 6-12 July 2008 =head1 Topics of Interest =head2 C - a proposal http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00140.html =head2 Encode 2.25 released! http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00157.html =head2 Dual-life and autodie pumpking input appreciated http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00135.html =head2 Strictly no indirect object syntax http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00215.html =head2 F fails on Fedora http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00141.html =head2 FiX segfault in serialized version objects http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00264.html =head2 Perl histories back to 1995 in MarkMail http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00137.html =head2 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 =head2 Which test files need to use the watchdog() function? http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00156.html =head2 Proposal for enhancement of Storable (2.18) http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00160.html =head2 New probes http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00169.html =head2 perl-5.10.0-4 -E perl-5.10.0-5 update appears to break DateTime http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00195.html =head2 perl-5.10.0-4 -E perl-5.10.0-5 site_perl update needed http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00206.html =head2 C http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00219.html =head2 Changes in C in 5.10 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00230.html =head2 C<< shift-E(@_) >> doesn't do the same as C<&{+shift}> http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00242.html =head2 Perl Benchmark Suite http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00241.html =head2 formats, and C's sensitivity http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00262.html =head2 C patch http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00263.html =head2 The Cions in C and the passed-in pointer change 34138 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00277.html =head2 perl cross compilation for at91sam9260 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00287.html =head2 C - behaviour v documentation http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00298.html =head2 Problem in C http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00317.html =head1 TODO of the week =head1 Patches of Interest =head2 F fix In the previous weeks it came to pass that Jerry D. Hedden started working on F 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 =head2 watchdog() some IO tests http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00255.html =head2 threads::shared 1.25 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00257.html =head2 B-Debug-1.11 - B::Flags CORE test fix http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00276.html =head2 [perl5db.t should not load Term::ReadLine::Gnu http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00285.html =head2 threads::shared 1.25 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00289.html =head2 Correction to change 34138 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00310.html =head1 New and old bugs from RT =head2 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 C by ignoring the shellish nature of such characters as C<< < >>, C<< > >> and C<|>. 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 =head2 Storable seg faults under perl 5.8.0 solaris, maximal 64bit (#18049) Bram wanted to know if the problem was caused by defining C, 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 =head2 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 =head2 Bug fix in C (#50856) Mark Noyes filled in details about this problem, where it transpires that different parts of a program are calling Perl's C and the underlying libc C. 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 =head2 Feature: regexp modifier to disable interpolation like m'' (#54702) Yves Orton grudgingly admitted that it adding a modifier to a pattern, such as C, 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 =head2 Panic in regex processing (unknown regstclass 0) (#55466) Yves Orton suggested if that someone could isolate the regular expression in the C 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 =head2 '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 C load C and instead suggested a GV_ADDMULTI manoeuvre. http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00186.html =head2 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 =head2 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 C was being descoped. http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-07/msg00161.html =head2 C 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 =head2 C and C are not members of public API (#56536) Dmitry Karasik wanted to build C on MSWin32, but the above two API functions need to go public. Rafaël agreed to letting C out into the light, but declined C, 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 =head2 5.10.0 crash on serialised v-strings (#56606) John Peacock got to work to fix C breakage when serialising with version objects. Due to the incestuous nature of C, the core and the duality of C, he faced considerable difficulty in getting the change to be heeded. In the end he tracked down the CPAN authors who use C to serialise version numbers (in F 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 =head2 C gives completely (bogus results) when C 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 =head2 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 =head2 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 =head2 using C<$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 =head2 Some bugs in Perl regexp (core Perl issues) (#56690, #56738) Serge discovered that C 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 C<$^N> and C<$1> disagreed about what had just been matched. Yves Orton pointed out that as the match used a quantified capture buffer (as in C), 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 =head2 5.10.0 C 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 =head2 \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 =head2 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 =head2 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 =head2 Taint bug with C<\G> and C on hash entries (#56842) Matt Sergeant found another bug where C 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 =head2 can't use v[0-9]+ as label (vstring) (#56880) Trying to drop a C as target for a C 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 =head2 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 =head2 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 =head2 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 =head1 This is the BBC =over 4 =item * =back =head1 New Core Modules =over 4 =item * =back =head1 In Brief =head2 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 =head2 About this summary This summary was written by David Landgren. Weekly summaries are published on F and posted on a mailing list, (subscription: F). The archive is at F. 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.