This (unfinished) Week on perl5-porters - 19-25 June 2006
"I estimate that it would take approximately 2000 CPU years to smoke
all of CPAN on a reasonable set of platforms." -- Adam Kennedy, 2000
light years from home.
Topics of Interest
[summariser's note: the week was too busy for me to spend the required
time to bring the summary to a close, so here's the best I could do.
Regretfully, I am unable to summarise Nicholas Clark's excellent
follow-ups to the Perl 5 advocacy thread that was kicked off the week
before. Interested readers are invited to dive back into the thread to
chase them down.]
Once upon a time
http://xrl.us/nnuy
Bringing "Win32API::File" into the core
This was in some ways fall-out from the advocacy thread last week. By
bringing this module into core, it would ease installing CPAN modules
on the new non-ActiveState Windows-based Perl distributions that are
coming to light (that is, distributions that don't use ActiveState's
"ppm" installer but instead use source tarballs directly from CPAN).
http://xrl.us/nump
Expressions of interest in regular expressions
Dave Mitchell reported that he reworked the "TRIE" regop to work with
the new state stack mechanism, thereby removing more recursion from
the regular expression engine. Yves Orton was impressed that Dave
taken Yves's code in his stride, and announced that he was planning to
introduce another regop in the future for other kinds of tries.
Going cursive
http://xrl.us/numq
Yves Orton followed up on a question Tels asked last week, about
benchmarking regular expression performance
A fair fight
http://xrl.us/numr
"warn"ing at "exit" if detached threads still running
It used to be that if a thread was still running at "exit" time, a
warning was generated. So a patch was written to suppress it. Jerry D.
Hedden questioned the rationale, pointing out that someone, somewhere,
might find this useful sometime.
He thought that a nicer way of dealing with this would be via "no
warnings 'threads'", except that it doesn't work. Rafael Garcia-Suarez
explained what hoops one would have to jump through in the C source to
do so. Jerry noted that the different functions Rafael cite are not
documented, and wanted to know what the differences were between them.
Rafael explained the differences, and suggested looking through the
source for a sample of uses.
A fair warning
http://xrl.us/nums
Thread hook not called on "exit"
In other threads news, Jerry also discovered how a small thread that
does nothing but "exit" will not call the "PL_threadhook" handler and
wondered what to do about it. Jan Dubois thought that the best thing
to do would be to put the thread running code in a
"setjmp"/"longjmp"-style wrapper.
http://xrl.us/numt
Calling "exit" from a thread
http://xrl.us/numu
Can't suppress 'treads still running' warning
http://xrl.us/numv
threads 1.33
http://xrl.us/numw
threads 1.33 (revised)
http://xrl.us/numx
What about CPAN smoke?
Tom Horsley kicked off a thread about testing CPAN.
http://xrl.us/numy
Patches of Interest
IO::Compress::* 2.000_13
First steps in implementing the zip64 algorithm in Perl. As there is
no real reference implementation, and the specs are vague in places,
Paul Marquess kicked this out the door to see whether it flies or
smokes.
The 64 bit question
http://xrl.us/numz
Localizing temporary variables
Andy Lester pulled some variables down into tighter scopes in
regexec.c, in an attempt to make it easier to read and follow.
Bedtime reading
http://xrl.us/num2
perlhack.pod
A sensible improvement to perlhack.pod from Dr. Ruud.
http://xrl.us/num3
Watching the smoke signals
A couple of smokes drew some comments.
Smoke [5.9.4] 28402 FAIL(F) MSWin32 WinXP/.Net SP2 (x86/2 cpu)
http://xrl.us/num4
Smoke [5.9.4] 28410 FAIL(Fm) MSWin32 WinXP/.Net SP2 (x86/2 cpu)
http://xrl.us/num5
New and old bugs from RT
Memory leak occurs when an "eval" statement exits by a signal (#38854)
Dominic Dunlop followed up on this April bug with some cogent analysis
that pinned the blame on calling "die()" within a signal handler, but
lacked the time to dig more deeply into the problem.
http://xrl.us/num6
Bug in toke.c ("s//#/e") (#39365)
Rafael applied bcarter's patch to fix this problem, and added a
regression test to make sure it never comes back.
http://xrl.us/num7
Problem on installing "DBI" module (very Urgent) (#39527)
Dominic and Yves went the extra mile to help solve this problem, even
though it had nothing to do with p5p's charter.
http://xrl.us/num8
"*** glibc detected *** free(): invalid pointer" from "Perl_mg_free"
(#39528)
Chris at financial was having a problem (like a segfault) with the
"CentOS" packages of "apache", "mod_perl" and "perl" and asked for
help. Nicholas regretted to announce that he didn't have the faintest
idea what was happening, and suggested either trying to reproduce the
problem using only core modules, or asking "CentOS" for support.
http://xrl.us/num9
"printf": bad formatting of hexadecimal conversion of binary string
using vector flag (#39530)
Sadahiro Tomoyuki and Dominic Dunlop raced each other to see who could
develop the best patch for this bug in the shortest possible time
(some issue with formatting v-strings). In the process, it appears
that Ravi S. Kadali from IBM is able to run smoke tests against
"blead" on the z/OS platform. This will do wonders for smoking out
EBCDIC oddities.
http://xrl.us/nuna
Multiple threads + backticks + Win32 = intermittent hangs (#39531)
Keith Doyle found that multiple threads that backtick or popen kids
will hang at random, which is admittedly less than ideal.
Unfortunately he received no feedback on the issue.
http://xrl.us/nunb
"make test" fails with "getppid" in a Solaris 10 zone (#39536)
Jie Gao discovered a problem with op/getppid.t on "maint". Dominic
thought that the test from "blead", which has been rewritten, would
possibly do the tricked and asked Jie Gao to take it for a spin, to
see if it resolved the failure.
http://xrl.us/nunc
Bug in system calls when %ENV is very large (#39547)
Alex Keim had a problem on the Win32 platform with environments
approaching or exceeding 32K in size. Steve Hay was able to reproduce
the problem and found that it only manifested itself in threaded
builds. Jan Dubois and Dr. Ruud suggested some other workarounds
(basically, use a file, memory-mapped or otherwise, rather than the
environment to pass large slabs of data to kids).
Alex still found that an environment that gave "cmd" (the Win32 shell)
no trouble caused Perl grief, pointing to a problem with perl's
environment handling.
http://xrl.us/nund
"Text::Wrap": "This shouldn't happen" happens (#39548)
A "cannot happen" bug in "Text::Wrap" surfaced with this bug report.
Dominic chose to punt the issue for a while, to see what the current
maintainer of the module had to say.
http://xrl.us/nune
Updating to 5.8.8 (#39572)
Laurent had a strange problem with a tarball for perl 5.8.8 that
seemed to be lacking a couple of example files, according to the
manifest. Dominic offered what advice he could.
http://xrl.us/nunf
Pattern Match fails for specific length string (#39583)
Erik R. Ogan discovered that 5.8.8 would fail to match a string that
ought to have 32767 characters matched by "(.*?)".
Funny about that
http://xrl.us/nung
Problem with "make test" in perl-5.8.8 (#39613)
Ravi kumar Ravi had some problems with protocol name resolution
causing a handful of tests to failed. No followups.
http://xrl.us/nunh
"PerlProc_setjmp" undefined under "WIN32" (#39614)
Jerry D. Hedden's latest patch to the threads library makes use of a
few functions ("dJMPENV", "JMPENV_PUSH" and "JMPENV_POP") that are not
available when compiling ActiveState Perl from source.
http://xrl.us/nuni
Perl5 Bug Summary
+ 5 - 2 = 1493
http://xrl.us/nunj
The List
http://rt.perl.org/rt3/NoAuth/perl5/Overview.html
New Core Modules
* "Sys-Syslog" version 0.16 uploaded by Sébastien Aperghis-Tramoni,
and Rafael updated "blead" with this version.
http://xrl.us/nunk
This in turn allowed Sébastien to close a couple of old bugs:
#20557
http://xrl.us/nunm
#35406
http://xrl.us/nunn
* "CPANPLUS" version 0.072 was uploaded to CPAN by Jos Boumans. No,
it's not core, but may be one day. The fact that overall RAM usage
has declined in this release (as per the release notes) is
certainly a welcome step in this direction.
http://xrl.us/nuno
* A sleeker "Devel::PPPort" version 3.08_06 was integrated into
"blead" by Marcus Holland-Moritz. He shrunk the size of the
tarball significantly, by generating PPPort.pm and PPPort.xs on
the fly during the build. On the other hand, this cause
"Configure" to come to grief, since as it didn't see a PPPort.xs
at the beginning, it went ahead and built the non-XS version.
http://xrl.us/nunp
In Brief
Philippe M. Chiasson tracked down and reinstated the missing files
from the APC archive.
Full recovery
http://xrl.us/nunq
Nicholas Clark thought of a way of sidestepping the bogosity
introduced by the Intel "icc" compiler pretending to be "gcc".
Almost but not quite more than we deserve
http://xrl.us/nunr
Tom Christiansen wrote about the legibility myth and it sparked off an
interesting discussion about typography and the written word.
¡hola!
http://xrl.us/nuns
Tom also continued with a discussion of parenthetical perils.
http://xrl.us/nunt
Dr Ruud cooked up a tiny patch for toke.c to fix "isALNUM(*s) && *s !=
'_'".
http://xrl.us/nunu
Paul Marquess solved a problem in "make test" with multiple
Makefile.PLs.
Need to know
http://xrl.us/nunv
Paul also wondered why "-r" and "-w" don't work as expected when
applied to "\*STDIN" and "\*STDOUT" on Win32.
http://xrl.us/nunw
David Landgren ran a smoke at one point last week and reported a few
failures in the maint snapshot. Hmm, maybe after I get the summary out
the door I'll go and see what's happening with it now.
http://xrl.us/nunx
John E. Malmberg wanted to know if the rsync server was stuck at
"[EMAIL PROTECTED]".
http://xrl.us/nuny
Stuff I didn't have time to go through
Feel free to follow the links if the subject grabs your attention.
$^V ge "\5\x08\0" throws a warning
http://xrl.us/nunz
[PATCH] IO::Compress::Base
http://xrl.us/nun2
"Configure -Aprepend"
http://xrl.us/nun3
handling Unicode newlines
http://xrl.us/nun4
"Devel::PPPort" broken in latest blead on Win32
http://xrl.us/nun5
"MEM_WRAP_CHECK" has bogus logic on HP/UX
http://xrl.us/nun6
Thread Tutorial lock() scope
http://xrl.us/nun7
About this summary
This summary was written by David Landgren. The paragraph reformatter
fmt(1) that comes with my OS is not 8-bit clean, and it ate the "é" in
Sébastien Aperghis-Tramoni name in the previous summary. My apologies
to Sébastien. I hear there's a text processing language that is good
at doing this sort of stuff...
If you want a bookmarklet approach to viewing bugs and change reports,
there are a couple of bookmarklets that you might find useful on my
page of Perl stuff:
http://www.landgren.net/perl/
Weekly summaries are published on http://use.perl.org/ and posted on a
mailing list, (subscription: [EMAIL PROTECTED]). 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 to help support the development of Perl.
--
hope still, a little resistance always maybe stubborn tiny lights vs.
clustering darkness forever ok?