Hello community, here is the log from the commit of package perl-Archive-Zip for openSUSE:Factory checked in at 2015-07-02 22:44:28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Archive-Zip (Old) and /work/SRC/openSUSE:Factory/.perl-Archive-Zip.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Archive-Zip" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Archive-Zip/perl-Archive-Zip.changes 2015-04-16 14:11:59.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-Archive-Zip.new/perl-Archive-Zip.changes 2015-07-02 22:44:28.000000000 +0200 @@ -1,0 +2,13 @@ +Sun Jun 21 08:16:04 UTC 2015 - [email protected] + +- updated to 1.48 + see /usr/share/doc/packages/perl-Archive-Zip/Changes + + 1.48 Thu 18 Jun 2015 + - Wrap skip in a SKIP: block [github/plicease] + + 1.47 Wed 17 Jun 2015 + - zip file with a deflated directory cannot be written out again [github/ntyni] + - add missing test data to MANIFEST + +------------------------------------------------------------------- Old: ---- Archive-Zip-1.46.tar.gz New: ---- Archive-Zip-1.48.tar.gz cpanspec.yml ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Archive-Zip.spec ++++++ --- /var/tmp/diff_new_pack.1ttPAX/_old 2015-07-02 22:44:29.000000000 +0200 +++ /var/tmp/diff_new_pack.1ttPAX/_new 2015-07-02 22:44:29.000000000 +0200 @@ -17,14 +17,15 @@ Name: perl-Archive-Zip -Version: 1.46 +Version: 1.48 Release: 0 %define cpan_name Archive-Zip -Summary: Provide an interface to ZIP archive files. +Summary: Provide an interface to ZIP archive files License: Artistic-1.0 or GPL-1.0+ Group: Development/Libraries/Perl Url: http://search.cpan.org/dist/Archive-Zip/ -Source: http://www.cpan.org/authors/id/P/PH/PHRED/%{cpan_name}-%{version}.tar.gz +Source0: http://www.cpan.org/authors/id/P/PH/PHRED/%{cpan_name}-%{version}.tar.gz +Source1: cpanspec.yml BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl ++++++ Archive-Zip-1.46.tar.gz -> Archive-Zip-1.48.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/Changes new/Archive-Zip-1.48/Changes --- old/Archive-Zip-1.46/Changes 2015-03-25 06:16:44.000000000 +0100 +++ new/Archive-Zip-1.48/Changes 2015-06-18 23:12:33.000000000 +0200 @@ -1,5 +1,12 @@ Revision history for Perl extension Archive-Zip +1.48 Thu 18 Jun 2015 + - Wrap skip in a SKIP: block [github/plicease] + +1.47 Wed 17 Jun 2015 + - zip file with a deflated directory cannot be written out again [github/ntyni] + - add missing test data to MANIFEST + 1.46 Tue 24 Mar 2015 - "CRC or size mismatch" when extracting member second time [github/AGWA github/pwr22] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/MANIFEST new/Archive-Zip-1.48/MANIFEST --- old/Archive-Zip-1.46/MANIFEST 2015-03-25 06:17:42.000000000 +0100 +++ new/Archive-Zip-1.48/MANIFEST 2015-06-18 23:12:53.000000000 +0200 @@ -52,14 +52,20 @@ t/17_101092.t t/18_bug_92205.t t/19_bug_101240.t +t/20_bug_github11.t +t/21_zip64.t +t/22_deflated_dir.t t/badjpeg/expected.jpg t/badjpeg/source.zip t/common.pm +t/data/bad_github11.zip t/data/chmod.zip t/data/crypcomp.zip t/data/crypt.zip t/data/def.zip t/data/defstr.zip +t/data/good_github11.zip +t/data/jar.zip t/data/store.zip t/data/storestr.zip t/data/emptydef.zip @@ -71,5 +77,6 @@ t/data/perl.zip t/data/streamed.zip t/data/winzip.zip +t/data/zip64.zip META.yml Module YAML meta-data (added by MakeMaker) META.json Module JSON meta-data (added by MakeMaker) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/META.json new/Archive-Zip-1.48/META.json --- old/Archive-Zip-1.46/META.json 2015-03-25 06:17:42.000000000 +0100 +++ new/Archive-Zip-1.48/META.json 2015-06-18 23:12:53.000000000 +0200 @@ -4,7 +4,7 @@ "Ned Konz <[email protected]>" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.142690", + "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.142690", "license" : [ "perl_5" ], @@ -53,5 +53,5 @@ "url" : "https://github.com/redhotpenguin/perl-Archive-Zip-svn" } }, - "version" : "1.46" + "version" : "1.48" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/META.yml new/Archive-Zip-1.48/META.yml --- old/Archive-Zip-1.46/META.yml 2015-03-25 06:17:42.000000000 +0100 +++ new/Archive-Zip-1.48/META.yml 2015-06-18 23:12:53.000000000 +0200 @@ -7,7 +7,7 @@ configure_requires: ExtUtils::MakeMaker: '0' dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 6.6302, CPAN::Meta::Converter version 2.142690' +generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.142690' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -32,4 +32,4 @@ perl: '5.006' resources: repository: https://github.com/redhotpenguin/perl-Archive-Zip-svn -version: '1.46' +version: '1.48' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/Archive.pm new/Archive-Zip-1.48/lib/Archive/Zip/Archive.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/Archive.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/Archive.pm 2015-06-18 23:12:25.000000000 +0200 @@ -13,7 +13,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw( Archive::Zip ); if ($^O eq 'MSWin32') { @@ -657,6 +657,15 @@ $zipfileCommentLength ) = unpack(END_OF_CENTRAL_DIRECTORY_FORMAT, $header); + if ($self->{'diskNumber'} == 0xFFFF || + $self->{'diskNumberWithStartOfCentralDirectory'} == 0xFFFF || + $self->{'numberOfCentralDirectoriesOnThisDisk'} == 0xFFFF || + $self->{'numberOfCentralDirectories'} == 0xFFFF || + $self->{'centralDirectorySize'} == 0xFFFFFFFF || + $self->{'centralDirectoryOffsetWRTStartingDiskNumber'} == 0xFFFFFFFF) { + return _formatError("zip64 not supported"); + } + if ($zipfileCommentLength) { my $zipfileComment = ''; $bytesRead = $fh->read($zipfileComment, $zipfileCommentLength); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/BufferedFileHandle.pm new/Archive-Zip-1.48/lib/Archive/Zip/BufferedFileHandle.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/BufferedFileHandle.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/BufferedFileHandle.pm 2015-06-18 23:12:25.000000000 +0200 @@ -13,7 +13,7 @@ use vars qw{$VERSION}; BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; $VERSION = eval $VERSION; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/DirectoryMember.pm new/Archive-Zip-1.48/lib/Archive/Zip/DirectoryMember.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/DirectoryMember.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/DirectoryMember.pm 2015-06-18 23:12:25.000000000 +0200 @@ -6,7 +6,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw( Archive::Zip::Member ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/FileMember.pm new/Archive-Zip-1.48/lib/Archive/Zip/FileMember.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/FileMember.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/FileMember.pm 2015-06-18 23:12:25.000000000 +0200 @@ -4,7 +4,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw ( Archive::Zip::Member ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/Member.pm new/Archive-Zip-1.48/lib/Archive/Zip/Member.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/Member.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/Member.pm 2015-06-18 23:12:25.000000000 +0200 @@ -6,7 +6,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw( Archive::Zip ); if ($^O eq 'MSWin32') { @@ -1086,6 +1086,7 @@ my ($outRef, $status) = $self->readChunk($chunkSize); symlink $$outRef, $self->{'newName'}; } else { + return AZ_OK if ($self->uncompressedSize() == 0); my $status; my $chunkSize = $Archive::Zip::ChunkSize; while ($self->_readDataRemaining() > 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/MemberRead.pm new/Archive-Zip-1.48/lib/Archive/Zip/MemberRead.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/MemberRead.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/MemberRead.pm 2015-06-18 23:12:25.000000000 +0200 @@ -40,7 +40,7 @@ my $nl; BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; $VERSION = eval $VERSION; # Requirement for newline conversion. Should check for e.g., DOS and OS/2 as well, but am too lazy. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/MockFileHandle.pm new/Archive-Zip-1.48/lib/Archive/Zip/MockFileHandle.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/MockFileHandle.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/MockFileHandle.pm 2015-06-18 23:12:25.000000000 +0200 @@ -10,7 +10,7 @@ use vars qw{$VERSION}; BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; $VERSION = eval $VERSION; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/NewFileMember.pm new/Archive-Zip-1.48/lib/Archive/Zip/NewFileMember.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/NewFileMember.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/NewFileMember.pm 2015-06-18 23:12:25.000000000 +0200 @@ -4,7 +4,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw ( Archive::Zip::FileMember ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/StringMember.pm new/Archive-Zip-1.48/lib/Archive/Zip/StringMember.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/StringMember.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/StringMember.pm 2015-06-18 23:12:25.000000000 +0200 @@ -4,7 +4,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw( Archive::Zip::Member ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/Tree.pm new/Archive-Zip-1.48/lib/Archive/Zip/Tree.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/Tree.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/Tree.pm 2015-06-18 23:12:25.000000000 +0200 @@ -4,7 +4,7 @@ use vars qw{$VERSION}; BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; } use Archive::Zip; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip/ZipFileMember.pm new/Archive-Zip-1.48/lib/Archive/Zip/ZipFileMember.pm --- old/Archive-Zip-1.46/lib/Archive/Zip/ZipFileMember.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip/ZipFileMember.pm 2015-06-18 23:12:25.000000000 +0200 @@ -4,7 +4,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; @ISA = qw ( Archive::Zip::FileMember ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/lib/Archive/Zip.pm new/Archive-Zip-1.48/lib/Archive/Zip.pm --- old/Archive-Zip-1.46/lib/Archive/Zip.pm 2015-03-25 06:17:24.000000000 +0100 +++ new/Archive-Zip-1.48/lib/Archive/Zip.pm 2015-06-18 23:12:25.000000000 +0200 @@ -14,7 +14,7 @@ use vars qw( $VERSION @ISA ); BEGIN { - $VERSION = '1.46'; + $VERSION = '1.48'; require Exporter; @ISA = qw( Exporter ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/t/20_bug_github11.t new/Archive-Zip-1.48/t/20_bug_github11.t --- old/Archive-Zip-1.46/t/20_bug_github11.t 1970-01-01 01:00:00.000000000 +0100 +++ new/Archive-Zip-1.48/t/20_bug_github11.t 2015-06-18 23:10:58.000000000 +0200 @@ -0,0 +1,39 @@ +#!/usr/bin/perl + +# Github 11: "CRC or size mismatch" when extracting member second time +# Test for correct functionality to prevent regression + +use strict; +use warnings; + +use Archive::Zip qw( :ERROR_CODES ); +use File::Spec; +use File::Path; +use t::common; + +use Test::More tests => 2; + +# create test env +my $GH_ISSUE = 'github11'; +my $TEST_NAME = "20_bug_$GH_ISSUE"; +my $TEST_DIR = File::Spec->catdir(TESTDIR, $TEST_NAME); +mkpath($TEST_DIR); + +# test 1 +my $DATA_DIR = File::Spec->catfile('t', 'data'); +my $GOOD_ZIP_FILE = File::Spec->catfile($DATA_DIR, "good_${GH_ISSUE}.zip"); +my $GOOD_ZIP = Archive::Zip->new($GOOD_ZIP_FILE); +my $MEMBER_FILE = 'FILE'; +my $member = $GOOD_ZIP->memberNamed($MEMBER_FILE); +my $OUT_FILE = File::Spec->catfile($TEST_DIR, "out"); +# Extracting twice triggered the bug +$member->extractToFileNamed($OUT_FILE); +is($member->extractToFileNamed($OUT_FILE), AZ_OK, 'Testing known good zip'); + +# test 2 +my $BAD_ZIP_FILE = File::Spec->catfile($DATA_DIR, "bad_${GH_ISSUE}.zip"); +my $BAD_ZIP = Archive::Zip->new($BAD_ZIP_FILE); +$member = $BAD_ZIP->memberNamed($MEMBER_FILE); +# Extracting twice triggered the bug +$member->extractToFileNamed($OUT_FILE); +is($member->extractToFileNamed($OUT_FILE), AZ_OK, 'Testing known bad zip'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/t/21_zip64.t new/Archive-Zip-1.48/t/21_zip64.t --- old/Archive-Zip-1.46/t/21_zip64.t 1970-01-01 01:00:00.000000000 +0100 +++ new/Archive-Zip-1.48/t/21_zip64.t 2015-06-18 23:10:58.000000000 +0200 @@ -0,0 +1,20 @@ +#!/usr/bin/perl + +# Test to make sure zip64 files are properly detected + +use strict; +use warnings; + +use Archive::Zip qw( :ERROR_CODES ); +use File::Spec; +use t::common; + +use Test::More tests => 1; + +my $DATA_DIR = File::Spec->catfile('t', 'data'); +my $ZIP_FILE = File::Spec->catfile($DATA_DIR, "zip64.zip"); + +my @errors = (); +$Archive::Zip::ErrorHandler = sub { push @errors, @_ }; +eval { Archive::Zip->new($ZIP_FILE) }; +ok($errors[0] =~ /zip64 not supported/, 'Got expected zip64 error'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Archive-Zip-1.46/t/22_deflated_dir.t new/Archive-Zip-1.48/t/22_deflated_dir.t --- old/Archive-Zip-1.46/t/22_deflated_dir.t 1970-01-01 01:00:00.000000000 +0100 +++ new/Archive-Zip-1.48/t/22_deflated_dir.t 2015-06-18 23:10:58.000000000 +0200 @@ -0,0 +1,25 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +use Archive::Zip qw( :ERROR_CODES ); +use File::Spec; +use t::common; + +use Test::More tests => 4; + +my $zip = Archive::Zip->new(); +isa_ok( $zip, 'Archive::Zip' ); +is( $zip->read(File::Spec->catfile('t', 'data', 'jar.zip')), AZ_OK, 'Read file' ); + +my $ret = eval { $zip->writeToFileNamed(OUTPUTZIP) }; + +is($ret, AZ_OK, 'Wrote file'); + +my ($status, $zipout) = testZip(); +# STDERR->print("status= $status, out=$zipout\n"); +SKIP: { + skip( "test zip doesn't work", 1 ) if $testZipDoesntWork; + is( $status, 0, "output zip isn't corrupted" ); +} Files old/Archive-Zip-1.46/t/data/bad_github11.zip and new/Archive-Zip-1.48/t/data/bad_github11.zip differ Files old/Archive-Zip-1.46/t/data/good_github11.zip and new/Archive-Zip-1.48/t/data/good_github11.zip differ Files old/Archive-Zip-1.46/t/data/jar.zip and new/Archive-Zip-1.48/t/data/jar.zip differ Files old/Archive-Zip-1.46/t/data/zip64.zip and new/Archive-Zip-1.48/t/data/zip64.zip differ ++++++ cpanspec.yml ++++++ --- #description_paragraphs: 3 #no_testing: broken upstream #sources: # - source1 # - source2 #patches: # foo.patch: -p1 # bar.patch: #preamble: |- # BuildRequires: gcc-c++ #post_prep: |- # hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'` # sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL #post_install: |- # sed on %{name}.files #license: SUSE-NonFree #skip_noarch: 1 #custom_build: |- #./Build build flags=%{?_smp_mflags} --myflag #custom_test: |- #startserver && make test #ignore_requires: Bizarre::Module
