Skip Menu |

This queue is for tickets about the HTTP-Request-FromCurl CPAN distribution.

Report information
The Basics
Id: 132316
Status: resolved
Priority: 0/
Queue: HTTP-Request-FromCurl

People
Owner: Nobody in particular
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in:
  • 0.14
  • 0.15
  • 0.18
  • 0.23
Fixed in: 0.25



Subject: Fedora 31: t/curl-multi.t fails
On Fedora 31 (with curl/7.66.0) the test suite fails: ... # Failed test '--verbose -s $url $url?foo=bar' # at t/TestCurlIdentity.pm line 305. # Structures begin differing at: # $got->{Cookie} = Does not exist # $expected->{Cookie} = 'log-server-httponly=supersecret; log-server=shazam2' # $VAR1 = [ # { # "User-Agent" => "curl/7.66.0", # "Accept" => "*/*", # "Host" => "localhost:55397" # }, # { # "User-Agent" => "curl/7.66.0", # "Accept" => "*/*", # "Host" => "localhost:55397", # "Cookie" => "log-server-httponly=supersecret; log-server=shazam2" # } # ]; # Failed test 'We create (almost) the same headers with LWP' # at t/TestCurlIdentity.pm line 174. # Structures begin differing at: # $got->[5] = Does not exist # $expected->[5] = 'Cookie: log-server-httponly=supersecret; log-server=shazam2' # Request: # GET /?foo=bar HTTP/1.1 # Accept: */* # Host: localhost:55397 # User-Agent: curl/7.66.0 # # # use strict; # use LWP::UserAgent; # # my $ua = LWP::UserAgent->new('send_te' => '0'); # my $r = HTTP::Request->new( # 'GET' => 'http://localhost:55397/?foo=bar', # [ # 'Accept' => '*/*', # 'Host' => 'localhost:55397', # 'User-Agent' => 'curl/7.66.0' # ], # # ); # my $res = $ua->request( $r, ); # Failed test 'We create (almost) the same headers with HTTP::Tiny' # at t/TestCurlIdentity.pm line 174. # Structures begin differing at: # $got->[4] = Does not exist # $expected->[4] = 'Cookie: log-server-httponly=supersecret; log-server=shazam2' # Request: # GET /?foo=bar HTTP/1.1 # Accept: */* # User-Agent: curl/7.66.0 # # # use strict; # use HTTP::Tiny; # # my $ua = HTTP::Tiny->new('verify_SSL' => '1'); # my $res = $ua->request( # 'GET' => 'http://localhost:55397/?foo=bar', # { # headers => { # 'User-Agent' => 'curl/7.66.0', # 'Accept' => '*/*' # }, # # }, # ); ... (etc) ... # Looks like you failed 12 tests of 48. t/curl-multi.t ............. Dubious, test returned 12 (wstat 3072, 0xc00) Failed 12/48 subtests
Am Fr 10. Apr 2020, 02:49:07, SREZIC schrieb: Show quoted text
> On Fedora 31 (with curl/7.66.0) the test suite fails: > > ...
This is also weird, because the Debian version (curl/7.64.0) passes. I suspect some error/difference in handling the requests - maybe curl keeps cookies persistent between the URLs since 7.65+ , but I don't see anything in the changes file. Can you please run perl -Ilib -w t/curl-multi.t and attach the output? Thank you very much, -max
On 2020-04-15 11:13:37, CORION wrote: Show quoted text
> Am Fr 10. Apr 2020, 02:49:07, SREZIC schrieb:
> > On Fedora 31 (with curl/7.66.0) the test suite fails: > > > > ...
> > This is also weird, because the Debian version (curl/7.64.0) passes. I > suspect some error/difference in handling the requests - maybe curl > keeps cookies persistent between the URLs since 7.65+ , but I don't > see anything in the changes file. > > Can you please run > > perl -Ilib -w t/curl-multi.t > > and attach the output? >
Attached output (Fedora 31, perl 5.32.0, HTTP::Request::FromUrl 0.18).
Subject: stdout_stderr.txt

Message body is not shown because it is too large.

On 2020-10-01 12:28:59, SREZIC wrote: Show quoted text
> On 2020-04-15 11:13:37, CORION wrote:
> > Am Fr 10. Apr 2020, 02:49:07, SREZIC schrieb:
> > > On Fedora 31 (with curl/7.66.0) the test suite fails: > > > > > > ...
> > > > This is also weird, because the Debian version (curl/7.64.0) passes. I > > suspect some error/difference in handling the requests - maybe curl > > keeps cookies persistent between the URLs since 7.65+ , but I don't > > see anything in the changes file. > > > > Can you please run > > > > perl -Ilib -w t/curl-multi.t > > > > and attach the output? > >
> > Attached output (Fedora 31, perl 5.32.0, HTTP::Request::FromUrl 0.18). > >
It seems that only curl 7.66.0 is affected --- newer or older versions are not. Here's a statistical analysis using reports from my smokers: **************************************************************** Regression 'qr:Testing with curl version '([\d\.]+)'' **************************************************************** Name Theta StdErr T-stat [0='const'] 1.0000 0.0000 43848869884489928.00 [1='eq_7.19.7'] 0.0000 0.0000 2.23 [2='eq_7.42.1'] -0.0000 0.0000 -3.18 [3='eq_7.47.0'] 0.0000 0.0000 0.29 [4='eq_7.52.1'] -0.0000 0.0000 -0.36 [5='eq_7.61.1'] -0.0000 0.0000 -1.54 [6='eq_7.64.0'] -0.0000 0.0000 -0.49 [7='eq_7.66.0'] -1.0000 0.0000 -24017015156844096.00 [8='eq_7.68.0'] -0.0000 0.0000 -1.65 [9='eq_7.72.0'] -0.0000 0.0000 -0.48 R^2= 1.000, N= 84, K= 10 ****************************************************************
This test now passes, mostly by ignoring the cookie headers between multiple requests issued by Curl. I couldn't track down why this only appears with Curl 7.66 , but maybe this is a result of only having a few versions of Curl among the CPAN testers. This is CPAN testers after all, and not Curl testers :) Thanks again for persisting and reporting the problems!