Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Archive-Extract for
openSUSE:Factory checked in at 2021-05-12 19:31:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Archive-Extract (Old)
and /work/SRC/openSUSE:Factory/.perl-Archive-Extract.new.2988 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Archive-Extract"
Wed May 12 19:31:29 2021 rev:9 rq:891850 version:0.88
Changes:
--------
---
/work/SRC/openSUSE:Factory/perl-Archive-Extract/perl-Archive-Extract.changes
2019-12-11 12:04:43.216750572 +0100
+++
/work/SRC/openSUSE:Factory/.perl-Archive-Extract.new.2988/perl-Archive-Extract.changes
2021-05-12 19:31:47.091144821 +0200
@@ -1,0 +2,9 @@
+Fri May 7 03:06:04 UTC 2021 - Tina M??ller <[email protected]>
+
+- updated to 0.88
+ see /usr/share/doc/packages/perl-Archive-Extract/CHANGES
+
+ 0.88 Thu May 6 14:11:31 BST 2021
+ * Refactor type detection into type_for() function
+
+-------------------------------------------------------------------
Old:
----
Archive-Extract-0.86.tar.gz
New:
----
Archive-Extract-0.88.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Archive-Extract.spec ++++++
--- /var/tmp/diff_new_pack.NGKlRH/_old 2021-05-12 19:31:47.639142632 +0200
+++ /var/tmp/diff_new_pack.NGKlRH/_new 2021-05-12 19:31:47.639142632 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Archive-Extract
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,18 +16,16 @@
#
+%define cpan_name Archive-Extract
Name: perl-Archive-Extract
-Version: 0.86
+Version: 0.88
Release: 0
-%define cpan_name Archive-Extract
Summary: Generic archive extracting mechanism
License: Artistic-1.0 OR GPL-1.0-or-later
-Group: Development/Libraries/Perl
-Url: https://metacpan.org/release/%{cpan_name}
+URL: https://metacpan.org/release/%{cpan_name}
Source0:
https://cpan.metacpan.org/authors/id/B/BI/BINGOS/%{cpan_name}-%{version}.tar.gz
Source1: cpanspec.yml
BuildArch: noarch
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(IPC::Cmd) >= 0.64
@@ -51,11 +49,11 @@
See the 'HOW IT WORKS' section further down for details.
%prep
-%setup -q -n %{cpan_name}-%{version}
+%autosetup -n %{cpan_name}-%{version}
%build
perl Makefile.PL INSTALLDIRS=vendor
-make %{?_smp_mflags}
+%make_build
%check
make test
@@ -66,7 +64,6 @@
%perl_gen_filelist
%files -f %{name}.files
-%defattr(-,root,root,755)
%doc CHANGES README
%changelog
++++++ Archive-Extract-0.86.tar.gz -> Archive-Extract-0.88.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Archive-Extract-0.86/CHANGES
new/Archive-Extract-0.88/CHANGES
--- old/Archive-Extract-0.86/CHANGES 2019-12-05 21:54:46.000000000 +0100
+++ new/Archive-Extract-0.88/CHANGES 2021-05-06 15:11:57.000000000 +0200
@@ -1,3 +1,6 @@
+0.88 Thu May 6 14:11:31 BST 2021
+* Refactor type detection into type_for() function
+
0.86 Thu Dec 5 20:53:07 GMT 2019
* Fix RT#131072 which was due to tar.exe and CRLF line endings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Archive-Extract-0.86/META.json
new/Archive-Extract-0.88/META.json
--- old/Archive-Extract-0.86/META.json 2019-12-05 21:55:39.000000000 +0100
+++ new/Archive-Extract-0.88/META.json 2021-05-06 15:13:14.000000000 +0200
@@ -4,7 +4,7 @@
"Jos Boumans <kane[at]cpan.org>"
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 7.38, CPAN::Meta::Converter
version 2.150010",
+ "generated_by" : "ExtUtils::MakeMaker version 7.62, CPAN::Meta::Converter
version 2.150010",
"license" : [
"perl_5"
],
@@ -50,6 +50,6 @@
"url" : "https://github.com/jib/archive-extract"
}
},
- "version" : "0.86",
- "x_serialization_backend" : "JSON::PP version 4.04"
+ "version" : "0.88",
+ "x_serialization_backend" : "JSON::PP version 4.06"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Archive-Extract-0.86/META.yml
new/Archive-Extract-0.88/META.yml
--- old/Archive-Extract-0.86/META.yml 2019-12-05 21:55:39.000000000 +0100
+++ new/Archive-Extract-0.88/META.yml 2021-05-06 15:13:14.000000000 +0200
@@ -7,7 +7,7 @@
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 7.38, CPAN::Meta::Converter version
2.150010'
+generated_by: 'ExtUtils::MakeMaker version 7.62, CPAN::Meta::Converter version
2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -29,5 +29,5 @@
if: '0'
resources:
repository: https://github.com/jib/archive-extract
-version: '0.86'
+version: '0.88'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Archive-Extract-0.86/lib/Archive/Extract.pm
new/Archive-Extract-0.88/lib/Archive/Extract.pm
--- old/Archive-Extract-0.86/lib/Archive/Extract.pm 2019-12-05
21:55:01.000000000 +0100
+++ new/Archive-Extract-0.88/lib/Archive/Extract.pm 2021-05-06
15:12:17.000000000 +0200
@@ -48,7 +48,7 @@
$_ALLOW_BIN $_ALLOW_PURE_PERL $_ALLOW_TAR_ITER
];
-$VERSION = '0.86';
+$VERSION = '0.88';
$PREFER_BIN = 0;
$WARN = 1;
$DEBUG = 0;
@@ -188,6 +188,21 @@
}
}
+sub type_for {
+ local $_ = shift;
+ return /.+?\.(?:tar\.gz|tgz)$/i ? TGZ :
+ /.+?\.gz$/i ? GZ :
+ /.+?\.tar$/i ? TAR :
+ /.+?\.(zip|jar|ear|war|par)$/i ? ZIP :
+ /.+?\.(?:tbz2?|tar\.bz2?)$/i ? TBZ :
+ /.+?\.bz2$/i ? BZ2 :
+ /.+?\.Z$/ ? Z :
+ /.+?\.lzma$/ ? LZMA :
+ /.+?\.(?:txz|tar\.xz)$/i ? TXZ :
+ /.+?\.xz$/ ? XZ :
+ '';
+}
+
=head1 METHODS
=head2 $ae = Archive::Extract->new(archive => '/path/to/archive',[type =>
TYPE])
@@ -195,7 +210,7 @@
Creates a new C<Archive::Extract> object based on the archive file you
passed it. Automatically determines the type of archive based on the
extension, but you can override that by explicitly providing the
-C<type> argument.
+C<type> argument, potentially by calling C<type_for()>.
Valid values for C<type> are:
@@ -272,21 +287,7 @@
my $ar = $parsed->{archive} = File::Spec->rel2abs( $parsed->{archive}
);
### figure out the type, if it wasn't already specified ###
- unless ( $parsed->{type} ) {
- $parsed->{type} =
- $ar =~ /.+?\.(?:tar\.gz|tgz)$/i ? TGZ :
- $ar =~ /.+?\.gz$/i ? GZ :
- $ar =~ /.+?\.tar$/i ? TAR :
- $ar =~ /.+?\.(zip|jar|ear|war|par)$/i ? ZIP :
- $ar =~ /.+?\.(?:tbz2?|tar\.bz2?)$/i ? TBZ :
- $ar =~ /.+?\.bz2$/i ? BZ2 :
- $ar =~ /.+?\.Z$/ ? Z :
- $ar =~ /.+?\.lzma$/ ? LZMA :
- $ar =~ /.+?\.(?:txz|tar\.xz)$/i ? TXZ :
- $ar =~ /.+?\.xz$/ ? XZ :
- '';
-
- }
+ $parsed->{type} ||= type_for $ar;
bless $parsed, $class;
@@ -1619,6 +1620,22 @@
=pod
+=head1 UTILITY FUNCTION
+
+=head2 type_for($archive)
+
+Given an archive file name, it determins the type by parsing the file
+name extension. Used by C<new()> when the C<type> parameter is not passed.
+Also useful when the archive file does not include a suffix but the file
+name is otherwise known, such as when a file is uploaded to a web server
+and stored with a temporary name that differs from the original name, and
+you want to use the same detection pattern as Archive::Extract. Example:
+
+ my $ae = Archive::Extract->new(
+ archive => '/tmp/02af6s',
+ type => Archive::Extract::type_for('archive.zip'),
+ );
+
=head1 HOW IT WORKS
C<Archive::Extract> tries first to determine what type of archive you
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Archive-Extract-0.86/t/01_Archive-Extract.t
new/Archive-Extract-0.88/t/01_Archive-Extract.t
--- old/Archive-Extract-0.86/t/01_Archive-Extract.t 2013-05-12
17:18:41.000000000 +0200
+++ new/Archive-Extract-0.88/t/01_Archive-Extract.t 2021-05-06
13:32:13.000000000 +0200
@@ -279,6 +279,21 @@
like( $warnings, qr/Cannot determine file type for/,
" Error is: unknown file type" );
}
+
+ ### test reading the type
+ my %type_exts = map { $_ => [$_] } @types;
+ push @{ $type_exts{tgz} } => qw(tar.gz);
+ push @{ $type_exts{zip} } => qw(jar ear war par);
+ push @{ $type_exts{tbz} } => qw(tbz2 tar.bz tar.bz2);
+ push @{ $type_exts{txz} } => qw(tar.xz);
+ while (my ($type, $exts) = each %type_exts) {
+ for my $ext (@{ $exts }) {
+ is(
+ Archive::Extract::type_for("foo.$ext"), $type,
+ "Should detect type '$type' for 'foo.$ext",
+ );
+ }
+ }
}
### test multiple errors