Skip Menu |

This queue is for tickets about the CGI-Prototype CPAN distribution.

Report information
The Basics
Id: 12003
Status: resolved
Worked: 15 min
Priority: 0/
Queue: CGI-Prototype

People
Owner: MERLYN [...] cpan.org
Requestors: kynn [...] panix.com
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.9050
Fixed in: (no value)



Subject: Installation bug
CGI-Prototype-0.9050 perl v5.8.4 built for i686-linux-thread-multi Linux luna 2.4.18-686-smp #1 SMP Sun Apr 14 12:07:19 EST 2002 i686 unknown test t/10-CGIPH-core.t fails with older versions of HTTP::Message. The reason for the failure is that on line 85 of CGI/Prototype/Mecha.pm there is a call to HTTP::Message->parse(...); older versions of HTTP::Message implement parse as an AUTOLOADed *instance* method only (the method call is delegated to the HTTP::Message instance's _headers object), and therefore it fails when called as a class method. (More recent versions of HTTP::Message implement parse explicitly, and it can be called either as a class or an instance method.) The solution is simple: upgrade HTTP::Message, but it takes a while and a bit of skill to figure out that this is the source of the problem. Since this may discourage some potential users from installing and using this module, I think this is enough of a bug to warrant attention. One solution would be to specify some minimum version number for HTTP::Message, but this is problematic, because it appears that it is WWW::Mechanize, not CGI::Prototype(::Mecha) that brings in HTTP::Message. Maybe there is some way to specify such a dependency in Makefile.PL, but this is beyond my depth.
[guest - Fri Mar 25 16:11:23 2005]: Show quoted text
> CGI-Prototype-0.9050 > perl v5.8.4 built for i686-linux-thread-multi > Linux luna 2.4.18-686-smp #1 SMP Sun Apr 14 12:07:19 EST 2002 i686 > unknown > > test t/10-CGIPH-core.t fails with older versions of HTTP::Message. > > The reason for the failure is that on line 85 of > CGI/Prototype/Mecha.pm there is a call to HTTP::Message-
> >parse(...); older versions of HTTP::Message implement parse as an
> AUTOLOADed *instance* method only (the method call is delegated to > the HTTP::Message instance's _headers object), and therefore it > fails when called as a class method. (More recent versions of > HTTP::Message implement parse explicitly, and it can be called > either as a class or an instance method.) > > The solution is simple: upgrade HTTP::Message, but it takes a while > and a bit of skill to figure out that this is the source of the > problem. Since this may discourage some potential users from > installing and using this module, I think this is enough of a bug > to warrant attention. > > One solution would be to specify some minimum version number for > HTTP::Message, but this is problematic, because it appears that it > is WWW::Mechanize, not CGI::Prototype(::Mecha) that brings in > HTTP::Message. Maybe there is some way to specify such a > dependency in Makefile.PL, but this is beyond my depth.
I added a dependency on the latest LWP in the release 0.9051, so I'm reporting this bug closed unless you can reproduce it in the next release. Thanks for your bug report!