Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

5.8.9-to-be on Irix

1 view
Skip to first unread message

David Cantrell

unread,
Apr 30, 2008, 5:31:39 PM4/30/08
to perl5-...@perl.org
My Irix build problems seem to have gone away. I'm using a different
machine now, so I'm going to blame having an old compiler on the other
box. All that follows is after Configureing with -de -Dprefix=blah

The latest 5.8.x builds and passes all but one of its tests:
ext/Sys/Syslog/t/syslog.....................# Failed test 'syslog()
should return true: '0''
# at ../ext/Sys/Syslog/t/syslog.t line 108.
FAILED at test 12

but when I run that test by hand:

~/perl-33536/t $ ./perl -T -I../lib ../ext/Sys/Syslog/t/syslog.t \
|grep "not ok"

(note the -T, because syslog.t has that on the shebang line, which perl
doesn't like)

not ok 8 - setlogsock() should return true: '0' # TODO minor bug
not ok 12 - syslog() should return true: '0'
# Failed test 'syslog() should return true: '0''
# at ../ext/Sys/Syslog/t/syslog.t line 108.
not ok 14 - closelog() should return true: '0'
# Failed test 'closelog() should return true: '0''
# at ../ext/Sys/Syslog/t/syslog.t line 113.
not ok 110 - [stream] syslog() should return true: '0'
# Failed test '[stream] syslog() should return true: '0''
# at ../ext/Sys/Syslog/t/syslog.t line 168.
not ok 112 - [stream] syslog() should return true: '0'
# Failed test '[stream] syslog() should return true: '0''
# at ../ext/Sys/Syslog/t/syslog.t line 175.
not ok 114 - [stream] closelog() should return true: '0'
# Failed test '[stream] closelog() should return true: '0''
# at ../ext/Sys/Syslog/t/syslog.t line 184.
# Looks like you failed 5 tests of 199.

--
David Cantrell | Godless Liberal Elitist

Stepped on something soft and wobbly.
Struck a match.
Found it was a dead Chinaman.

-- Sir George Scott

madd...@free.fr

unread,
May 1, 2008, 9:12:39 PM5/1/08
to David Cantrell, perl5-...@perl.org
Hello,


David Cantrell wrote:

> My Irix build problems seem to have gone away. I'm using a different
> machine now, so I'm going to blame having an old compiler on the other
> box. All that follows is after Configureing with -de -Dprefix=blah
>
> The latest 5.8.x builds and passes all but one of its tests:
> ext/Sys/Syslog/t/syslog.....................# Failed test
> 'syslog()
> should return true: '0''
> # at ../ext/Sys/Syslog/t/syslog.t line 108.
> FAILED at test 12

Sorry to answer only now. I just catch back on my P5P mails.

> but when I run that test by hand:
>
> ~/perl-33536/t $ ./perl -T -I../lib ../ext/Sys/Syslog/t/syslog.t \
> |grep "not ok"
>
> (note the -T, because syslog.t has that on the shebang line, which
> perl
> doesn't like)

What do you mean by "it doesn't like -T"?

> not ok 8 - setlogsock() should return true: '0' # TODO minor bug
> not ok 12 - syslog() should return true: '0'
> # Failed test 'syslog() should return true: '0''
> # at ../ext/Sys/Syslog/t/syslog.t line 108.
> not ok 14 - closelog() should return true: '0'
> # Failed test 'closelog() should return true: '0''
> # at ../ext/Sys/Syslog/t/syslog.t line 113.
> not ok 110 - [stream] syslog() should return true: '0'
> # Failed test '[stream] syslog() should return true: '0''
> # at ../ext/Sys/Syslog/t/syslog.t line 168.
> not ok 112 - [stream] syslog() should return true: '0'
> # Failed test '[stream] syslog() should return true: '0''
> # at ../ext/Sys/Syslog/t/syslog.t line 175.
> not ok 114 - [stream] closelog() should return true: '0'
> # Failed test '[stream] closelog() should return true: '0''
> # at ../ext/Sys/Syslog/t/syslog.t line 184.
> # Looks like you failed 5 tests of 199.


This looks like CPAN-RT#30710, for which I have no real idea of the
root of the problem.
» http://rt.cpan.org/Public/Bug/Display.html?id=30710

Could you tell me what was actually written in your syslog?


--
Sébastien Aperghis-Tramoni

Close the world, txEn eht nepO.

David Cantrell

unread,
May 6, 2008, 9:30:16 AM5/6/08
to perl5-...@perl.org
On Fri, May 02, 2008 at 03:12:39AM +0200, S?bastien Aperghis-Tramoni wrote:
> David Cantrell wrote:
> >when I run that test by hand:
> > ~/perl-33536/t $ ./perl -T -I../lib ../ext/Sys/Syslog/t/syslog.t \
> > |grep "not ok"
> >(note the -T, because syslog.t has that on the shebang line, which
> >perl doesn't like)
> What do you mean by "it doesn't like -T"?

~/perl-33536/t $ ./perl -I../lib ../ext/Sys/Syslog/t/syslog.t
"-T" is on the #! line, it must also be used on the command line at
../ext/Sys/Syslog/t/syslog.t line 1.

> Could you tell me what was actually written in your syslog?

May 6 15:22:59 6Q:o3k perl: uid 25020 is testing Perl 5.008008
syslog(3) capabilities by connecting to a native socket
May 6 15:22:59 6Q:o3k perl: uid 25020 is testing Perl 5.008008
syslog(3) capabilities by connecting to a native socket, setting a fake
errno: Operation not permitted

--
David Cantrell | Official London Perl Mongers Bad Influence

Safety tip: never strap firearms to a hamster

David Cantrell

unread,
May 6, 2008, 10:37:00 AM5/6/08
to perl5-...@perl.org
I mumbled about:

> ../ext/Sys/Syslog/t/syslog.t ...

FWIW, this works just fine in 5.8.8, which passes all its tests.

--
David Cantrell | Enforcer, South London Linguistic Massive

Suffer the little children to come unto me, as
their buying habits are most easily influenced.
-- Marketroid Jesus

David Landgren

unread,
May 9, 2008, 3:59:17 AM5/9/08
to David Cantrell, perl5-...@perl.org, Sébastien Aperghis-Tramoni
David Cantrell wrote:
> I mumbled about:
>
>> ../ext/Sys/Syslog/t/syslog.t ...
>
> FWIW, this works just fine in 5.8.8, which passes all its tests.

5.8.8 was bundled with Sys::Syslog 0.13, however 5.8.9 wants to be
bundled with 0.18. Or do you mean 5.8.8 runs 0.18 just fine?

I think this calls for someone with bisecting skillz can find out what
change caused the regression.

David

David Cantrell

unread,
May 9, 2008, 6:20:25 AM5/9/08
to perl5-...@perl.org
On Fri, May 09, 2008 at 09:59:17AM +0200, David Landgren wrote:
> David Cantrell wrote:
> >I mumbled about:
> >>../ext/Sys/Syslog/t/syslog.t ...
> >FWIW, this works just fine in 5.8.8, which passes all its tests.
> 5.8.8 was bundled with Sys::Syslog 0.13, however 5.8.9 wants to be
> bundled with 0.18. Or do you mean 5.8.8 runs 0.18 just fine?

A freshly untarred 5.8.8 source tree passed all its tests.

--
David Cantrell | http://www.cantrell.org.uk/david

Godliness is next to Englishness

David Landgren

unread,
May 9, 2008, 8:32:07 AM5/9/08
to Sébastien Aperghis-Tramoni, Perl 5 Porters
Sébastien Aperghis-Tramoni wrote:
> David Cantrell wrote:
>
>> On Fri, May 09, 2008 at 09:59:17AM +0200, David Landgren wrote:
>>> David Cantrell wrote:
>>>> I mumbled about:
>>>>> ../ext/Sys/Syslog/t/syslog.t ...
>>>> FWIW, this works just fine in 5.8.8, which passes all its tests.
>>> 5.8.8 was bundled with Sys::Syslog 0.13, however 5.8.9 wants to be
>>> bundled with 0.18. Or do you mean 5.8.8 runs 0.18 just fine?
>
> "5.8.9 wants 0.18" ? I can't update my copies of blead and maint-5.8
> (rsync being down), but as of respectively 33788 and 33736, the version
> of Sys::Syslog bundled with these Perl is the same as on the CPAN, 0.24.

Err yes. I must have meant octal. Or something.

madd...@free.fr

unread,
May 9, 2008, 8:26:44 AM5/9/08
to Perl 5 Porters
David Cantrell wrote:

> On Fri, May 09, 2008 at 09:59:17AM +0200, David Landgren wrote:
>> David Cantrell wrote:
>>> I mumbled about:
>>>> ../ext/Sys/Syslog/t/syslog.t ...
>>> FWIW, this works just fine in 5.8.8, which passes all its tests.
>> 5.8.8 was bundled with Sys::Syslog 0.13, however 5.8.9 wants to be
>> bundled with 0.18. Or do you mean 5.8.8 runs 0.18 just fine?

"5.8.9 wants 0.18" ? I can't update my copies of blead and maint-5.8

(rsync being down), but as of respectively 33788 and 33736, the
version of Sys::Syslog bundled with these Perl is the same as on the
CPAN, 0.24.

> A freshly untarred 5.8.8 source tree passed all its tests.

So, IIUC, we currently have these results on IRIX:
- 5.8.8 : OK
- 5.8.9-tobe : FAIL ext/Sys/Syslog/t/syslog.t
- blead : FAIL ext/Sys/Syslog/t/syslog.t, ext/Time/Piece/t/
02core.t, lib/Archive/Extract/t/01_Archive-Extract.t

Given 5.8.8 has Sys::Syslog 0.13, and 5.8.9-tobe and blead both have
0.24, could you try the following combinations:
- 5.8.8 with 0.24 (will show if the regression was introduced by
Sys::Syslog)
- 5.8.9-tobe with 0.13 (will show if the regression was introduced
by something else in Perl)


Thanks in advance

David Cantrell

unread,
May 13, 2008, 7:25:11 PM5/13/08
to perl5-...@perl.org
On Fri, May 09, 2008 at 02:26:44PM +0200, S?bastien Aperghis-Tramoni wrote:

> Given 5.8.8 has Sys::Syslog 0.13, and 5.8.9-tobe and blead both have
> 0.24, could you try the following combinations:

OK, in both cases I built a fresh perl (5.8.9-to-be is Nicholas's build
33536), ignored the test failures in 5.8.9-to-be, and intalled to
~/perl-5.8.[whatever]. Then I did the untarred Sys-Syslog 0.13 and 0.24
and for each perl and each dist of the module did:
[path]/perl Makefile.PL
make
make test

0.24 came from the CPAN, 0.13 from the backpan.

> - 5.8.8 with 0.24 (will show if the regression was introduced by
> Sys::Syslog)

That fails, but passes with 0.13. But according to CPAN-testers, 0.24
*passes* with 5.8.8 on some other platforms, so this is Irix-specific.

> - 5.8.9-tobe with 0.13 (will show if the regression was introduced
> by something else in Perl)

That passes.

With 0.24 I noticed this:

cc-1174 cc: WARNING File = Syslog.c, Line = 367
The variable "RETVAL" was declared but never referenced.

which might explain the failures.

So given that 0.24 fails with 5.8.8 it looks like the problem is in
Sys::Syslog, and not with perl itself. Tomorrow I'll grovel over the
backpan and see exactly when the bug was introduced.

--
David Cantrell | A machine for turning tea into grumpiness

You know you're getting old when you fancy the
teenager's parent and ignore the teenager
-- Paul M in uknot

David Cantrell

unread,
May 14, 2008, 6:42:34 AM5/14/08
to perl5-...@perl.org
On Wed, May 14, 2008 at 12:25:11AM +0100, David Cantrell wrote:

> So given that 0.24 fails with 5.8.8 it looks like the problem is in
> Sys::Syslog, and not with perl itself. Tomorrow I'll grovel over the
> backpan and see exactly when the bug was introduced.

0.13 through to 0.18 pass all their tests with 5.8.8 and with
5.8.9-to-be on Irix. 0.19 onwards all fail on both versions.

--
David Cantrell | top google result for "topless karaoke murders"

Feature: an incorrectly implemented bug

madd...@free.fr

unread,
May 14, 2008, 8:09:23 PM5/14/08
to David Cantrell, perl5-...@perl.org
David Cantrell wrote:

> On Fri, May 09, 2008 at 02:26:44PM +0200, Sébastien Aperghis-

> Tramoni wrote:
>
>> Given 5.8.8 has Sys::Syslog 0.13, and 5.8.9-tobe and blead both have
>> 0.24, could you try the following combinations:
>
> OK, in both cases I built a fresh perl (5.8.9-to-be is Nicholas's
> build
> 33536), ignored the test failures in 5.8.9-to-be, and intalled to
> ~/perl-5.8.[whatever]. Then I did the untarred Sys-Syslog 0.13 and
> 0.24
> and for each perl and each dist of the module did:
> [path]/perl Makefile.PL
> make
> make test
>
> 0.24 came from the CPAN, 0.13 from the backpan.

Yes, sorry, I'm used to delete old versions in order to improve the
Schwartz factor.

>> - 5.8.8 with 0.24 (will show if the regression was introduced by
>> Sys::Syslog)
>
> That fails, but passes with 0.13. But according to CPAN-testers, 0.24
> *passes* with 5.8.8 on some other platforms, so this is Irix-specific.
>
>> - 5.8.9-tobe with 0.13 (will show if the regression was introduced
>> by something else in Perl)
>
> That passes.
>
> With 0.24 I noticed this:
>
> cc-1174 cc: WARNING File = Syslog.c, Line = 367
> The variable "RETVAL" was declared but never referenced.
>
> which might explain the failures.

Strange, this file hasn't changed much between 0.18 and 0.19, mostly
by a couple of #ifdef
Does this warning appears in XS_Sys__Syslog_setlogmask_xs()? If not,
could you paste me the part of the C file where it occurs?

> So given that 0.24 fails with 5.8.8 it looks like the problem is in
> Sys::Syslog, and not with perl itself. Tomorrow I'll grovel over the
> backpan and see exactly when the bug was introduced.

> 0.13 through to 0.18 pass all their tests with 5.8.8 and with


> 5.8.9-to-be on Irix. 0.19 onwards all fail on both versions.

Ok, so this means the problem has appeared between 0.18 and 0.19.
Unfortunately, 0.19 was a quite big release because it added Win32
support and numerous bugfixes. Also, this was the time I begun using
a SVN for Sys::Syslog and I made the mistake of importing a WIP
version instead of starting with a clean 0.18 release.

[ two hours of diff'ing and getting lost/distracted by googling later ]

Holy cow. I bet it's related to this change:
» http://svnweb.mongueurs.net/Sys-Syslog/revision/?rev=5

which I just realised was fixed very recently:
» http://svnweb.mongueurs.net/Sys-Syslog/revision/?rev=180
» http://rt.cpan.org/Public/Bug/Display.html?id=34691

So, could you try the version from the SVN and check whether this
fixes the problem?
$ svn co svn://svn.mongueurs.net/Sys-Syslog


Thanks for your hard work. I owe you your favourite drinking for the
next Perl conference :-)

David Cantrell

unread,
May 15, 2008, 10:57:04 AM5/15/08
to perl5-...@perl.org
> >With 0.24 I noticed this:
> > cc-1174 cc: WARNING File = Syslog.c, Line = 367
> > The variable "RETVAL" was declared but never referenced.
> >which might explain the failures.
> Does this warning appears in XS_Sys__Syslog_setlogmask_xs()? If not,
> could you paste me the part of the C file where it occurs?

It's here:

XS(XS_Sys__Syslog_setlogmask_xs)
{
dXSARGS;
if (items != 1)
Perl_croak(aTHX_ "Usage: Sys::Syslog::setlogmask_xs(mask)");
{
int mask = (int)SvIV(ST(0));
int RETVAL;
dXSTARG;
#line 129 "Syslog.xs"
setlogmask(mask);
#line 320 "Syslog.c"
}
XSRETURN(1);
}

> So, could you try the version from the SVN and check whether this
> fixes the problem?
> $ svn co svn://svn.mongueurs.net/Sys-Syslog

All tests passed with both 5.8.8 and 5.8.9-to-be. The warning about
RETVAL is still there, and your MANIFEST is out of date - 'make distclean'
says:
Not in MANIFEST: t/cpan-rt-21516.t
Not in MANIFEST: t/cpan-rt-21866.t
Not in MANIFEST: t/cpan-rt-25488.t

> Thanks for your hard work. I owe you your favourite drinking for the
> next Perl conference :-)

Pity I'm not going to be at YAPC::Europe this year :-)

Irregular English:
ladies glow; gentlemen perspire; brutes, oafs and athletes sweat

madd...@free.fr

unread,
May 15, 2008, 7:08:00 PM5/15/08
to David Cantrell, Perl 5 Porters
David Cantrell wrote:

>> So, could you try the version from the SVN and check whether this
>> fixes the problem?
>> $ svn co svn://svn.mongueurs.net/Sys-Syslog
>
> All tests passed with both 5.8.8 and 5.8.9-to-be. The warning about
> RETVAL is still there,

And actually reading the source once again give me the answer: RETVAL
indeed is unused in setlogmask_xs(), which means its return value is
undefined, but this doesn't matter because setlogmask_xs() is never
called. Currently, it's always the Perl setlogmask() function that's
always used.

Anyway, I've fixed the bug, for the day setlogmask_xs() will be used.
Thanks for poking me on this.

> and your MANIFEST is out of date - 'make distclean' says:
> Not in MANIFEST: t/cpan-rt-21516.t
> Not in MANIFEST: t/cpan-rt-21866.t
> Not in MANIFEST: t/cpan-rt-25488.t

This is normal: these tests really are for me and are not stable
enough to be used in the wild.

>> Thanks for your hard work. I owe you your favourite drinking for the
>> next Perl conference :-)
>
> Pity I'm not going to be at YAPC::Europe this year :-)


I'll attend the London Perl Workshop then ;-)

0 new messages