"Anyway, a lot of these design changes work together to produce a smoother result. I confess I haven't thought much about whether they could be borrowed piecemeal; I have a hard enough time keeping one fantasy language in my head at a time." -- Larry Wall, on the differences in exception handling between Perl 5 and Perl 6.
The thread wound up this week with Gabor Szabo asking for someone to summarise the main points made in the discussion, for inclusion on the Perl5 wiki. The idea is to make life easier for people who package perl in operating system distributions, by explaining what they may, should and must do.
Nicholas Clark noted that starting from 5.11, the infrastructure is nearly all there for the perl5-porters to remove modules from the core while allowing distributors and local sites to continue to keep them, in a graceful manner.
modular ecology http://xrl.us/biu9g
The 5.8.9 snapshot is having problems on Vista. Jan Dubois saw
t/op/alarm.t failing but wasn't able to track down why. In
the meantime, he released Win32
0.35 on CPAN. This will be
folded into 5.8.9 to upgrade the Win32
therein from its
current development status.
http://xrl.us/biu9i
$@
has an unwanted side effect Larry Wall gave the porters a run down on the current thinking regarding exception handling in Perl 6. Most of the pieces are in place, except for a hierarchy of exception object types, as @Larry are waiting to see the various implementations make of it all.
there is no try http://xrl.us/biu9k http://xrl.us/biu9n
Reini Urban wanted to write in POD for the Perl 5 wiki (that uses SocialText as a back-end). Michael G. Schwern explained that the existing plug-in/markup-escape infrastructure was up to the job, and sketched out how one might go about doing it. Reini was sufficiently motivated to take a stab at setting it up.
Tels thought that it was silly to write Yet Another Pod-HTML
convertor, and Michael thought that Pod::Simple::HTML
should be
close. Aristotle Pagaltzis thought that Pod::POM::View::HTML
wasn't too bad either.
http://xrl.us/biu9p
left_shift
problem Reini has started to write a document about the guts of the op-tree.
He started with the most trivial of op-codes, the one that performs
a left bitshift (<<
). Unfortunately he became side-tracked
over the way signed and unsigned integers are used depending on
whether the use integer
pragma is in force. Yitzchak
Scott-Thoennes explained the reason why things were why they are.
hard left turn right http://xrl.us/biu9r
Sérgio Durigan Júnior continued his quest to get 32- and 64-bit perls coexisting peacefully on his machine. Abigail showed how many different perls could live in the same directory tree, sharing common pure-Perl modules and keeping binary-incompatible files separate.
Dominic Dunlop remarked that Apple had managed to do just that already, but unfortunately no-one outside Apple had managed to replicate what they had done. Nicholas Clark mentioned that Edward Moy had some raw patch files to do just that, but didn't have the time to tidy them up (nor did Nicholas). Sounds like a nice self-contained task...
Other discussion in the thread talked about how perl is installed on HP-UX.
more bits http://xrl.us/biu9t
Alberto Simões wanted to know how he could make some old scripts
work with 5.10, since they have -Co0
on the shebang line. Aristotle
Pagaltzis recommended use open OUT => ':utf8', ':std'
as a
suitable replacement. Rafael Garcia-Suarez explained that -C
had
received this treatment as a consequence of a bug report, and that
there was a TODO item recorded that explained what needed to be
done to have the old behaviour reinstated (this time, without bugs).
get it right http://rt.perl.org/rt3/Public/Bug/Display.html?id=34087 http://xrl.us/biu9v
Jan Dubois had been exploring approaches to make pl2bat.pl
, since
depending on whether an executable foo anything, as opposed to a
specific foo.bat, exists in the current directory or not, you can
wind up running something else that the program you thought you were
going to run. Spaces in path names add to the fun.
With a series of four fall-through tests, Jan thought he had all the bases covered, and defied anyone to come up with a scenario that could get past the last case and hit the "Can't find full path" error message.
Jan also hoped that there were no longer any serious Perl users stuck on Win9X.
going batty http://xrl.us/biu9x
Nicholas Clark undid the final batch of consting from last week that Steven Schubiger had applied to sv.c. What is more, it was the second time he had had to roll back the same change.
Unfazed, Stephen delivered the fourteenth patch in the series. Andy Lester explained that he had considered doing what Steven is currently doing, when he was on his consting quest, but had considered that the added value wasn't worth the price.
http://xrl.us/biu9z
Rafael Garcia-Suarez edited base.pm to recommend parent.pm
in its place, and ask Max "Corion" Maischein to release a new version
of parent
to synchronise CPAN with blead. Some minor problems
cropped up that Jerry D. Hedden tidied up.
debased http://xrl.us/biu93
John E. Malmberg delivered some urgent patches to get VMS to build out of the box. H.Merijn Brand handled part of the patch through the brand new metaconfig infrastructure. Unfortunately this caused other platforms to complain unnecessarily. H.Merijn wasn't sure if he was doing something wrong, or whether the approach cannot work.
http://xrl.us/biu95
Paul Fenwick documented the return values of shutdown
(whose
existence I had so far managed to ignore). Nicholas Clark tried to
improve Paul's prose and Paul came back with yet a better version.
Unapplied.
and turn the lights out http://xrl.us/biu97
Jerry D. Hedden found some warnings when building blead on Solaris.
Andy Dougherty traced this to arrival of the PERL_BITFIELD16
typedef and proposed a minimal patch that cast things together
correctly. Or at least silently. Unapplied.
http://xrl.us/biu99
Leon Brocard updated the documentation to perlhack
to take into
account the changes to perlmain.c, and some notes on using valgrind
.
Applied after a resend.
http://xrl.us/bivab
SVTYPEMASK
to prevent cleaning of PL_fdpid
and PL_strtab
As part of his ongoing Kurila experiment (a fork of the perl5 codebase), Gerard Goossen traced down some problems that exist in the Perl array implementation.
Nicholas Clark used the information to provoke an assertion failure
when running a make minitest
. He applied Gerard's change, and
suggested that there are still some things that need to be sorted
out.
http://xrl.us/bivad
POSIX::SigSet
double free with threads (#36653) Steve Peters took another look at this problem from 2005, and discovered that while 5.8.8 ran without error, blead panicked with a free from wrong pool.
ungood http://xrl.us/bivaf
@ISA
push after symbol table delete (#52074) Peter Scott posted a one-liner to make blead dump core. Nicholas Clark noted that since 5.8.8 is immune, it must be a problem in the new MRO code.
nice self-contained task http://xrl.us/bivah
Text::Wrap::wrap()
generates a segfault with Cyrillic characters when the utf8 flag is turned on (#52104) Frédéric Buclin filed a ticket that was turned arose in the
development of Bugzilla (heh). Nicholas reduced it to a simple
matter of a regexp using pos()
inside a substitution, and tracing
back, realised that the bug had been lying in wait, ever since it
checked in, back in 2000.
It was then a simple matter to fix it in change #33580. As a bonus,
this should make it into 5.8.9-to-be. Frédéric wondered what
he could do in the meantime. Nicholas suggested one approach and
Robin Barker another. Aristotle Pagaltzis, who wrote the current
implementation of Text::Wrap::wrap
(and built it for speed),
suggested downgrading to a previous version.
that wraps it up http://xrl.us/bivaj
POSIX::strftime
hangs on %Z
under cygwin (#52126) Eric Roode reported a bug in 5.8.8 that had previously been reported,
and fixed, with change #29350. Nicholas Clark announced that said
change was included in 5.8.9. Steve Peters showed how changing the
final argument to strftime
prevented the process from hanging
in the meantime.
tis a matter of time http://xrl.us/bivam
Shanthi Muthu Srinivasan was unable to build 5.8.8 on AIX, the
process blowing up when trying to link miniperl
. Dominic Dunlop
suggested that it could be due to running out of disk space, and
that Activestate have an Activeperl distribution for AIX that may
be worth a try. H.Merijn Brand suggested a special incantation for
64-bit AIX.
No further information was forthcoming.
http://xrl.us/bivao
Win32::Console::_WriteConsoleInput
(#52216) Ed Sanman traced down a problem of console misbehaviour to what is probably a case of bad cut'n'paste. Not confirmed.
watch your stack http://xrl.us/bivaq
294 new + 1509 open = 1803 (+8) http://xrl.us/bivas http://rt.perl.org/rt3/NoAuth/perl5/Overview.html
Paul Marquess synchronised blead and CPAN.
http://xrl.us/bivau
Andreas König discovered, somewhat belatedly, that change #28868 broke
Dan Kogai's Regexp::Optimizer
package.
http://xrl.us/bivaw
Nicholas Clark applied Dominic Dunlop's patches to tidy up failing tests on PPC64.
http://xrl.us/bivay
Vincent Pit spotted an apidoc mismatch for Perl_magic_clearhint
and offered a patch, so Rafael applied it.
wild cut'n'paste http://xrl.us/biva2
Niko Tyni spotted a nasty typo in IO::Socket::INET
where a
hash key was named "upd" instead of "udp", and also offered a patch.
H.Merijn applied the patch. I wonder if we could have tested for
that.
nice catch http://xrl.us/biva4
chromatic tweaked the usage documentation for utils/dprofpp.PL . Applied.
being consistent http://xrl.us/biva6
Gerard Goossen also rejigged the MAD dump XML escape regexp, thus fixing a pile of tests that used to fail when run madly.
http://xrl.us/bivbc
Yitzchak Scott-Thoennes thinks that Devel::Cover
in the core would
be a marvellous idea.
http://xrl.us/bivbe
Nicholas Clark wrote some code to detect Configure
test goofs and
H.Merijn Brand folded it into the configuration infrastructure.
http://xrl.us/bivbg
David Cantrell hopes that Dave Mitchell's perl 5.10.1 plan includes
Jarkko Hietaniemi's patch for Encode::Alias
.
20 houses down from the beast http://xrl.us/bivbi
The bug tracking system thread attracted more discussion this week.
http://xrl.us/bivbk
Sérgio Durigan Júnior pinged the list about his problems when setting the libraries' installation path.
http://xrl.us/bivbn
Jim Cromie had a small interesting task to do, something about separate debug info.
didn't set the world on fire http://xrl.us/bivbp
Lincoln Stein absorbed a CGI::Carp
typo difference between
blead and CPAN.
http://xrl.us/bivbr
Peter Scott took a bash at glob in scalar context, offering a patch to reset the iterator in certain circumstances. Yitzchak showed how such a change would lead to even harder to debug problems.
an oldie but a goodie http://xrl.us/bivbt
It would appear that change #26980, regarding an improvement
to PERL_DONT_CREATE_GVSV
, would be the reason for test
failures in Math-Pari.
http://xrl.us/bivbv
A task that need a little C knowledge
The C code uses the macro PERL_UNUSED_ARG
to stop compilers warning about
unused arguments. Often the arguments can't be removed, as there is an
external constraint that determines the prototype of the function, so this
approach is valid. However, there are some cases where PERL_UNUSED_ARG
could be removed. Specifically
The prototypes of (nearly all) static functions can be changed
Unused arguments generated by short cut macros are wasteful - the short cut macro used can be changed.
Actually, two weeks ago. Sam Vilain explained how one could go about cherry-picking patches with git and promised to create a new version of the repository in UTF-8, so that people with non-Latin-1 names may be represented faithfully. (Hi Slaven!)
In mail to the list, I had complained about "foo" being
rendered as ``foo'' in the summaries. It turns out that this is
because at some point I switched my POD-to-HTML conversion
from blead's pod2html
to that of maint.
It turns out that lots of bugfixes went into the 5.10 release
of Pod::Html
, but as the module is not dual-lifed, it is
difficult to upgrade older perls. So I volunteered to take
care of dual-lifing it. Look for 1.09_01 on a CPAN mirror
near you soon.
This Week on perl5-porters - 9-15 March 2008 http://xrl.us/bik5f
This Week on perl5-porters - 16-22 March 2008 http://xrl.us/bivbx
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 to help support the development of Perl.