Hello community, here is the log from the commit of package perl-CGI for openSUSE:Factory checked in at 2017-11-04 19:27:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-CGI (Old) and /work/SRC/openSUSE:Factory/.perl-CGI.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-CGI" Sat Nov 4 19:27:56 2017 rev:8 rq:538282 version:4.37 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-CGI/perl-CGI.changes 2017-04-11 12:42:56.877374027 +0200 +++ /work/SRC/openSUSE:Factory/.perl-CGI.new/perl-CGI.changes 2017-11-04 19:27:58.795991439 +0100 @@ -1,0 +2,12 @@ +Thu Nov 2 06:06:51 UTC 2017 - co...@suse.com + +- updated to 4.37 + see /usr/share/doc/packages/perl-CGI/Changes + + 4.37 2017-11-01 + + [ FIX ] + - Fix incorrect quoting of ? in ->url (GH #112, GH #222, with + thanks to Reuben Thomas) + +------------------------------------------------------------------- Old: ---- CGI-4.36.tar.gz New: ---- CGI-4.37.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-CGI.spec ++++++ --- /var/tmp/diff_new_pack.P25BTS/_old 2017-11-04 19:27:59.911950663 +0100 +++ /var/tmp/diff_new_pack.P25BTS/_new 2017-11-04 19:27:59.915950516 +0100 @@ -17,7 +17,7 @@ Name: perl-CGI -Version: 4.36 +Version: 4.37 Release: 0 %define cpan_name CGI Summary: Handle Common Gateway Interface requests and responses ++++++ CGI-4.36.tar.gz -> CGI-4.37.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/Changes new/CGI-4.37/Changes --- old/CGI-4.36/Changes 2017-04-06 16:37:35.000000000 +0200 +++ new/CGI-4.37/Changes 2017-10-18 15:40:12.000000000 +0200 @@ -1,3 +1,9 @@ +4.37 2017-11-01 + + [ FIX ] + - Fix incorrect quoting of ? in ->url (GH #112, GH #222, with + thanks to Reuben Thomas) + 4.36 2017-03-29 [ ENHANCEMENT ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/META.json new/CGI-4.37/META.json --- old/CGI-4.36/META.json 2017-04-06 16:38:09.000000000 +0200 +++ new/CGI-4.37/META.json 2017-11-01 11:17:16.000000000 +0100 @@ -4,7 +4,7 @@ "unknown" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005", + "generated_by" : "ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150010", "license" : [ "perl_5" ], @@ -79,6 +79,6 @@ "web" : "https://github.com/leejo/CGI.pm" } }, - "version" : "4.36", - "x_serialization_backend" : "JSON::PP version 2.27300" + "version" : "4.37", + "x_serialization_backend" : "JSON::PP version 2.27400_02" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/META.yml new/CGI-4.37/META.yml --- old/CGI-4.36/META.yml 2017-04-06 16:38:09.000000000 +0200 +++ new/CGI-4.37/META.yml 2017-11-01 11:17:16.000000000 +0100 @@ -16,7 +16,7 @@ configure_requires: ExtUtils::MakeMaker: '0' dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005' +generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150010' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -48,5 +48,5 @@ homepage: https://metacpan.org/module/CGI license: http://dev.perl.org/licenses/ repository: https://github.com/leejo/CGI.pm -version: '4.36' +version: '4.37' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI/Carp.pm new/CGI-4.37/lib/CGI/Carp.pm --- old/CGI-4.36/lib/CGI/Carp.pm 2017-04-06 16:36:29.000000000 +0200 +++ new/CGI-4.37/lib/CGI/Carp.pm 2017-10-18 15:40:29.000000000 +0200 @@ -327,7 +327,7 @@ $main::SIG{__WARN__}=\&CGI::Carp::warn; -$CGI::Carp::VERSION = '4.36'; +$CGI::Carp::VERSION = '4.37'; $CGI::Carp::CUSTOM_MSG = undef; $CGI::Carp::DIE_HANDLER = undef; $CGI::Carp::TO_BROWSER = 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI/Cookie.pm new/CGI-4.37/lib/CGI/Cookie.pm --- old/CGI-4.36/lib/CGI/Cookie.pm 2017-04-06 16:36:31.000000000 +0200 +++ new/CGI-4.37/lib/CGI/Cookie.pm 2017-10-18 15:40:31.000000000 +0200 @@ -5,7 +5,7 @@ use if $] >= 5.019, 'deprecate'; -our $VERSION='4.36'; +our $VERSION='4.37'; use CGI::Util qw(rearrange unescape escape); use overload '""' => \&as_string, 'cmp' => \&compare, 'fallback' => 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI/File/Temp.pm new/CGI-4.37/lib/CGI/File/Temp.pm --- old/CGI-4.36/lib/CGI/File/Temp.pm 2017-04-06 16:36:33.000000000 +0200 +++ new/CGI-4.37/lib/CGI/File/Temp.pm 2017-10-18 15:40:33.000000000 +0200 @@ -3,7 +3,7 @@ # you use it directly and your code breaks horribly. package CGI::File::Temp; -$CGI::File::Temp::VERSION = '4.36'; +$CGI::File::Temp::VERSION = '4.37'; use parent File::Temp; use parent Fh; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI/Pretty.pm new/CGI-4.37/lib/CGI/Pretty.pm --- old/CGI-4.36/lib/CGI/Pretty.pm 2017-04-06 16:36:35.000000000 +0200 +++ new/CGI-4.37/lib/CGI/Pretty.pm 2017-10-18 15:40:34.000000000 +0200 @@ -6,7 +6,7 @@ use if $] >= 5.019, 'deprecate'; use CGI (); -$CGI::Pretty::VERSION = '4.36'; +$CGI::Pretty::VERSION = '4.37'; $CGI::DefaultClass = __PACKAGE__; @CGI::Pretty::ISA = qw( CGI ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI/Push.pm new/CGI-4.37/lib/CGI/Push.pm --- old/CGI-4.36/lib/CGI/Push.pm 2017-04-06 16:36:37.000000000 +0200 +++ new/CGI-4.37/lib/CGI/Push.pm 2017-10-18 15:40:35.000000000 +0200 @@ -6,7 +6,7 @@ use warnings; #/; -$CGI::Push::VERSION='4.36'; +$CGI::Push::VERSION='4.37'; use CGI; use CGI::Util 'rearrange'; @ISA = ('CGI'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI/Util.pm new/CGI-4.37/lib/CGI/Util.pm --- old/CGI-4.36/lib/CGI/Util.pm 2017-04-06 16:36:38.000000000 +0200 +++ new/CGI-4.37/lib/CGI/Util.pm 2017-10-18 15:40:38.000000000 +0200 @@ -6,7 +6,7 @@ our @EXPORT_OK = qw(rearrange rearrange_header make_attributes unescape escape expires ebcdic2ascii ascii2ebcdic); -our $VERSION = '4.36'; +our $VERSION = '4.37'; our $_EBCDIC = "\t" ne "\011"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/CGI.pm new/CGI-4.37/lib/CGI.pm --- old/CGI-4.36/lib/CGI.pm 2017-04-06 16:36:41.000000000 +0200 +++ new/CGI-4.37/lib/CGI.pm 2017-10-18 15:40:44.000000000 +0200 @@ -8,7 +8,7 @@ use warnings; #/; -$CGI::VERSION='4.36'; +$CGI::VERSION='4.37'; use CGI::Util qw(rearrange rearrange_header make_attributes unescape escape expires ebcdic2ascii ascii2ebcdic); @@ -2688,11 +2688,11 @@ my $request_uri = $self->request_uri || ''; my $query_str = $query ? $self->query_string : ''; + $script_name =~ s/\?.*$//s; # remove query string $request_uri =~ s/\?.*$//s; # remove query string $request_uri = unescape($request_uri); my $uri = $rewrite && $request_uri ? $request_uri : $script_name; - $uri =~ s/\?.*$//s; # remove query string if ( defined( $ENV{PATH_INFO} ) ) { # IIS sometimes sets PATH_INFO to the same value as SCRIPT_NAME so only sub it out diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/lib/Fh.pm new/CGI-4.37/lib/Fh.pm --- old/CGI-4.36/lib/Fh.pm 2017-04-06 16:36:44.000000000 +0200 +++ new/CGI-4.37/lib/Fh.pm 2017-10-18 15:40:47.000000000 +0200 @@ -5,6 +5,6 @@ use strict; use warnings; -$Fh::VERSION = '4.36'; +$Fh::VERSION = '4.37'; 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CGI-4.36/t/url.t new/CGI-4.37/t/url.t --- old/CGI-4.36/t/url.t 2016-05-23 09:58:56.000000000 +0200 +++ new/CGI-4.37/t/url.t 2017-10-18 15:28:47.000000000 +0200 @@ -95,6 +95,18 @@ is( $q->url,'http://example.com/hello+world','PATH_INFO being the same as SCRIPT_NAME'); }; +subtest 'Escaped question marks preserved' => sub { + local $ENV{HTTP_X_FORWARDED_HOST} = undef; + local $ENV{HTTP_HOST} = 'example.com'; + local $ENV{PATH_INFO} = '/path/info'; + local $ENV{REQUEST_URI} = '/real/path/info%3F'; + local $ENV{SCRIPT_NAME} = '/real/cgi-bin/dispatch.cgi'; + local $ENV{SCRIPT_FILENAME} = '/home/mark/real/path/cgi-bin/dispatch.cgi'; + + my $q = CGI->new; + is( $q->url(-absolute=>1), '/real/path/info?' ); +}; + done_testing();