Skip Menu |

This queue is for tickets about the SOAP-Lite CPAN distribution.

Report information
The Basics
Id: 106051
Status: resolved
Priority: 0/
Queue: SOAP-Lite

People
Owner: Nobody in particular
Requestors: hsk [...] fli-leibniz.de
Cc: contyk [...] cpan.org
AdminCc:

Bug Information
Severity: Critical
Broken in: (no value)
Fixed in: (no value)



Subject: broken test in 1.16
1.16 changed the helper script t/SOAP/Transport/HTTP/CGI/test_server.pl to use Encode::encode_utf, but that does not exist, and so test t/SOAP/Transport/HTTP/CGI.t breaks with an "unitialized value ... at Carp.pm" replacing encode_utf with encode_utf8 (what probably was intended) does not help either as it double-encodes (?) the umlaut-u: # got: 'ÃÂberall' # expected: 'Ãberall' just go back to test_server.pl from 1.14 ?
On 2015-07-23 06:20:07, hsk@fli-leibniz.de wrote: Show quoted text
> 1.16 changed the helper script > t/SOAP/Transport/HTTP/CGI/test_server.pl to use Encode::encode_utf, > but that does not exist, and so test t/SOAP/Transport/HTTP/CGI.t > breaks with an "unitialized value ... at Carp.pm" > > replacing encode_utf with encode_utf8 (what probably was intended) > does not help either as it double-encodes (?) the umlaut-u: > # got: 'ÃÂberall' > # expected: 'Ãberall' > > just go back to test_server.pl from 1.14 ?
The double-encoding is happening here because "use utf8;" was not included in the script, therefore latin1 encoding was used for the Ü. Encoding when transmitting network data is a very tricky thing -- this ticket might prove enlightening: https://rt.cpan.org/Ticket/Display.html?id=104433
Subject: Re: [rt.cpan.org #106051] broken test in 1.16
Date: Thu, 23 Jul 2015 11:41:50 -0700
To: bug-SOAP-Lite [...] rt.cpan.org
From: Fred Moyer <fred [...] redhotpenguin.com>
Thanks for the heads up Karen - giving that a shot. On Thu, Jul 23, 2015 at 10:26 AM, Karen Etheridge via RT <bug-SOAP-Lite@rt.cpan.org> wrote: Show quoted text
> Queue: SOAP-Lite > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=106051 > > > On 2015-07-23 06:20:07, hsk@fli-leibniz.de wrote:
>> 1.16 changed the helper script >> t/SOAP/Transport/HTTP/CGI/test_server.pl to use Encode::encode_utf, >> but that does not exist, and so test t/SOAP/Transport/HTTP/CGI.t >> breaks with an "unitialized value ... at Carp.pm" >> >> replacing encode_utf with encode_utf8 (what probably was intended) >> does not help either as it double-encodes (?) the umlaut-u: >> # got: 'ÃÂberall' >> # expected: 'Ãberall' >> >> just go back to test_server.pl from 1.14 ?
> > The double-encoding is happening here because "use utf8;" was not included in the script, therefore latin1 encoding was used for the Ü. > > Encoding when transmitting network data is a very tricky thing -- this ticket might prove enlightening: > https://rt.cpan.org/Ticket/Display.html?id=104433
100% failure on cpan-testers. :-( http://www.cpantesters.org/distro/S/SOAP-Lite.html#SOAP-Lite-1.16 Here's a patch: --- t/SOAP/Transport/HTTP/CGI/test_server.pl.orig 2015-07-30 14:01:47.526363787 -0700 +++ t/SOAP/Transport/HTTP/CGI/test_server.pl 2015-07-30 14:02:02.675365487 -0700 @@ -16,8 +16,9 @@ my ($self, $envelope) = @_; use Encode; +use utf8; # return SOAP::Data->name('testResult')->value('Überall')->type('string'); - return SOAP::Data->name('testResult')->value(Encode::encode_utf('Überall'))->type('string'); + return SOAP::Data->name('testResult')->value(Encode::encode_utf8('Überall'))->type('string'); } 1;
Subject: Re: [rt.cpan.org #106051] broken test in 1.16
Date: Thu, 30 Jul 2015 21:05:41 +0000
To: bug-SOAP-Lite [...] rt.cpan.org
From: Fred Moyer <fred [...] redhotpenguin.com>
Thanks, I've got this same fix queued for a release, should go out today or tomorrow. On Thu, Jul 30, 2015, 2:04 PM David Wheeler via RT < bug-SOAP-Lite@rt.cpan.org> wrote: Show quoted text
> Queue: SOAP-Lite > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=106051 > > > 100% failure on cpan-testers. :-( > > http://www.cpantesters.org/distro/S/SOAP-Lite.html#SOAP-Lite-1.16 > > Here's a patch: > > --- t/SOAP/Transport/HTTP/CGI/test_server.pl.orig 2015-07-30 > 14:01:47.526363787 -0700 > +++ t/SOAP/Transport/HTTP/CGI/test_server.pl 2015-07-30 > 14:02:02.675365487 -0700 > @@ -16,8 +16,9 @@ > my ($self, $envelope) = @_; > > use Encode; > +use utf8; > # return > SOAP::Data->name('testResult')->value('Überall')->type('string'); > - return > SOAP::Data->name('testResult')->value(Encode::encode_utf('Überall'))->type('string'); > + return > SOAP::Data->name('testResult')->value(Encode::encode_utf8('Überall'))->type('string'); > } > > 1; > >
Shipped 1.17 with a fix for this.