This week, folks, I've written a low-fat summary. Not that I'm especially tired, but the bulk of messages in perl5-porters were bug reports and small fixes, and not really summarizable discussions. This makes arguably the summary more concise, but not less interesting, do I hope.
H.Merijn Brand submitted a
new version of his patch that enhances the
charnames
pragma to allow user-defined aliases. Not yet applied. Your
summarizer noticed that loading the files that define the aliases via
require()
instead of do()
would be an improvement, but unfortunately it
appeared that require()
is always
forced to be called in scalar context,
(for an unclear reason), which makes this solution not applicable.
Marc Shapiro noticed (bug #17964) that using the Switch module in a
multi-threaded program triggers a Scalars leaked: 1
error message.
Elizabeth Mattijsen replied that there are currently many ways to produce
this message, one of them being to do funky stuff in BEGIN blocks.
Steve Grazzini submitted a patch (bug #17830) to make the three argument
form of open()
behave correctly when the mode argument is <&=
(i.e.
open a file descriptor via number). Applied.
Bug #17892 is about mkdir()
not internally removing trailing slashes from
directory names. This makes mkdir()
fail in this case on NetBSD (and
possibly other BSD variants). This was fixed by Slaven Rezic.
Michael G Schwern noticed that prototype()
doesn't warn in void context.
This was fixed by Rafael Garcia-Suarez (bug #17933).
Nicholas Clark reported that a tied STDERR doesn't catch lexical warning messages. Bug #17934, still pending, on which nobody commented.
Stéphane Payrard submitted a patch to the IO module, to deprecate the form
use IO
without an import list, and to document what goes in this import
list (that is, the names of the modules in the IO::
namespace to be
loaded.) Applied.
Ilya Sandler reported that clearing a large hash may be very slow (bug
#17971). As Andreas J. Koenig found out, this is a malloc()
bug,
reproducible with libc-2.2.5, but not with libc-2.3.* that provides a new
implementation of malloc().
Graham Crookham reported that with perl 5.8.0, AUTOLOAD is failing to get called for sub calls of the form Xxxx-new when the class Xxxx has never been seen before> (bug #17967). This behavior differs from perl 5.6.1. Nobody commented.
Marty Pauley provided a patch for Class::Struct to allow declaration of a
structure via the use Class::Struct
statement, with an implicit class
name. He also wondered why Class::Struct doesn't allow its structures to
have an @ISA. Nobody seemed to remember.
Gavin Estey reported that a test for Locale::Codes failed for him when compiling perl 5.8.0. This bug was already known and fixed, but it's not harmful to repeat the cause here, in case some of my gentle readers run into the same problem : he was using an UTF8 locale, which the buggy test wasn't handling properly.
H.Merijn Brand applied his chainsaw-patch to remove the old 5005-threads. Further reviewing and adjustments are probably needed (but apparently no regression was introduced.)
Ton Hospel reported a case of regex overoptimization (bug #18019), which was promptly fixed by Hugo.
Perl 5 turned eight years old.
This summary brought to you by Rafael Garcia-Suarez, who began to use Perl less than eight years ago. It's also available via a mailing list, which subscription address is perl5-summary-subscribe@perl.org . Comments and corrections are, as always, welcome.