Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Cookie-Baker for
openSUSE:Factory checked in at 2024-03-08 18:08:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Cookie-Baker (Old)
and /work/SRC/openSUSE:Factory/.perl-Cookie-Baker.new.1770 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Cookie-Baker"
Fri Mar 8 18:08:45 2024 rev:7 rq:1156054 version:0.120.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Cookie-Baker/perl-Cookie-Baker.changes
2019-06-12 13:14:14.288820519 +0200
+++
/work/SRC/openSUSE:Factory/.perl-Cookie-Baker.new.1770/perl-Cookie-Baker.changes
2024-03-08 18:08:46.741228874 +0100
@@ -1,0 +2,12 @@
+Sat Jan 6 03:06:08 UTC 2024 - Tina Müller <[email protected]>
+
+- updated to 0.12
+ see /usr/share/doc/packages/perl-Cookie-Baker/Changes
+
+ 0.12 2024-01-05T08:27:56Z
+
+ - Support CHIPS #20
+ - Set secure when SameSite=None #21
+ Thank you yoshikazusawa.
+
+-------------------------------------------------------------------
Old:
----
Cookie-Baker-0.11.tar.gz
New:
----
Cookie-Baker-0.12.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Cookie-Baker.spec ++++++
--- /var/tmp/diff_new_pack.NUxv0D/_old 2024-03-08 18:08:47.185245556 +0100
+++ /var/tmp/diff_new_pack.NUxv0D/_new 2024-03-08 18:08:47.185245556 +0100
@@ -1,7 +1,7 @@
#
# spec file for package perl-Cookie-Baker
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,32 +16,34 @@
#
+%define cpan_name Cookie-Baker
Name: perl-Cookie-Baker
-Version: 0.11
+Version: 0.120.0
Release: 0
-%define cpan_name Cookie-Baker
-Summary: Cookie string generator / parser
+%define cpan_version 0.12
License: Artistic-1.0 OR GPL-1.0-or-later
-Group: Development/Libraries/Perl
-Url: https://metacpan.org/release/%{cpan_name}
-Source0:
https://cpan.metacpan.org/authors/id/K/KA/KAZEBURO/%{cpan_name}-%{version}.tar.gz
+Summary: Cookie string generator / parser
+URL: https://metacpan.org/release/%{cpan_name}
+Source0:
https://cpan.metacpan.org/authors/id/K/KA/KAZEBURO/%{cpan_name}-%{cpan_version}.tar.gz
Source1: cpanspec.yml
BuildArch: noarch
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
+BuildRequires: perl(Module::Build)
BuildRequires: perl(Module::Build::Tiny) >= 0.035
BuildRequires: perl(Test::More) >= 0.98
BuildRequires: perl(Test::Time)
BuildRequires: perl(URI::Escape)
Requires: perl(URI::Escape)
+Provides: perl(Cookie::Baker) = %{version}
+%define __perllib_provides /bin/true
%{perl_requires}
%description
Cookie::Baker provides simple cookie string generator and parser.
%prep
-%setup -q -n %{cpan_name}-%{version}
+%autosetup -n %{cpan_name}-%{cpan_version}
%build
perl Build.PL --installdirs=vendor
@@ -55,7 +57,6 @@
%perl_gen_filelist
%files -f %{name}.files
-%defattr(-,root,root,755)
-%doc Changes minil.toml README.md
+%doc Changes README.md
%license LICENSE
++++++ Cookie-Baker-0.11.tar.gz -> Cookie-Baker-0.12.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Cookie-Baker-0.11/Changes
new/Cookie-Baker-0.12/Changes
--- old/Cookie-Baker-0.11/Changes 2019-06-07 08:27:51.000000000 +0200
+++ new/Cookie-Baker-0.12/Changes 2024-01-05 09:28:00.000000000 +0100
@@ -1,5 +1,11 @@
Revision history for Perl extension Cookie-Baker
+0.12 2024-01-05T08:27:56Z
+
+ - Support CHIPS #20
+ - Set secure when SameSite=None #21
+ Thank you yoshikazusawa.
+
0.11 2019-06-07T06:27:50Z
- Supportt SameSite=None https://github.com/kazeburo/Cookie-Baker/pull/15
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Cookie-Baker-0.11/META.json
new/Cookie-Baker-0.12/META.json
--- old/Cookie-Baker-0.11/META.json 2019-06-07 08:27:51.000000000 +0200
+++ new/Cookie-Baker-0.12/META.json 2024-01-05 09:28:00.000000000 +0100
@@ -4,7 +4,7 @@
"Masahiro Nagano <[email protected]>"
],
"dynamic_config" : 0,
- "generated_by" : "Minilla/v3.1.1",
+ "generated_by" : "Minilla/v3.1.23",
"license" : [
"perl_5"
],
@@ -35,7 +35,7 @@
"requires" : {
"Test::CPAN::Meta" : "0",
"Test::MinimumVersion::Fast" : "0.04",
- "Test::PAUSE::Permissions" : "0.04",
+ "Test::PAUSE::Permissions" : "0.07",
"Test::Pod" : "1.41",
"Test::Spellunker" : "v0.2.7"
}
@@ -60,7 +60,7 @@
"provides" : {
"Cookie::Baker" : {
"file" : "lib/Cookie/Baker.pm",
- "version" : "0.11"
+ "version" : "0.12"
}
},
"release_status" : "stable",
@@ -70,18 +70,20 @@
},
"homepage" : "https://github.com/kazeburo/Cookie-Baker",
"repository" : {
- "url" : "git://github.com/kazeburo/Cookie-Baker.git",
+ "type" : "git",
+ "url" : "https://github.com/kazeburo/Cookie-Baker.git",
"web" : "https://github.com/kazeburo/Cookie-Baker"
}
},
- "version" : "0.11",
+ "version" : "0.12",
"x_contributors" : [
"David Romano <[email protected]>",
"Ichinose Shogo <[email protected]>",
"Olaf Alders <[email protected]>",
"Shoichi Kaji <[email protected]>",
- "kwry <[email protected]>"
+ "kwry <[email protected]>",
+ "yoshikazusawa <[email protected]>"
],
- "x_serialization_backend" : "JSON::PP version 2.27300_01",
+ "x_serialization_backend" : "JSON::PP version 4.07",
"x_static_install" : 1
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Cookie-Baker-0.11/META.yml
new/Cookie-Baker-0.12/META.yml
--- old/Cookie-Baker-0.11/META.yml 2019-06-07 08:27:51.000000000 +0200
+++ new/Cookie-Baker-0.12/META.yml 2024-01-05 09:28:00.000000000 +0100
@@ -8,7 +8,7 @@
configure_requires:
Module::Build::Tiny: '0.035'
dynamic_config: 0
-generated_by: 'Minilla/v3.1.1, CPAN::Meta::Converter version 2.150005'
+generated_by: 'Minilla/v3.1.23, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -27,7 +27,7 @@
provides:
Cookie::Baker:
file: lib/Cookie/Baker.pm
- version: '0.11'
+ version: '0.12'
requires:
Exporter: '0'
URI::Escape: '0'
@@ -35,13 +35,14 @@
resources:
bugtracker: https://github.com/kazeburo/Cookie-Baker/issues
homepage: https://github.com/kazeburo/Cookie-Baker
- repository: git://github.com/kazeburo/Cookie-Baker.git
-version: '0.11'
+ repository: https://github.com/kazeburo/Cookie-Baker.git
+version: '0.12'
x_contributors:
- 'David Romano <[email protected]>'
- 'Ichinose Shogo <[email protected]>'
- 'Olaf Alders <[email protected]>'
- 'Shoichi Kaji <[email protected]>'
- 'kwry <[email protected]>'
+ - 'yoshikazusawa <[email protected]>'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
x_static_install: 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Cookie-Baker-0.11/README.md
new/Cookie-Baker-0.12/README.md
--- old/Cookie-Baker-0.11/README.md 2019-06-07 08:27:51.000000000 +0200
+++ new/Cookie-Baker-0.12/README.md 2024-01-05 09:28:00.000000000 +0100
@@ -16,7 +16,7 @@
# XS IMPLEMENTATION
-This module tries to use
[Cookie::Baker::XS](https://metacpan.org/pod/Cookie::Baker::XS)'s crush\_cookie
by default.
+This module tries to use
[Cookie::Baker::XS](https://metacpan.org/pod/Cookie%3A%3ABaker%3A%3AXS)'s
crush\_cookie by default.
If this fails, it will use Cookie::Baker's pure Perl crush\_cookie.
There is no XS implementation of bake\_cookie yet.
@@ -46,6 +46,11 @@
Cookie's domain.
+ - partitioned
+
+ If true, sets Partitioned flag, and also enforces secure,
SameSite=None. false by default.
+ [Cookies Having Independent Partitioned State
specification](https://www.ietf.org/archive/id/draft-cutler-httpbis-partitioned-cookies-00.html)
+
- expires
Cookie's expires date time. Several formats are supported:
@@ -93,7 +98,7 @@
CPAN already has many cookie related modules. But there is no simple cookie
string generator and parser module.
-[CGI](https://metacpan.org/pod/CGI),
[CGI::Simple](https://metacpan.org/pod/CGI::Simple),
[Plack](https://metacpan.org/pod/Plack),
[Dancer::Cookie](https://metacpan.org/pod/Dancer::Cookie)
+[CGI](https://metacpan.org/pod/CGI),
[CGI::Simple](https://metacpan.org/pod/CGI%3A%3ASimple),
[Plack](https://metacpan.org/pod/Plack),
[Dancer::Cookie](https://metacpan.org/pod/Dancer%3A%3ACookie)
# LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Cookie-Baker-0.11/lib/Cookie/Baker.pm
new/Cookie-Baker-0.12/lib/Cookie/Baker.pm
--- old/Cookie-Baker-0.11/lib/Cookie/Baker.pm 2019-06-07 08:27:51.000000000
+0200
+++ new/Cookie-Baker-0.12/lib/Cookie/Baker.pm 2024-01-05 09:28:00.000000000
+0100
@@ -7,7 +7,7 @@
use URI::Escape;
BEGIN {
- our $VERSION = "0.11";
+ our $VERSION = "0.12";
our @EXPORT = qw/bake_cookie crush_cookie/;
my $use_pp = $ENV{COOKIE_BAKER_PP};
if (!$use_pp) {
@@ -33,6 +33,11 @@
return '' unless defined $val;
my %args = ref $val ? %{$val} : (value => $val);
+ if ($args{partitioned}) {
+ # enforce SameSite=None; and secure; on CHIPS (Cookies Having
Independent Partitioned State)
+ $args{samesite} = 'none';
+ $args{secure} = 1;
+ }
$name = URI::Escape::uri_escape($name) if $name =~ m![^a-zA-Z\-\._~]!;
my $cookie = "$name=" . URI::Escape::uri_escape($args{value}) . '; ';
$cookie .= 'domain=' . $args{domain} . '; ' if $args{domain};
@@ -40,10 +45,14 @@
$cookie .= 'expires=' . _date($args{expires}) . '; ' if exists
$args{expires} && defined $args{expires};
$cookie .= 'max-age=' . $args{"max-age"} . '; ' if exists $args{"max-age"};
if (exists $args{samesite} && $args{samesite} =~ m/^(?:lax|strict|none)/i)
{
- $cookie .= 'SameSite=' . ucfirst(lc($args{samesite})) . '; '
+ $cookie .= 'SameSite=' . ucfirst(lc($args{samesite})) . '; ';
+ # secure flag must be set when SameSite=None
+ $args{secure} = 1 if $cookie =~ m/SameSite=None; /;
}
$cookie .= 'secure; ' if $args{secure};
$cookie .= 'HttpOnly; ' if $args{httponly};
+ $cookie .= 'Partitioned; ' if $args{partitioned};
+
substr($cookie,-2,2,'');
$cookie;
}
@@ -168,6 +177,11 @@
Cookie's domain.
+=item partitioned
+
+If true, sets Partitioned flag, and also enforces secure, SameSite=None. false
by default.
+L<Cookies Having Independent Partitioned State
specification|https://www.ietf.org/archive/id/draft-cutler-httpbis-partitioned-cookies-00.html>
+
=item expires
Cookie's expires date time. Several formats are supported:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Cookie-Baker-0.11/t/01_bake.t
new/Cookie-Baker-0.12/t/01_bake.t
--- old/Cookie-Baker-0.11/t/01_bake.t 2019-06-07 08:27:51.000000000 +0200
+++ new/Cookie-Baker-0.12/t/01_bake.t 2024-01-05 09:28:00.000000000 +0100
@@ -12,8 +12,10 @@
[ 'foo', { value => 'foo bar baz' }, 'foo=foo%20bar%20baz'],
[ 'foo', { value => 'val',expires => undef }, 'foo=val'],
[ 'foo', { value => 'val',path => '/' }, 'foo=val; path=/'],
- [ 'foo', { value => 'val',path => '/', secure => 1, httponly => 0 },
'foo=val; path=/; secure'],
- [ 'foo', { value => 'val',path => '/', secure => 0, httponly => 1 },
'foo=val; path=/; HttpOnly'],
+ [ 'foo', { value => 'val',path => '/', secure => 0, httponly => 0,
partitioned => 0 }, 'foo=val; path=/'],
+ [ 'foo', { value => 'val',path => '/', secure => 1, httponly => 0,
partitioned => 0 }, 'foo=val; path=/; secure'],
+ [ 'foo', { value => 'val',path => '/', secure => 0, httponly => 1,
partitioned => 0 }, 'foo=val; path=/; HttpOnly'],
+ [ 'foo', { value => 'val',path => '/', secure => 0, httponly => 0,
partitioned => 1 }, 'foo=val; path=/; SameSite=None; secure; Partitioned'],
[ 'foo', { value => 'val',expires => 'now' }, 'foo=val; expires=Mon,
07-Oct-2013 13:56:57 GMT'],
[ 'foo', { value => 'val',expires => $now + 24*60*60 }, 'foo=val;
expires=Tue, 08-Oct-2013 13:56:57 GMT'],
[ 'foo', { value => 'val',expires => '1s' }, 'foo=val; expires=Mon,
07-Oct-2013 13:56:58 GMT'],
@@ -31,8 +33,10 @@
[ 'foo', { value => 'val','max-age' => '0' }, 'foo=val; max-age=0'],
[ 'foo', { value => 'val', samesite => 'lax' }, 'foo=val; SameSite=Lax'],
[ 'foo', { value => 'val', samesite => 'strict' }, 'foo=val;
SameSite=Strict'],
- [ 'foo', { value => 'val', samesite => 'none' }, 'foo=val; SameSite=None'],
+ [ 'foo', { value => 'val', samesite => 'none' }, 'foo=val; SameSite=None;
secure'],
+ [ 'foo', { value => 'val', samesite => 'none', secure => 0 }, 'foo=val;
SameSite=None; secure'],
[ 'foo', { value => 'val', samesite => 'invalid value' }, 'foo=val'],
+ [ 'foo', { value => 'val', samesite => 'strict', partitioned => 1 },
'foo=val; SameSite=None; secure; Partitioned'],
);
for my $test (@tests) {