This Week on perl5-porters - 12-18 September 2005

  Nicholas Clark announced the plan for perl 5.8.8, so it was only
  fitting that someone should post a question asking how to compile
  5.004. Elsewhere there continued to be lots of discussion of VMS,
  carrying on from last week. All told, a fairly busy week with lots of
  single post threads, which made summarising a bit difficult.

5.8.8 is Coming

  Nicholas Clark posted a plan for 5.8.8.

  The deadline for changes (in blead, to be integrated in maint) is 16th
  October 2005. He will be "mostly incommunicado" for the first weeks of
  October, but explained that it isn't a problem. Fixes of bugs in
  pseudohashes and 5.005 threads go directly to maint and little else
  does. Steve Peters suggested that changes to re-entrant functions
  could be another exception, but for Nicholas it would have to wait for
  someone to figure out how to merge the code.

    http://xrl.us/hn2o

    The Current TODO
    http://mirrors.develooper.com/perl/APC/perl-current/pod/perltodo.pod

New Core Module Releases

  Jarkko Hietaniemi, fulfilling the promise of last week's
  "Math::Complex atan2 bug" thread, announced a patch with several
  pending updates for "Math::Complex" and "Math::Trig".

  The result of "atan2(0,0)" is now documented as being dependent on the
  underlying library.

  Nadeem Douba pointed what he called a small technical bug. He called
  for an optional argument, "rho", to the subroutine
  "great_circle_destination" and explained the rationale of a solution.
  Jarkko countered that he was confused by the proposal, which does not
  fit the usual concept of radians. The default coordinate system cannot
  be changed without breaking existing code and there is no *correct*
  spherical coordinate system. He proposed a special export tag as a
  possible way to incorporate Nadeem's suggestion.

  John Peacock released version-0.48 to CPAN and a corresponding patch
  vs. bleadperl. A pure Perl implementation is coming and John hopes he
  soon will be done with this project. But before that, the PAUSE
  indexer needs to be fixed and "CPANPLUS", "CPAN", "Module::Build"
  patched to use version.pm "fulltime".

Zlib on VMS

  The efforts to make "Compress::Zlib" work in blead on VMS continue. A
  long thread developed involving John E. Malmberg, Paul Marquess
  ("Compress::Zlib"), Tom Hughes ("IO::Zlib"), Jarkko Hietaniemi
  (external gzip support in "IO::Zlib"). It seems there are a zillion
  options to configure VMS Unix emulation and not all of these are
  handled gracefully by the Perl source code. Uncertainty concerning the
  differences of environment remains.

  The thread went on under the subject "Zlib 2.00_03 / Blead 25366 on
  VMS + patched vms.c" where John Malmberg and Paul Marquess continued
  the detective work. John's last message is investigating a possible
  problem with "glob()" on VMS which can be responsible for some of the
  test failures. It was found that by just removing leading "./" from
  directory variables on a test script made all its tests to pass. Craig
  Berry explained how limited is the home-grown glob() on VMS and John
  Malmberg notices that, as of OpenVMS 7.3-2, a "glob()" function is
  provided in the C library that is better be used on releases that
  supported it.

  Paul Marquess and John Malmberg went on to discuss issues on the
  consistency of VMS conversions and how it could be made better. Peter
  Prymer confirmed some VMS oddities on filename handling.

      ZLIB 2.0 / Blead 25366 on VMS 
      http://xrl.us/hn2p

More VMS Issues

  John E. Malmberg spotted a bug on the VMS specific "Perl_cando()" and
  squashed it with patch @25388. H. Merijn Brand applied it.

      The patch
      http://xrl.us/hn2q

  John also confirmed "ExtUtils::CBuilder" 0.13_01 tests ok.

      http://xrl.us/hn2r

  He added a few comments on the discussion with Ken Williams about an
  enhanced file spec handling for current VMS versions.

  The week closed with the posting by John Malmberg of an RFC proposing
  some VMS behavior changes. Apparently those changes may improve the
  consistency and precision of VMS perl.

      http://xrl.us/hn2s

Fiddling with the Bloody Grammar

  After the closing act of Michael Schwern, there was some subsequent
  traffic. Randal Schwartz discussed using "for example", "such as",
  "and so on" to say precisely what we mean. He thought it may be used
  as a general guideline for future writings, without crusades to fix it
  "in the past".

  There was silence for a while. And then David Nicol offered a 92K
  patch over 5.9.2 replacing every "e\.?g\.?" and "i\.?e\.?" with *for
  example* and *that is*. Adding commas and removing "I<italics>" were
  left as an exercise for some willing person. No one volunteered.

      Michael closes
      http://xrl.us/hn2t

      Randal's advice
      http://xrl.us/hn2u

      Chainsaw patch
      http://xrl.us/hn2v

OS X 10.4 Issues

  "make test" for maint on OXS 10.4 fails lib/locale.t. Randal says: "At
  least it fails on only one thing". Rafael remembers it's a problem
  with system locales. Dominic Dunlop notices this problem is recorded
  as bug #35895 (and logged as a bug with Apple as well - with no
  return). Dominic proposes a patch on Darwin to skip lib/locale.t tests
  on locales containing eu_ES as well as Byelorussian and Catalan
  locales. It applies to versions between 8.0.0 and 8.2.0, and hopefully
  will get fixed on the next Apple release. Patch applied.

      http://xrl.us/hn2w

  Randal L. Schwartz posted a test failure building Storable on OS X. It
  basically said "no weak references here". Steve Peters remembered
  seeing something similar before: the default Perl on OS X 10.4 was
  built without compiling the XS portion of "Scalar::Utils". A fresh
  install of "Scalar::Utils" fixes the problem. Randal checked it and
  thought Storable would need "Scalar::Util" as a prereq in order to
  have the the issue handled automatically.

  Fixing the Storable's test to ignore the "weak isn't supported" error
  would be the bug report for p5p. Nicholas Clark said that Randal
  should send a bug report to his Perl distributor asking "why isn't it
  installing the XS version of a core module?" Randal insisted that
  'maintperl' was used. Nicholas and Randal have not reached a consensus
  yet.

  To be continued, no doubt, next week.

    http://xrl.us/hn2x

Configuring ranlib for perl on OSX

  Steve Peters revived the interest in a bug (#36448) and patch reported
  by Luke Closs back in July. It concerned a change Apple did in how ar
  works in Tiger and was a "rather simple change". As a matter of fact,
  H. Merijn Brand had it in his queue and had been waiting for someone
  with access to a MacOS-like OS. Nicholas checked it and applied it.

    http://xrl.us/hn2y

The Return of the Consting

  Background: Andy Lester has been spending his copious spare time in
  the recent months bringing const (and other goodies) to the perl
  sources, the rationale being to piggy-back the analysis that modern
  compilers can perform as a way to help squash bugs.

  Andy was back with a 13K "patch of accumulated goodness", promptly
  applied by H. Merijn. Robin Barker reported still getting warning
  messages related to attributes.

      http://xrl.us/hn2z

Optional arrow operator on "(LIST)[LIST]->"

  The thread named "perlref Documentation About Optional -> Is Too
  Vague" has long changed to a proposal on a syntax extension. Prodded
  by Yitzchak Scott-Thoennes, Rafael Garcia-Suarez applied a patch that
  made the following syntactically correct:

      my $x = (foo())[0][1];

  just like

      my $x = (foo())[0]->[1];

  Sometime ago, he had expressed a minor concern on the possibility it
  allows to people unaware of the problem write non-backwards-compatible
  code with 5.10. Back then, Yitzchak answered that could be a reason
  not to include the patch in maint. Rafael thought that was the case,
  but Nicholas Clark has the final word.

      Yitzchak pings
      http://xrl.us/hn22

      Rafael answers
      http://xrl.us/hn23

Pod Indexing Project Status and Plan

  Ivan Tubert-Brohman reported on the current status of the Pod Indexing
  Project, with a nice summary and details. He pointed the perl-5.8.8
  deadline at Oct 16, 2005 and the opportunity to maximize the number of
  indexed files. Volunteers are anxiously waited.

      The project page
      http://pod-indexing.annocpan.org/wiki/

      http://xrl.us/hn24

Instrumenting perl at Runtime

  Alexander Kolbasov kicked off a long, fascinating thread discussing
  DTrace, a Solaris tool that allows one to dynamically instrument a
  running program and gather useful information about its behaviour. The
  first difficulty Alexander encountered was matching the underlying C
  code to the Perl code being executed.

  DTrace is being ported to FreeBSD and already understands Java, PHP
  and Ruby.

  Rafael pointed to Alan Burlison's work in the same area, and pimped
  his own "Runops::Switch" module, that allows you to replace perl's
  runloop at (script) compile time. He also answered, or provided
  pointers for, a number of questions raised by Alexander.

  For it to really work, some adaptations need to be made to the
  sources.

      http://xrl.us/hn25

      Alan Burlison's blog
      http://blogs.sun.com/roller/page/alanbur?entry=dtrace_and_perl

Compiling perl 5.004

  Shaun Daredia pleaded for help to get 5.004 running on some Linux-type
  platform. The trouble is essentially that 5.004 is old, and the
  configuration script gets confused by the results that modern versions
  of "gcc" emit in response to its probes. H. Merijn Brand provided a
  clue as to how to fix the problem, but with no certainty.

      http://xrl.us/hn26

PXPerl New Site

  PXPerl is a full-featured Perl, Pugs and Parrot binary distribution
  for Windows. Grégoire Péan announced the new address for the project.

  The current distribution PXPerl 5.8.7-4 contains Perl 5.8.7, Pugs
  6.2.9 and Parrot 0.2.2.

  The aim of the project is to provide an always up-to-date build. Vive
  Perl! Vive Grégoire! Windows users must be grateful.

      The announcement
      http://xrl.us/hn27

      The website
      http://pxperl.com/

Parallel Testing

  Nicholas notices how the core regression test is getting more
  comprehensive. This is a good thing, except that it takes longer to
  run. He asks: would it be feasible to run tests in parallel? Of
  course, it involves some issues to solve and he advances some of them.
  This topic was entered in "perltodo" which was reordered so as to not
  scare people any more with brain-melting things.

  Yuval Kogman stated that Pugs (the experimental Perl 6 compiler)
  actually supports running tests in parallel.

      http://xrl.us/hn28

Lots of warnings building [EMAIL PROTECTED]

  Paul Marquess reports lots of warnings while building [EMAIL PROTECTED]
  Nicholas Clark answers most of them are the same errors blead showed
  up when Andy Lester started adding const to blead. He hopes to see
  these warnings going away as he brings in fixing patches. VMS or
  Windows can be broken by those last changes, as Nicholas were not able
  to try them yet. Andy asks whether he can provide some help on this
  effort and Nicholas says Andy's later changes needs to be merged and
  then some work will be in order to get maint warning free again.

  After carping on glibc headers, Nicholas adds clean system headers to
  his growing wish list .

      http://xrl.us/hn29

"malloc_size" and "malloc_good_size"

  Steve Peters announced the detection of malloc_size/malloc_good_size
  added to Configure.

  John E. Malmberg produces a patch for VMS in order to deal with the
  new configure parameters "malloc_size" and "malloc_good_size". Merijn
  applied it and also asked if someone tested for problems with win32.
  Steve Peters reported to not have seen any problems.

      The patch
      http://xrl.us/hn3a

      The fix
      http://xrl.us/hn3b

UTF8-Related Bug Reports

  Christian Jaeger reported that taint mode still breaks UTF-8 handling.
  Problems can be seen with code as simple as

      use Encode;
      open F,"some/file/containing_utf8_text" or die $!;
      my $buf;
      read F,$buf,10,1000 or die $!;
      my $str= Encode::decode_utf8($buf);

  Things work fine unless the -T switch is used. Dan "the Encode
  Maintainer" Kogai duplicated the behaviour on 5.8.6, isolated it and
  wondered if a POD fix is in order or is it an authentic undocumented
  bug?

      http://xrl.us/hn3c

  John Gardiner Myers shows a code snippet in bug #37161 where a thread
  writes ISO-88591-1 encoded data when it should output UTF-8 instead.
  Code in threads seems not to respect the ":utf8" discipline.

      http://xrl.us/hn3d

  Jim McKim registrated the bug #37183 about the ability of the tiny
  script below to cause perl to segfault. No reply yet.

      #!/usr/local/bin/perl -w
      use encoding 'utf8';
      my $x = /¨\.\//;

      http://xrl.us/hn3e

Perl 5 Bug Summary

  Robert Spier delivered the Perl5 bug summary. 1508 open tickets. 8
  more *gasp* than last week.

      The summary
      http://rt.perl.org/rt3/NoAuth/perl5/Overview.html

In Brief

  Nicholas Clark followed up on a conversation with Salvador Fandiño
  about how assertion support could be improved, including opening new
  possibilities for what independent modules can achieve with hooks
  affecting code in compile time.

      http://xrl.us/hn3f

  In bug #37190, Nicholas Clark reports OS X and FreeBSD crashing when
  using "-DT" with "use warnings;" He suspects of a real bug somewhere.
  Rick Delaney gives some clues on the interpretation of the debugging
  log.

  John Damm Sørensen reports in #37156 on a problem on compiling 5.8.7
  on IA64. It concerns a well known issue for which some workarounds are
  listed and have been found to work fine. Nevertheless, these are not
  mentioned in perl README files.

      http://xrl.us/hn3g

  Rahul Sharma reported (in bug #37162) a problem during 'make test' on
  HP-UX using cc to compile Perl. It had to do with missing gmake. But
  gmake should not have being used. Merijn, Nicholas, and Andy Dougherty
  discussed how it could have happened, it it were a bug and how to fix
  it.

      http://xrl.us/hn3h

  Hiroshi Manabe reported bug #37144, showing sample code which causes
  very unpredictable results when running under the debugger.

      for ($i = 0; $i < 10; ++$i) {
          $temp = "\x{100}X";
          $temp =~ s/[^X]+//;  # bad things happen here (under the debugger)
      }

  No-one offered any insights as to what was happening. Things like this
  make you wonder how nobody encountered it before.

      http://xrl.us/hn3i

  During work on a Pod processor, Joshua Hobblit found quirks in the POD
  specs, "Pod::Perldoc" and "Pod::Parser". Should the chunk

      bar
         baz

  parse as an ordinary paragraph or two separate ones (with " baz" in a
  verbatim paragraph)? Rafael points Sean Burke as the one to clarify
  matters.

      http://xrl.us/hn3j

  Aaron Kaplan reported in #37142 that "h2xs" produces no code for an
  enum constant with explicit negative value like "enum foo { bar = -1
  }". He supplied a patch and it was applied.

      http://xrl.us/hn3k

  "Dentom_Sam" states in bug #37191 that he can consistently get the
  error:

      Can't call method "close" on an undefined value

  on "IPC::Open3". He diagnosed it has to do with redirections leading
  to failure and suggested a possible fix.

  David Austin complains about "IO::Select" not having a way to
  distinguish between timeout and errors. He suggests how a timeout must
  be returned and mentions how it is not documented what
  "IO::Select->select" returns after a timeout.

      http://xrl.us/hn3m

  Jos Boumans waved goodbye to the last smoke report from a BSDI box,
  the last one of that particular server farm. Yitzchak regrets they had
  never got a chance to track an op/int.t failure.

      http://xrl.us/hn3n

About this summary

  This summary was written by Adriano Ferreira with some additions by
  David Landgren.

  Information concerning bugs referenced in this summary (as #nnnnn) may
  be viewed at http://rt.perl.org/rt3/Ticket/Display.html?id=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.

Reply via email to