This Week on perl5-porters - 10-16 October 2005
The porters mailing list was crowded with recurrent themes on multiple
threads this week. Paul Marquess led a lot of action on
"Compress::Zlib" front. Much interaction and many fixes for latent and
old issues.
"Compress::Zlib"
This week has seen lots of action in "Compress::Zlib" front, led by
Paul Marquess. At least six threads were directly related to the
compression module.
After a report on a test failure on Cygwin, Paul Marquess kept his
promise to make t/14gzopen.t more robust. And then Paul attacked utf8
errors reported by recent smokes. And there was also a patch to
silence warnings on AIX.
The patches
http://xrl.us/h2yr
The utf8 errors survived the first approach and prompted for more
investigation. Dominic Dunlop reported Mac OS X were quite happy with
all tests succeeding. H.Merijn Brand remembered the tricky part was
that, while passing manual runs, failures were showing up while the
test suite run from a smoke. Paul traced the trouble to issues with
the binmode treatment for filehandles in a number of tests: it was
hard for making Linux, Sun, AIX, Win32, HP-UX, Mac OS X satisfied at
the same time.
UTF-8 errors are back
http://xrl.us/h2ys
Fighting UTF-8 smokes
http://xrl.us/h2yt
Steve Hay noticed bleadperl smokes on Win32 have been failing in test
09gziphdr.t and crashing perl. Paul has agreed that it looked like a
memory corruption issue and produced a patch so that Win32 smokes can
resume normally again.
Steve Hay reports
http://xrl.us/h2yu
Paul Marquess nails things down
http://xrl.us/h2yv
There were also a thread involving an issue about "Compress::Zlib"
Makefile.PL in perl core, driven by Yitzchak Scott-Thoennes and
E.Merijn Brand, which sorted out some build details. In "Perl on
Symbian", you read about Jarkko's working out C::Z in the Symbian
port, where running tests in the device still looks like a dream.
"Compress::Zlib" 2.000_05 is reaching the high time in blead.
C::Z Makefile.PL revised for Cygwin
http://xrl.us/h2yw
Perl on Cygwin
Yitzchak Scott-Thoennes found some segfaults in recent main builds on
Cygwin. Together with Nicholas Clark, they traced the issue down to a
destruction ordering bug, which could affect other platforms and
squashed it.
http://xrl.us/h2yx
H.Merijn Brand reported that after the PERL_CORE patch, Cygwin does
not dump core on blead anymore, failing two tests, one at
"Compress::Zlib" and other with POSIX signals. Paul Marquess pointed
the finger to issues with 14gzopen.t and prepared a patch to make it
more robust (see "Compress::Zlib"). Yitzchak Scott-Thoennes reported
the sigaction failure went away with the last Cygwin improvements.
http://xrl.us/h2yy
Steve Peters reported bugs #36665 ("delete $ENV{FOO} leaves $FOO
visible in subprocesses on Cygwin Perl") and #30952 ("qx() problems
with local environment variables on Cygwin/Perl 5.8.2") had to do with
Perl's handling of environment variables when compiled with
-DPERL_USE_SAFE_PUTENV. This was fixed in bleadperl with change
#25737. (Read more on "Environmental Recovery".)
http://xrl.us/h2yz
http://xrl.us/h2y2
Spaces in "-F" Switch
Steve Peters followed on the bug report #37366 by John Krahn. The
issue is that a space cannot be used in patterns supplied as arguments
to the "-F" switch. Rafael Garcia-Suarez remembered it's a feature to
make "-F" work on "#!" lines, now documented in blead. Rick Delaney
thought this limitation could be lifted in the case when implicit
delimiters were given and implemented it. Rafael pointed problems
because you can't rely on doing the argument splitting yourself,
something that "helpful kernels" could do for you. David Landgren
showed Rick how FreeBSD could be more helpful than Linux and that perl
was not in fault wrt awk. David also remembered you can always use
"\x20" instead of spaces in patterns.
http://xrl.us/h2y3
Perl on Symbian
Jarkko Hietaniemi posted updates for Symbian on blead. Among the
concerned issues, some fixes for "Compress::Zlib" allowed the DLL to
build and link successfully. Paul Marquess noted the changes to the
zlib source. Jarkko explained the changes have to do with the fact
that a DLL in Symbian cannot have writable data. After a while, Paul
announced Jarkko's patch was accepted to enter into the official zlib
source. Another new feature of the Symbian port 0.2.0 is the
introduction of another way of starting a Perl app in Series 60,
packaging scripts and modules into SIS files.
Symbian on blead patch
http://xrl.us/h2y4
The "sisify.pl" patch
http://xrl.us/h2y5
"malloc_wrap", the Default?
Alan Burlison questioned why "malloc_wrap" had become the default
behavior and if the decision had to do with performance. Yitzchak
Scott-Thoennes explained the goal of "malloc_wrap" is to prevent
situations where an overflow on multiplication causes a different
amount of memory to be allocated. There ensued some discussion on
playing whack-a-mole with compilers: Alan were seeing too much
warnings with Forte compilers and Dave Mitchel said the macro was
recently hacked to avoid warnings on gcc.
http://xrl.us/h2y6
New Core Modules Release
Without much ado, Paul Marquess brought a patch to sync blead and CPAN
with respect to "DB_File" 1.1812.
http://xrl.us/h2y7
Sébastien Aperghis-Tramonis also announced a patch to bring "XSLoader"
to version 0.06.
http://xrl.us/h2y8
"Module::Build" Applies for Core
Ken Williams announced the release of "Module::Build" 0.27_03, which
is the last major feature-adding beta release before 0.28. Ken asked
if it's not time for this version to get pulled into the core.
Warnocked by now.
http://xrl.us/h2y9
Not So Short
Gisle Aas noticed that "Win32::GetShortPathName()" does not return
shorter results (those ugly SHORTN~2) all the time and posted a patch
to update the documentation. While on this, he also fixed
Test/Harness/Straps.pm which relied on this misleading functionality.
http://xrl.us/h2za
Postponed subregexes and groups
Abigail opened RT ticket #37407 to tell about a malfunction of the
postponed regex construction "/(??{"(PAT)"})/". The $1 variable is not
correctly set. Rick Delaney regretted the matched groups cannot be got
and suggested documentation should change. On the other hand, the
construction provides the only way to get reusable self-contained
regexps with backreferences, which is pretty important to Rick and
also Rafael Garcia-Suarez. Jeff 'japhy' Pinyan, Yitzchak
Scott-Thoennes and Dave Mitchell entered this mind-bending discussion.
A part of the solution for the raised issues rests in Dave Mitchell's
hands and his promised re_eval rewrite - may Duke Nukem Forever be
soon released.
http://xrl.us/h2zb
Environmental Recovery
Discussion continued this week on the Perl's handling of environment
variables which was triggered by a problem seen at Solaris 10. And
that's a long long continuation, regarding POSIX interfaces, probes,
Solaris, AIX, etc.
Summarized here
http://xrl.us/h2zo
Continued this week
http://xrl.us/h2zc
A new thread started (with subject "environ fixup") after the probe
for "unsetenv()" was added by E.Merijn Brand. Alan Burlison had been
working out how to make use of the new probe and Rafael Garcia-Suarez
gave pointers. It might as well impact Symbian, EPOC and Cygwin. And
it did. At least, Cygwin got rid of some oddities in environment
handling after this fruitful discussion. (Read more at "Perl on
Cygwin".)
The new thread
http://xrl.us/h2zd
Perl5 Bug Summary
The bug count at the beginning of this week was 1519. An instant
overview of the open tickets can be seen at any time in the
rt.perl.org link below.
RT in Oct 10 13:00, courtesy of Robert Spier
http://xrl.us/h2ze
Perl RT just now
http://rt.perl.org/rt3/NoAuth/perl5/Overview.html
In Brief
Odd Behavior in Closures In RT ticket #37396, Mathieu observed some
weird problems with lexical bindings while mixing blocks, named
subroutines and closures. Dave Mitchell remembered these issues had
been fixed in the development branch of perl, which will eventually
appear in the stable release 5.10. Yitzchak Scott-Thoennes sketched
some workarounds to prevent the problems.
http://xrl.us/h2zf
Faster "++/--" for Integers Postfix "++"/"--" in void contexts are
optimized to prefix "++"/"--", because the later is known to be
faster. Hugo van der Sanden posted a patch to extend the special
treatment even for integers, where the same rationale is also valid.
http://xrl.us/h2zg
Indexing perl Docs Carrying on with the plan to index the most of perl
POD files, Ivan Tubert-Brohman, with contributions by Simon Taylor,
sent a patch adding index entries to a number of Perl documents (like
perldata, perlfunc, and so on). A total of new 1999 index entries
applied to blead.
Ivan's calling summarized
http://xrl.us/h2zp
Ivan and the 1999 new entries
http://xrl.us/h2zh
Array Indexing with a Ref Bug #37427 was open by "daniel_lo" to report
that the incorrect indexing of an array with a reference
perl -e '$a=1; print $stack->[\$a]->[0];'
would produce an "Out of memory" error. Rick Delaney noticed there is
a warning for this if he had tried with "-w". Dave Mitchel dismissed
the bug: a ref in numeric context gives the address of the referent.
So the code may be actually trying to create an extremely large array.
http://xrl.us/h2zi
Using the DOR Last week had seen a thread on the subject of whether
symbol tables "%...::" should be expected to be defined or not (as
summarized). David Nicol persisted on his suggestion to recognize
"if(defined)" and parse that to a construction involving the brand new
operator "op_DOR", which could arguably be a concise solution. However
cool, David got warnocked.
http://xrl.us/h2zj
To Awk or Not To Awk Xavier Noria posted a doc patch for an improved
explanation of $, and $\. Michael Schwern went further with Xavier's
approach to not add references to awk, suggesting these awk jargons
should be dumped entirely, as folks usually do not read perl
documentation anymore to know how emulate awk behavior.
http://xrl.us/h2zk
%INC and Forward Slashes Jan Dubois brought in a patch to make sure
the *keys* in %INC always use forward slashes. That fixed those ugly
"subroutine foo redefined" warnings on Windows. Yitzchak
Scott-Thoennes had some questions whether that works in old perls on
classic Mac OS, for which Jan Dubois thinks the general answer is yes.
As a contumacious Windows user, I salute Jan Dubois for leaving Win32
free of those (dozens of) annoying warnings each time "cpan" is run.
http://xrl.us/h2zm
About this summary
This summary was written by Adriano Ferreira. Fortunately, shorter
than the last one he wrote.
Information concerning bugs referenced in this summary (as #nnnnn) may
be viewed at http://rt.perl.org/rt3/Ticket/Display.html?id=nnnnn
Information concerning patches to maint or blead referenced in this
summary (as #nnnnn) may be viewed at
http://public.activestate.com/cgi-bin/perlbrowse?patch=nnnnn
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 or enjoyable, please consider
contributing to the Perl Foundation to help support the development of
Perl.