develooper Front page | perl.perl5.porters | Postings from June 2008

Re: Change 34005: Re: CPAN Upload: S/SA/SAPER/Sys-Syslog-0.25.tar.gz

Thread Previous | Thread Next
From:
=?ISO-8859-1?Q?S=E9bastien_Aperghis-Tramoni?=
Date:
June 7, 2008 17:55
Subject:
Re: Change 34005: Re: CPAN Upload: S/SA/SAPER/Sys-Syslog-0.25.tar.gz
Message ID:
B44DBB66-1AFE-4C93-BE5F-C41CF69166D2@free.fr
Sébastien Aperghis-Tramoni wrote:

> Nicholas Clark wrote:
>
>> On Thu, Jun 05, 2008 at 06:30:03PM -0700, Steve Peters wrote:
>>> Change 34005 by stevep@stevep-kirk on 2008/06/06 01:27:49
>>>
>>> 	Subject: Re: CPAN Upload: S/SA/SAPER/Sys-Syslog-0.25.tar.gz
>>> 	From: Sébastien Aperghis-Tramoni <maddingue@free.fr>
>>> 	Date: Fri, 6 Jun 2008 01:23:30 +0200
>>> 	Message-Id: <A5901BA3-6972-4C7D-8D91-F6E942B85AE5@free.fr>
>>>
>>> Affected files ...
>>
>>> ... //depot/perl/ext/Sys/Syslog/t/syslog.t#17 edit
>>
>> This is failing for me "here". oooh, And warnings.
>
> The 17 FAIL reports I got from CPAN testers confirm that  
> Sys::Syslog 0.25 indeed fails on 5.10.0 on all systems, but works  
> on 5.8.x and previous versions. This is very visible on the test  
> results matrix:
>   » http://bbbike.radzeit.de/~slaven/cpantestersmatrix.cgi?dist=Sys- 
> Syslog+0.25
>
> From the tests I did at work, I checked that it works on maint-5.8  
> and fails on blead and maint-5.10 (this was on a Linux x86-64 box).
>
> The problem can be reduced to this:
>
> $ perl5.8.8 -Mblib -MSys::Syslog -le 'print Sys::Syslog::constant 
> ("LOG_INFO")'
> 6
>
> $ perl5.11.0 -Mblib -MSys::Syslog -le 'print Sys::Syslog::constant 
> ("LOG_INFO")'
> LOG_INFO is not a valid Sys::Syslog macro
>
> constant() is the function defined by ExtUtils::Constant.
>
> I'm diff'ing the generated files with both 5.8.6 and 5.10.0 but I  
> first need to upgrade the modules in my 5.10.0 in order to reduce  
> the noise.

As I was suspecting, this comes from ExtUtils::Constant which is not  
the same in Perl 5.10.0 and on the CPAN:

$ zgrep -w ExtUtils::Constant .cpanplus/02packages.details.txt.gz
ExtUtils::Constant                 0.16  N/NW/NWCLARK/ExtUtils- 
Constant-0.16.tar.gz

  $ perl5.8.6 -MV=ExtUtils::Constant
ExtUtils::Constant
         /System/Library/Perl/5.8.6/ExtUtils/Constant.pm: 0.16

  $ perl5.10.0 -MV=ExtUtils::Constant
ExtUtils::Constant
         /usr/local/perl/5.10.0/lib/5.10.0/ExtUtils/Constant.pm: 0.2


More precisely, it comes from ProxySubs, a feature you implemented in  
December 2005, and pushed into several modules, including Sys::Syslog  
(protected with a version check), in changes 26455, 26463-5, 26472,  
26475, 26488, 26490-1, 26495-6, 26502-3, 26506-7.
   » http://public.activestate.com/cgi-bin/perlbrowse/l/lib/ExtUtils/ 
Constant/ProxySubs.pm

I note that its usage in WriteConstants() can be simplified by  
removing the version check, given passing PROXYSUBS => 1 in older  
ExtUtils::Constant produces no warning or error.

Also, I note that there is no documentation for this option and the  
corresponding module.  Tentative patch to at least indicate this  
option exists:

--- lib/ExtUtils/Constant.pm.orig       2006-06-13 21:29:14.000000000  
+0200
+++ lib/ExtUtils/Constant.pm    2008-06-08 02:34:36.000000000 +0200
@@ -438,6 +438,10 @@
  An array of constants' names, either scalars containing names, or  
hashrefs
  as detailed in L<"C_constant">.

+=item PROXYSUBS
+
+If true, uses proxy subs. See L<ExtUtils::Constant::ProxySubs>.
+
  =item C_FH

  A filehandle to write the C code to.  If not given, then I<C_FILE>  
is opened
---end of patch---

Nicholas, is there anything that prevent ExtUtils::Constant 0.20 (the  
one in blead and 5.10.0) to be released on CPAN?  It seems to work  
with 5.8 and 5.6.  Funnily, the tests also pass with 5.5 even though  
there's this warning, which I would have expected to make them fail:
   Character class syntax [: :] is reserved for future extensions at  
blib/lib/ExtUtils/Constant/Utils.pm line 95

If you lack the time to release it, may I offer my help?

Also, checking on RT CPAN, I see this unanswered ticket from Marcus:
   » http://rt.cpan.org/Public/Bug/Display.html?id=29968
AFAICT, it wasn't applied in blead and seems still valid.


-- 
Sébastien Aperghis-Tramoni

Close the world, txEn eht nepO.


Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About