Hello community,
here is the log from the commit of package perl-AnyEvent-HTTP for
openSUSE:Factory checked in at 2018-09-25 15:44:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-AnyEvent-HTTP (Old)
and /work/SRC/openSUSE:Factory/.perl-AnyEvent-HTTP.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-AnyEvent-HTTP"
Tue Sep 25 15:44:41 2018 rev:14 rq:637911 version:2.24
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-AnyEvent-HTTP/perl-AnyEvent-HTTP.changes
2016-09-26 12:36:05.000000000 +0200
+++
/work/SRC/openSUSE:Factory/.perl-AnyEvent-HTTP.new/perl-AnyEvent-HTTP.changes
2018-09-25 15:45:58.961062414 +0200
@@ -1,0 +2,6 @@
+Fri Aug 31 05:01:49 UTC 2018 - [email protected]
+
+- updated to 2.24
+ see /usr/share/doc/packages/perl-AnyEvent-HTTP/Changes
+
+-------------------------------------------------------------------
Old:
----
AnyEvent-HTTP-2.23.tar.gz
New:
----
AnyEvent-HTTP-2.24.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-AnyEvent-HTTP.spec ++++++
--- /var/tmp/diff_new_pack.gnfbfq/_old 2018-09-25 15:45:59.377061971 +0200
+++ /var/tmp/diff_new_pack.gnfbfq/_new 2018-09-25 15:45:59.381061966 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-AnyEvent-HTTP
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,15 +17,14 @@
Name: perl-AnyEvent-HTTP
-Version: 2.23
+Version: 2.24
Release: 0
-#Upstream: CHECK(GPL-1.0+ or Artistic-1.0)
%define cpan_name AnyEvent-HTTP
Summary: Simple but Non-Blocking Http/Https Client
-License: Artistic-1.0 or GPL-1.0+
+License: Artistic-1.0 OR GPL-1.0-or-later
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/AnyEvent-HTTP/
-Source0:
http://www.cpan.org/authors/id/M/ML/MLEHMANN/%{cpan_name}-%{version}.tar.gz
+Source0:
https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN/%{cpan_name}-%{version}.tar.gz
Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -74,6 +73,7 @@
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc Changes COPYING README
+%doc Changes README
+%license COPYING
%changelog
++++++ AnyEvent-HTTP-2.23.tar.gz -> AnyEvent-HTTP-2.24.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/AnyEvent-HTTP-2.23/Changes
new/AnyEvent-HTTP-2.24/Changes
--- old/AnyEvent-HTTP-2.23/Changes 2016-08-28 11:30:38.000000000 +0200
+++ new/AnyEvent-HTTP-2.24/Changes 2018-08-30 03:23:10.000000000 +0200
@@ -3,15 +3,32 @@
TODO: provide lwp_request function that takes an lwp http requets and returns
a http response.
TODO: set_proxy hook
TODO: use proxy hook
-TODO: maybe read big chunks in smaller portions for chunked-encoding + on_body.
TODO: on_upgrade, for 101 responses?
TODO: document session vs. sessionid correctly.
TODO: support proxy username:password in both proxy switch and set_proxy
string ([email protected])
TODO: remove "unexpectedly got a destructed handle"
+TODO: maybe read big chunks in smaller portions for chunked-encoding + on_body.
TODO: callback as body (Kostirya)
TODO: infinite recursion(?) (Kostirya)
TODO: default rbuf_max value maybe? how about reading large chunks in small
parts?
+TODO: servers send empty reason, which then gets mangled with linear
whitespace CRLF - maybe workaround?
+
+TODO: look into http 0.9 support (Kostirya <[email protected]>)
+TODO:
http://appft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&%23038;d=PG01&%23038;p=1&%23038;u=/netahtml/PTO/srchnum.html&%23038;r=1&%23038;f=G&%23038;l=50&%23038;s1="20110298798".PGNR.&%23038;OS=DN/20110298798&%23038;RS=DN/20110298798
+
+2.24 Thu Aug 30 03:23:03 CEST 2018
+ - bring cookie management more in line with RFC 6265; implement idn
+ matching for cookie domains.
+ - update cookie_jar version to 2, invalidate existing cookie jars.
+ - preserve original cookie domain attribute.
+ - also expire old cookie jars in cookie parser, just in case.
+ - further improve relative redirection code.
+ - comment out code that tried to detect possible bugs with persistent
+ connection caching, but since it never triggered, it's probably
+ working fine :)
+ - do not call on_body callback on a response that AE::HTTP will recurse
+ on internally (reported by Антон Онуфриев and Ruslan Zakirov).
2.23 Sun Aug 28 11:30:33 CEST 2016
- relative redirects used the proxy schema instead of the request
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/AnyEvent-HTTP-2.23/HTTP.pm
new/AnyEvent-HTTP-2.24/HTTP.pm
--- old/AnyEvent-HTTP-2.23/HTTP.pm 2016-08-28 11:31:17.000000000 +0200
+++ new/AnyEvent-HTTP-2.24/HTTP.pm 2018-08-30 03:20:03.000000000 +0200
@@ -48,7 +48,7 @@
use base Exporter::;
-our $VERSION = 2.23;
+our $VERSION = 2.24;
our @EXPORT = qw(http_get http_post http_head http_request);
@@ -456,7 +456,7 @@
sub cookie_jar_expire($;$) {
my ($jar, $session_end) = @_;
- %$jar = () if $jar->{version} != 1;
+ %$jar = () if $jar->{version} != 2;
my $anow = AE::now;
@@ -486,20 +486,19 @@
sub cookie_jar_extract($$$$) {
my ($jar, $scheme, $host, $path) = @_;
- %$jar = () if $jar->{version} != 1;
+ %$jar = () if $jar->{version} != 2;
+
+ $host = AnyEvent::Util::idn_to_ascii $host
+ if $host =~ /[^\x00-\x7f]/;
my @cookies;
while (my ($chost, $paths) = each %$jar) {
next unless ref $paths;
- if ($chost =~ /^\./) {
- next unless $chost eq substr $host, -length $chost;
- } elsif ($chost =~ /\./) {
- next unless $chost eq $host;
- } else {
- next;
- }
+ # exact match or suffix including . match
+ $chost eq $host or ".$chost" eq substr $host, -1 - length $chost
+ or next;
while (my ($cpath, $cookies) = each %$paths) {
next unless $cpath eq substr $path, 0, length $cpath;
@@ -531,6 +530,8 @@
sub cookie_jar_set_cookie($$$$) {
my ($jar, $set_cookie, $host, $date) = @_;
+ %$jar = () if $jar->{version} != 2;
+
my $anow = int AE::now;
my $snow; # server-now
@@ -585,7 +586,7 @@
my $cpath = (delete $kv{path}) || "/";
if (exists $kv{domain}) {
- $cdom = delete $kv{domain};
+ $cdom = $kv{domain};
$cdom =~ s/^\.?/./; # make sure it starts with a "."
@@ -594,12 +595,14 @@
# this is not rfc-like and not netscape-like. go figure.
my $ndots = $cdom =~ y/.//;
next if $ndots < ($cdom =~ /\.[^.][^.]\.[^.][^.]$/ ? 3 : 2);
+
+ $cdom = substr $cdom, 1; # remove initial .
} else {
$cdom = $host;
}
# store it
- $jar->{version} = 1;
+ $jar->{version} = 2;
$jar->{lc $cdom}{$cpath}{$name} = \%kv;
redo if /\G\s*,/gc;
@@ -906,7 +909,7 @@
$loc =~ s/^\.\/+//;
if ($loc !~ m%^[.?#]%) {
- my $prefix = "$uscheme://$uhost:$uport";
+ my $prefix = "$uscheme://$uauthority";
unless ($loc =~ s/^\///) {
$prefix .= $upath;
@@ -1033,7 +1036,7 @@
} elsif ($chunked) {
my $cl = 0;
my $body = "";
- my $on_body = $arg{on_body} || sub { $body .= shift; 1 };
+ my $on_body = (!$redirect && $arg{on_body}) || sub { $body .=
shift; 1 };
$state{read_chunk} = sub {
$_[1] =~ /^([0-9a-fA-F]+)/
@@ -1076,7 +1079,7 @@
$_[0]->push_read (line => $state{read_chunk});
- } elsif ($arg{on_body}) {
+ } elsif (!$redirect && $arg{on_body}) {
if (defined $len) {
$_[0]->on_read (sub {
$len -= length $_[0]{rbuf};
@@ -1219,11 +1222,11 @@
$was_persistent = 1;
$state{handle} = ka_fetch $ka_key;
- $state{handle}->destroyed
- and die "AnyEvent::HTTP: unexpectedly got a destructed handle (1),
please report.";#d#
+# $state{handle}->destroyed
+# and die "AnyEvent::HTTP: unexpectedly got a destructed handle
(1), please report.";#d#
$prepare_handle->();
- $state{handle}->destroyed
- and die "AnyEvent::HTTP: unexpectedly got a destructed handle (2),
please report.";#d#
+# $state{handle}->destroyed
+# and die "AnyEvent::HTTP: unexpectedly got a destructed handle
(2), please report.";#d#
$handle_actual_request->();
} else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/AnyEvent-HTTP-2.23/META.json
new/AnyEvent-HTTP-2.24/META.json
--- old/AnyEvent-HTTP-2.23/META.json 2016-08-28 11:31:22.000000000 +0200
+++ new/AnyEvent-HTTP-2.24/META.json 2018-08-30 03:23:15.000000000 +0200
@@ -4,7 +4,7 @@
"unknown"
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 7.1, CPAN::Meta::Converter
version 2.150001",
+ "generated_by" : "ExtUtils::MakeMaker version 7.32, CPAN::Meta::Converter
version 2.150010",
"license" : [
"unknown"
],
@@ -41,5 +41,6 @@
}
},
"release_status" : "stable",
- "version" : 2.23
+ "version" : 2.24,
+ "x_serialization_backend" : "JSON::PP version 2.27300"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/AnyEvent-HTTP-2.23/META.yml
new/AnyEvent-HTTP-2.24/META.yml
--- old/AnyEvent-HTTP-2.23/META.yml 2016-08-28 11:31:22.000000000 +0200
+++ new/AnyEvent-HTTP-2.24/META.yml 2018-08-30 03:23:15.000000000 +0200
@@ -7,7 +7,7 @@
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 7.1, CPAN::Meta::Converter version
2.150001'
+generated_by: 'ExtUtils::MakeMaker version 7.32, CPAN::Meta::Converter version
2.150010'
license: unknown
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -22,4 +22,5 @@
requires:
AnyEvent: '5.33'
common::sense: '3.3'
-version: 2.23
+version: 2.24
+x_serialization_backend: 'CPAN::Meta::YAML version 0.012'