summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris 'BinGOs' Williams <chris@bingosnet.co.uk>2019-01-17 18:08:33 +0000
committerChris 'BinGOs' Williams <chris@bingosnet.co.uk>2019-01-17 18:08:33 +0000
commit0c5ce8df8591552238619c3fee035fed0b46e923 (patch)
tree3dca3aa30612ed06d4675e80eec51ccc78de3209
parent742efbc0836f30c015626fc3f34e7f8b4c1c8e5a (diff)
downloadperl-0c5ce8df8591552238619c3fee035fed0b46e923.tar.gz
Update IO-Compress to CPAN version 2.084
[DELTA] 2.084 5 January 2019 * IO::Uncompress::AnyUncompress.pm Added support for IO::Uncompress::Zstd and IO::Uncompress::UnLzip 2.083 30 December 2018 * IO::Compress::* * IO::Uncompress::* The BinModeIn and BinModeOut options in are now no-ops. ALL files will be read/written in binmode. * IO::Uncompress::Unzip Fixed issue with unziping a member from a streamed zip file. Issue triggered by a libreoffice document. Test added to 105oneshot-zip-only.t Thanks to Fabrizio Pivari for the bug report. * Added U64::isZero * bin/zipdetails Added 'Data Stream Alignment' (tag 0xa11e) to extra fields. Field sourced from https://support.pkware.com/display/PKZIP/Proposed+ZIP+Format+Specification+Additions * Compress::Zlib.pm #125140: Tiny POD error in Compress::Zlib
-rw-r--r--MANIFEST2
-rwxr-xr-xPorting/Maintainers.pl2
-rw-r--r--cpan/IO-Compress/Makefile.PL2
-rw-r--r--cpan/IO-Compress/bin/zipdetails3
-rw-r--r--cpan/IO-Compress/lib/Compress/Zlib.pm18
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm6
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm6
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm4
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Base.pm12
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Base/Common.pm10
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Bzip2.pm18
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Deflate.pm18
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/FAQ.pod4
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Gzip.pm20
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm2
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm20
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Zip.pm34
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm2
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm2
-rw-r--r--cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm4
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm6
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm6
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Adapter/Inflate.pm7
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/AnyInflate.pm27
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/AnyUncompress.pm87
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Base.pm19
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Bunzip2.pm17
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Gunzip.pm21
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm17
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm19
-rw-r--r--cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm36
-rw-r--r--cpan/IO-Compress/t/000prereq.t2
-rw-r--r--cpan/IO-Compress/t/004gziphdr.t4
-rw-r--r--cpan/IO-Compress/t/101truncate-bzip2.t2
-rw-r--r--cpan/IO-Compress/t/101truncate-deflate.t2
-rw-r--r--cpan/IO-Compress/t/101truncate-gzip.t2
-rw-r--r--cpan/IO-Compress/t/101truncate-zip.t2
-rw-r--r--cpan/IO-Compress/t/105oneshot-zip-only.t31
-rw-r--r--cpan/IO-Compress/t/compress/CompTestUtils.pm26
-rw-r--r--cpan/IO-Compress/t/compress/generic.pl53
-rw-r--r--cpan/IO-Compress/t/compress/multi.pl2
-rw-r--r--cpan/IO-Compress/t/compress/oneshot.pl79
-rw-r--r--cpan/IO-Compress/t/compress/truncate.pl8
-rw-r--r--cpan/IO-Compress/t/files/meta.xml2
-rw-r--r--cpan/IO-Compress/t/files/test.odsbin0 -> 7403 bytes
45 files changed, 405 insertions, 261 deletions
diff --git a/MANIFEST b/MANIFEST
index c2e2634719..4c68904d86 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1135,6 +1135,8 @@ cpan/IO-Compress/t/cz-03zlib-v1.t IO::Compress
cpan/IO-Compress/t/cz-06gzsetp.t IO::Compress
cpan/IO-Compress/t/cz-08encoding.t IO::Compress
cpan/IO-Compress/t/cz-14gzopen.t IO::Compress
+cpan/IO-Compress/t/files/meta.xml
+cpan/IO-Compress/t/files/test.ods
cpan/IO-Compress/t/globmapper.t IO::Compress
cpan/IO-Socket-IP/lib/IO/Socket/IP.pm IO::Socket::IP
cpan/IO-Socket-IP/t/00use.t IO::Socket::IP tests
diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl
index 2d7a1f4de3..0d9721b797 100755
--- a/Porting/Maintainers.pl
+++ b/Porting/Maintainers.pl
@@ -615,7 +615,7 @@ use File::Glob qw(:case);
},
'IO-Compress' => {
- 'DISTRIBUTION' => 'PMQS/IO-Compress-2.081.tar.gz',
+ 'DISTRIBUTION' => 'PMQS/IO-Compress-2.084.tar.gz',
'FILES' => q[cpan/IO-Compress],
'EXCLUDED' => [
qr{^examples/},
diff --git a/cpan/IO-Compress/Makefile.PL b/cpan/IO-Compress/Makefile.PL
index 7ecefeb1de..ca8cce49a2 100644
--- a/cpan/IO-Compress/Makefile.PL
+++ b/cpan/IO-Compress/Makefile.PL
@@ -3,7 +3,7 @@
use strict ;
require 5.006 ;
-$::VERSION = '2.081' ;
+$::VERSION = '2.084' ;
use lib '.';
use private::MakeUtil;
diff --git a/cpan/IO-Compress/bin/zipdetails b/cpan/IO-Compress/bin/zipdetails
index fb5ceab21f..ac647b398a 100644
--- a/cpan/IO-Compress/bin/zipdetails
+++ b/cpan/IO-Compress/bin/zipdetails
@@ -173,13 +173,14 @@ my %Extras = (
0x7855, ['Unix Extra type 2', \&decode_Ux],
0x7875, ['Unix Extra Type 3', \&decode_ux],
0x9901, ['AES Encryption', \&decode_AES],
+ 0xa11e, ['Data Stream Alignment', undef],
0xA220, ['Open Packaging Growth Hint', undef ],
0xCAFE, ['Java Executable', \&decode_Java_exe],
0xfb4a, ['SMS/QDOS', undef],
);
-my $VERSION = "1.08" ;
+my $VERSION = "1.09" ;
my $FH;
diff --git a/cpan/IO-Compress/lib/Compress/Zlib.pm b/cpan/IO-Compress/lib/Compress/Zlib.pm
index 36b224f526..ce79d7d113 100644
--- a/cpan/IO-Compress/lib/Compress/Zlib.pm
+++ b/cpan/IO-Compress/lib/Compress/Zlib.pm
@@ -7,17 +7,17 @@ use Carp ;
use IO::Handle ;
use Scalar::Util qw(dualvar);
-use IO::Compress::Base::Common 2.081 ;
-use Compress::Raw::Zlib 2.081 ;
-use IO::Compress::Gzip 2.081 ;
-use IO::Uncompress::Gunzip 2.081 ;
+use IO::Compress::Base::Common 2.084 ;
+use Compress::Raw::Zlib 2.084 ;
+use IO::Compress::Gzip 2.084 ;
+use IO::Uncompress::Gunzip 2.084 ;
use strict ;
use warnings ;
use bytes ;
our ($VERSION, $XS_VERSION, @ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS);
-$VERSION = '2.081';
+$VERSION = '2.084';
$XS_VERSION = $VERSION;
$VERSION = eval $VERSION;
@@ -461,7 +461,7 @@ sub inflate
package Compress::Zlib ;
-use IO::Compress::Gzip::Constants 2.081 ;
+use IO::Compress::Gzip::Constants 2.084 ;
sub memGzip($)
{
@@ -1161,7 +1161,7 @@ The default is Z_DEFAULT_STRATEGY.
When a dictionary is specified I<Compress::Zlib> will automatically
call C<deflateSetDictionary> directly after calling C<deflateInit>. The
Adler32 value for the dictionary can be obtained by calling the method
-C<$d->dict_adler()>.
+C<< $d->dict_adler() >>.
The default is no dictionary.
@@ -1469,7 +1469,7 @@ of I<Compress::Zlib>.
=head1 SEE ALSO
-L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1500,7 +1500,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 1995-2018 Paul Marquess. All rights reserved.
+Copyright (c) 1995-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm b/cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm
index 7b30c60138..623a2c671a 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm
@@ -4,12 +4,12 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status);
+use IO::Compress::Base::Common 2.084 qw(:Status);
-use Compress::Raw::Bzip2 2.081 ;
+use Compress::Raw::Bzip2 2.084 ;
our ($VERSION);
-$VERSION = '2.081';
+$VERSION = '2.084';
sub mkCompObject
{
diff --git a/cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm b/cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm
index 463c0e1b15..8903287b10 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm
@@ -4,13 +4,13 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status);
-use Compress::Raw::Zlib 2.081 qw( !crc32 !adler32 ) ;
+use IO::Compress::Base::Common 2.084 qw(:Status);
+use Compress::Raw::Zlib 2.084 qw( !crc32 !adler32 ) ;
require Exporter;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, @EXPORT, %DEFLATE_CONSTANTS);
-$VERSION = '2.081';
+$VERSION = '2.084';
@ISA = qw(Exporter);
@EXPORT_OK = @Compress::Raw::Zlib::DEFLATE_CONSTANTS;
%EXPORT_TAGS = %Compress::Raw::Zlib::DEFLATE_CONSTANTS;
diff --git a/cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm b/cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm
index 92bc093338..ae23102a24 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm
@@ -4,10 +4,10 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status);
+use IO::Compress::Base::Common 2.084 qw(:Status);
our ($VERSION);
-$VERSION = '2.081';
+$VERSION = '2.084';
sub mkCompObject
{
diff --git a/cpan/IO-Compress/lib/IO/Compress/Base.pm b/cpan/IO-Compress/lib/IO/Compress/Base.pm
index 2f009966db..1e2a54ba39 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Base.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Base.pm
@@ -6,7 +6,7 @@ require 5.006 ;
use strict ;
use warnings;
-use IO::Compress::Base::Common 2.081 ;
+use IO::Compress::Base::Common 2.084 ;
use IO::File (); ;
use Scalar::Util ();
@@ -20,7 +20,7 @@ use Symbol();
our (@ISA, $VERSION);
@ISA = qw(IO::File Exporter);
-$VERSION = '2.081';
+$VERSION = '2.084';
#Can't locate object method "SWASHNEW" via package "utf8" (perhaps you forgot to load "utf8"?) at .../ext/Compress-Zlib/Gzip/blib/lib/Compress/Zlib/Common.pm line 16.
@@ -496,7 +496,7 @@ sub _wr2
$fh = new IO::File "<$input"
or return $self->saveErrorString(undef, "cannot open file '$input': $!", $!) ;
}
- binmode $fh if *$self->{Got}->valueOrDefault('binmodein') ;
+ binmode $fh ;
my $status ;
my $buff ;
@@ -797,6 +797,7 @@ sub _writeTrailer
my $trailer = '';
my $status = *$self->{Compress}->close($trailer) ;
+
return $self->saveErrorString(0, *$self->{Compress}{Error}, *$self->{Compress}{ErrorNo})
if $status == STATUS_ERROR;
@@ -805,7 +806,6 @@ sub _writeTrailer
$trailer .= $self->mkTrailer();
defined $trailer
or return 0;
-
return $self->output($trailer);
}
@@ -1023,7 +1023,7 @@ purpose is to be sub-classed by IO::Compress modules.
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1041,7 +1041,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Base/Common.pm b/cpan/IO-Compress/lib/IO/Compress/Base/Common.pm
index bd260d5354..53232898c4 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Base/Common.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Base/Common.pm
@@ -11,7 +11,7 @@ use File::GlobMapper;
require Exporter;
our ($VERSION, @ISA, @EXPORT, %EXPORT_TAGS, $HAS_ENCODE);
@ISA = qw(Exporter);
-$VERSION = '2.081';
+$VERSION = '2.084';
@EXPORT = qw( isaFilehandle isaFilename isaScalar
whatIsInput whatIsOutput
@@ -977,6 +977,14 @@ sub equal
$self->[HIGH] == $other->[HIGH] ;
}
+sub isZero
+{
+ my $self = shift;
+
+ return $self->[LOW] == 0 &&
+ $self->[HIGH] == 0 ;
+}
+
sub gt
{
my $self = shift;
diff --git a/cpan/IO-Compress/lib/IO/Compress/Bzip2.pm b/cpan/IO-Compress/lib/IO/Compress/Bzip2.pm
index 94a03f639e..1c0d027abd 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Bzip2.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Bzip2.pm
@@ -5,16 +5,16 @@ use warnings;
use bytes;
require Exporter ;
-use IO::Compress::Base 2.081 ;
+use IO::Compress::Base 2.084 ;
-use IO::Compress::Base::Common 2.081 qw();
-use IO::Compress::Adapter::Bzip2 2.081 ;
+use IO::Compress::Base::Common 2.084 qw();
+use IO::Compress::Adapter::Bzip2 2.084 ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bzip2Error);
-$VERSION = '2.081';
+$VERSION = '2.084';
$Bzip2Error = '';
@ISA = qw(IO::Compress::Base Exporter);
@@ -51,7 +51,7 @@ sub getExtraParams
{
my $self = shift ;
- use IO::Compress::Base::Common 2.081 qw(:Parse);
+ use IO::Compress::Base::Common 2.084 qw(:Parse);
return (
'blocksize100k' => [IO::Compress::Base::Common::Parse_unsigned, 1],
@@ -338,9 +338,7 @@ This parameter defaults to 0.
=item C<< BinModeIn => 0|1 >>
-When reading from a file or filehandle, set C<binmode> before reading.
-
-Defaults to 0.
+This option is now a no-op. All files will be read in binmode.
=item C<< Append => 0|1 >>
@@ -772,7 +770,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -794,7 +792,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Deflate.pm b/cpan/IO-Compress/lib/IO/Compress/Deflate.pm
index 5e5c37c96a..1ca86c9331 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Deflate.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Deflate.pm
@@ -8,16 +8,16 @@ use bytes;
require Exporter ;
-use IO::Compress::RawDeflate 2.081 ();
-use IO::Compress::Adapter::Deflate 2.081 ;
+use IO::Compress::RawDeflate 2.084 ();
+use IO::Compress::Adapter::Deflate 2.084 ;
-use IO::Compress::Zlib::Constants 2.081 ;
-use IO::Compress::Base::Common 2.081 qw();
+use IO::Compress::Zlib::Constants 2.084 ;
+use IO::Compress::Base::Common 2.084 qw();
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $DeflateError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$DeflateError = '';
@ISA = qw(IO::Compress::RawDeflate Exporter);
@@ -367,9 +367,7 @@ This parameter defaults to 0.
=item C<< BinModeIn => 0|1 >>
-When reading from a file or filehandle, set C<binmode> before reading.
-
-Defaults to 0.
+This option is now a no-op. All files will be read in binmode.
=item C<< Append => 0|1 >>
@@ -896,7 +894,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -927,7 +925,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/FAQ.pod b/cpan/IO-Compress/lib/IO/Compress/FAQ.pod
index cfd6ca38e0..1e66507aa2 100644
--- a/cpan/IO-Compress/lib/IO/Compress/FAQ.pod
+++ b/cpan/IO-Compress/lib/IO/Compress/FAQ.pod
@@ -658,7 +658,7 @@ file.
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -676,7 +676,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Gzip.pm b/cpan/IO-Compress/lib/IO/Compress/Gzip.pm
index 53816871cf..5302011a20 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Gzip.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Gzip.pm
@@ -8,12 +8,12 @@ use bytes;
require Exporter ;
-use IO::Compress::RawDeflate 2.081 () ;
-use IO::Compress::Adapter::Deflate 2.081 ;
+use IO::Compress::RawDeflate 2.084 () ;
+use IO::Compress::Adapter::Deflate 2.084 ;
-use IO::Compress::Base::Common 2.081 qw(:Status );
-use IO::Compress::Gzip::Constants 2.081 ;
-use IO::Compress::Zlib::Extra 2.081 ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
+use IO::Compress::Gzip::Constants 2.084 ;
+use IO::Compress::Zlib::Extra 2.084 ;
BEGIN
{
@@ -25,7 +25,7 @@ BEGIN
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $GzipError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$GzipError = '' ;
@ISA = qw(IO::Compress::RawDeflate Exporter);
@@ -485,9 +485,7 @@ This parameter defaults to 0.
=item C<< BinModeIn => 0|1 >>
-When reading from a file or filehandle, set C<binmode> before reading.
-
-Defaults to 0.
+This option is now a no-op. All files will be read in binmode.
=item C<< Append => 0|1 >>
@@ -1208,7 +1206,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1239,7 +1237,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm b/cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm
index 733b1f7f1b..d1bd0c2bb2 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm
@@ -9,7 +9,7 @@ require Exporter;
our ($VERSION, @ISA, @EXPORT, %GZIP_OS_Names);
our ($GZIP_FNAME_INVALID_CHAR_RE, $GZIP_FCOMMENT_INVALID_CHAR_RE);
-$VERSION = '2.081';
+$VERSION = '2.084';
@ISA = qw(Exporter);
diff --git a/cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm b/cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm
index 8bbafc0029..b2f38ff402 100644
--- a/cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm
@@ -6,15 +6,15 @@ use strict ;
use warnings;
use bytes;
-use IO::Compress::Base 2.081 ;
-use IO::Compress::Base::Common 2.081 qw(:Status );
-use IO::Compress::Adapter::Deflate 2.081 ;
+use IO::Compress::Base 2.084 ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
+use IO::Compress::Adapter::Deflate 2.084 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %DEFLATE_CONSTANTS, %EXPORT_TAGS, $RawDeflateError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$RawDeflateError = '';
@ISA = qw(IO::Compress::Base Exporter);
@@ -116,8 +116,8 @@ sub getExtraParams
return getZlibParams();
}
-use IO::Compress::Base::Common 2.081 qw(:Parse);
-use Compress::Raw::Zlib 2.081 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
+use IO::Compress::Base::Common 2.084 qw(:Parse);
+use Compress::Raw::Zlib 2.084 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
our %PARAMS = (
#'method' => [IO::Compress::Base::Common::Parse_unsigned, Z_DEFLATED],
'level' => [IO::Compress::Base::Common::Parse_signed, Z_DEFAULT_COMPRESSION],
@@ -423,9 +423,7 @@ This parameter defaults to 0.
=item C<< BinModeIn => 0|1 >>
-When reading from a file or filehandle, set C<binmode> before reading.
-
-Defaults to 0.
+This option is now a no-op. All files will be read in binmode.
=item C<< Append => 0|1 >>
@@ -952,7 +950,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -983,7 +981,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Zip.pm b/cpan/IO-Compress/lib/IO/Compress/Zip.pm
index 16ba68944d..eabeef63e7 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Zip.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Zip.pm
@@ -4,30 +4,30 @@ use strict ;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status );
-use IO::Compress::RawDeflate 2.081 ();
-use IO::Compress::Adapter::Deflate 2.081 ;
-use IO::Compress::Adapter::Identity 2.081 ;
-use IO::Compress::Zlib::Extra 2.081 ;
-use IO::Compress::Zip::Constants 2.081 ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
+use IO::Compress::RawDeflate 2.084 ();
+use IO::Compress::Adapter::Deflate 2.084 ;
+use IO::Compress::Adapter::Identity 2.084 ;
+use IO::Compress::Zlib::Extra 2.084 ;
+use IO::Compress::Zip::Constants 2.084 ;
use File::Spec();
use Config;
-use Compress::Raw::Zlib 2.081 ();
+use Compress::Raw::Zlib 2.084 ();
BEGIN
{
eval { require IO::Compress::Adapter::Bzip2 ;
- import IO::Compress::Adapter::Bzip2 2.081 ;
+ import IO::Compress::Adapter::Bzip2 2.084 ;
require IO::Compress::Bzip2 ;
- import IO::Compress::Bzip2 2.081 ;
+ import IO::Compress::Bzip2 2.084 ;
} ;
eval { require IO::Compress::Adapter::Lzma ;
- import IO::Compress::Adapter::Lzma 2.081 ;
+ import IO::Compress::Adapter::Lzma 2.084 ;
require IO::Compress::Lzma ;
- import IO::Compress::Lzma 2.081 ;
+ import IO::Compress::Lzma 2.084 ;
} ;
}
@@ -36,7 +36,7 @@ require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $ZipError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$ZipError = '';
@ISA = qw(IO::Compress::RawDeflate Exporter);
@@ -914,7 +914,7 @@ compressed data to files or buffer.
The primary purpose of this module is to provide streaming write access to
zip files and buffers. It is not a general-purpose file archiver. If that
-is what you want, check out C<Archive::Zip>.
+is what you want, check out C<Archive::Zip> or C<Archive::Zip::SimpleZip>.
At present three compression methods are supported by IO::Compress::Zip,
namely Store (no compression at all), Deflate, Bzip2 and LZMA.
@@ -1081,9 +1081,7 @@ This parameter defaults to 0.
=item C<< BinModeIn => 0|1 >>
-When reading from a file or filehandle, set C<binmode> before reading.
-
-Defaults to 0.
+This option is now a no-op. All files will be read in binmode.
=item C<< Append => 0|1 >>
@@ -1922,7 +1920,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1953,7 +1951,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm b/cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm
index 5cb7fc27a1..d28a6ae686 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm
@@ -7,7 +7,7 @@ require Exporter;
our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS);
-$VERSION = '2.081';
+$VERSION = '2.084';
@ISA = qw(Exporter);
diff --git a/cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm b/cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm
index eb2aec51dc..d0d053be95 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm
@@ -9,7 +9,7 @@ require Exporter;
our ($VERSION, @ISA, @EXPORT);
-$VERSION = '2.081';
+$VERSION = '2.084';
@ISA = qw(Exporter);
diff --git a/cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm b/cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm
index 6b60c49f91..a88adba273 100644
--- a/cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm
+++ b/cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm
@@ -8,9 +8,9 @@ use bytes;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS);
-$VERSION = '2.081';
+$VERSION = '2.084';
-use IO::Compress::Gzip::Constants 2.081 ;
+use IO::Compress::Gzip::Constants 2.084 ;
sub ExtraFieldError
{
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm
index f0f24f15f9..1aa9a8c39b 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm
@@ -4,12 +4,12 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status);
+use IO::Compress::Base::Common 2.084 qw(:Status);
-use Compress::Raw::Bzip2 2.081 ;
+use Compress::Raw::Bzip2 2.084 ;
our ($VERSION, @ISA);
-$VERSION = '2.081';
+$VERSION = '2.084';
sub mkUncompObject
{
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
index a122320de2..5601599225 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Identity.pm
@@ -4,14 +4,14 @@ use warnings;
use strict;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status);
+use IO::Compress::Base::Common 2.084 qw(:Status);
use IO::Compress::Zip::Constants ;
our ($VERSION);
-$VERSION = '2.081';
+$VERSION = '2.084';
-use Compress::Raw::Zlib 2.081 ();
+use Compress::Raw::Zlib 2.084 ();
sub mkUncompObject
{
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Inflate.pm b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Inflate.pm
index d5544faee8..f51c64d7e5 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Inflate.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Adapter/Inflate.pm
@@ -4,11 +4,11 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status);
-use Compress::Raw::Zlib 2.081 qw(Z_OK Z_BUF_ERROR Z_STREAM_END Z_FINISH MAX_WBITS);
+use IO::Compress::Base::Common 2.084 qw(:Status);
+use Compress::Raw::Zlib 2.084 qw(Z_OK Z_BUF_ERROR Z_STREAM_END Z_FINISH MAX_WBITS);
our ($VERSION);
-$VERSION = '2.081';
+$VERSION = '2.084';
@@ -62,7 +62,6 @@ sub uncompr
my $status = $inf->inflate($from, $to, $eof);
$self->{ErrorNo} = $status;
-
if ($status != Z_OK && $status != Z_STREAM_END && $status != Z_BUF_ERROR)
{
$self->{Error} = "Inflation Error: $status";
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/AnyInflate.pm b/cpan/IO-Compress/lib/IO/Uncompress/AnyInflate.pm
index 563f2f679e..be464889eb 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/AnyInflate.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/AnyInflate.pm
@@ -6,22 +6,22 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 ();
+use IO::Compress::Base::Common 2.084 ();
-use IO::Uncompress::Adapter::Inflate 2.081 ();
+use IO::Uncompress::Adapter::Inflate 2.084 ();
-use IO::Uncompress::Base 2.081 ;
-use IO::Uncompress::Gunzip 2.081 ;
-use IO::Uncompress::Inflate 2.081 ;
-use IO::Uncompress::RawInflate 2.081 ;
-use IO::Uncompress::Unzip 2.081 ;
+use IO::Uncompress::Base 2.084 ;
+use IO::Uncompress::Gunzip 2.084 ;
+use IO::Uncompress::Inflate 2.084 ;
+use IO::Uncompress::RawInflate 2.084 ;
+use IO::Uncompress::Unzip 2.084 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyInflateError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$AnyInflateError = '';
@ISA = qw(IO::Uncompress::Base Exporter);
@@ -48,7 +48,7 @@ sub anyinflate
sub getExtraParams
{
- use IO::Compress::Base::Common 2.081 qw(:Parse);
+ use IO::Compress::Base::Common 2.084 qw(:Parse);
return ( 'rawinflate' => [Parse_boolean, 0] ) ;
}
@@ -342,10 +342,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -964,7 +961,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -995,7 +992,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/AnyUncompress.pm b/cpan/IO-Compress/lib/IO/Uncompress/AnyUncompress.pm
index c2d7687570..c6dfce536b 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/AnyUncompress.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/AnyUncompress.pm
@@ -4,16 +4,16 @@ use strict;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 ();
+use IO::Compress::Base::Common 2.084 ();
-use IO::Uncompress::Base 2.081 ;
+use IO::Uncompress::Base 2.084 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyUncompressError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$AnyUncompressError = '';
@ISA = qw(IO::Uncompress::Base Exporter);
@@ -29,22 +29,27 @@ BEGIN
{
local @INC = @INC;
pop @INC if $INC[-1] eq '.';
- eval ' use IO::Uncompress::Adapter::Inflate 2.081 ;';
- eval ' use IO::Uncompress::Adapter::Bunzip2 2.081 ;';
- eval ' use IO::Uncompress::Adapter::LZO 2.081 ;';
- eval ' use IO::Uncompress::Adapter::Lzf 2.081 ;';
- eval ' use IO::Uncompress::Adapter::UnLzma 2.081 ;';
- eval ' use IO::Uncompress::Adapter::UnXz 2.081 ;';
-
- eval ' use IO::Uncompress::Bunzip2 2.081 ;';
- eval ' use IO::Uncompress::UnLzop 2.081 ;';
- eval ' use IO::Uncompress::Gunzip 2.081 ;';
- eval ' use IO::Uncompress::Inflate 2.081 ;';
- eval ' use IO::Uncompress::RawInflate 2.081 ;';
- eval ' use IO::Uncompress::Unzip 2.081 ;';
- eval ' use IO::Uncompress::UnLzf 2.081 ;';
- eval ' use IO::Uncompress::UnLzma 2.081 ;';
- eval ' use IO::Uncompress::UnXz 2.081 ;';
+ eval ' use IO::Uncompress::Adapter::Inflate 2.084 ;';
+ eval ' use IO::Uncompress::Adapter::Bunzip2 2.084 ;';
+ eval ' use IO::Uncompress::Adapter::LZO 2.084 ;';
+ eval ' use IO::Uncompress::Adapter::Lzf 2.084 ;';
+ eval ' use IO::Uncompress::Adapter::UnLzma 2.084 ;';
+ eval ' use IO::Uncompress::Adapter::UnXz 2.084 ;';
+ eval ' use IO::Uncompress::Adapter::UnZstd 2.083 ;';
+ eval ' use IO::Uncompress::Adapter::UnLzip 2.084 ;';
+
+ eval ' use IO::Uncompress::Bunzip2 2.084 ;';
+ eval ' use IO::Uncompress::UnLzop 2.084 ;';
+ eval ' use IO::Uncompress::Gunzip 2.084 ;';
+ eval ' use IO::Uncompress::Inflate 2.084 ;';
+ eval ' use IO::Uncompress::RawInflate 2.084 ;';
+ eval ' use IO::Uncompress::Unzip 2.084 ;';
+ eval ' use IO::Uncompress::UnLzf 2.084 ;';
+ eval ' use IO::Uncompress::UnLzma 2.084 ;';
+ eval ' use IO::Uncompress::UnXz 2.084 ;';
+ eval ' use IO::Uncompress::UnZstd 2.084 ;';
+ eval ' use IO::Uncompress::UnLzip 2.084 ;';
+
}
sub new
@@ -191,6 +196,39 @@ sub mkUncomp
return 1;
}
+ if (defined $IO::Uncompress::UnZstd::VERSION and
+ $magic = $self->ckMagic('UnZstd')) {
+
+ *$self->{Info} = $self->readHeader($magic)
+ or return undef ;
+
+ my ($obj, $errstr, $errno) = IO::Uncompress::Adapter::Zstd::mkUncompObject();
+
+ return $self->saveErrorString(undef, $errstr, $errno)
+ if ! defined $obj;
+
+ *$self->{Uncomp} = $obj;
+
+ return 1;
+ }
+
+
+ if (defined $IO::Uncompress::UnLzip::VERSION and
+ $magic = $self->ckMagic('UnLzip')) {
+
+ *$self->{Info} = $self->readHeader($magic)
+ or return undef ;
+
+ my ($obj, $errstr, $errno) = IO::Uncompress::Adapter::UnLzip::mkUncompObject(*$self->{Info}{DictSize});
+
+ return $self->saveErrorString(undef, $errstr, $errno)
+ if ! defined $obj;
+
+ *$self->{Uncomp} = $obj;
+
+ return 1;
+ }
+
return 0 ;
}
@@ -299,6 +337,8 @@ The formats supported are:
=item lzma
+=item lzip
+
=item xz
=back
@@ -452,10 +492,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -1009,7 +1046,7 @@ Same as doing this
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1027,7 +1064,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Base.pm b/cpan/IO-Compress/lib/IO/Uncompress/Base.pm
index ff9b1ae630..06fb04a81c 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Base.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Base.pm
@@ -9,12 +9,12 @@ our (@ISA, $VERSION, @EXPORT_OK, %EXPORT_TAGS);
@ISA = qw(IO::File Exporter);
-$VERSION = '2.081';
+$VERSION = '2.084';
use constant G_EOF => 0 ;
use constant G_ERR => -1 ;
-use IO::Compress::Base::Common 2.081 ;
+use IO::Compress::Base::Common 2.084 ;
use IO::File ;
use Symbol;
@@ -695,13 +695,13 @@ sub _singleTarget
if $x->{Got}->getValue('append') ;
$x->{fh} = new IO::File "$mode $output"
or return retErr($x, "cannot open file '$output': $!") ;
- binmode $x->{fh} if $x->{Got}->valueOrDefault('binmodeout');
+ binmode $x->{fh} ;
}
elsif ($x->{outType} eq 'handle') {
$x->{fh} = $output;
- binmode $x->{fh} if $x->{Got}->valueOrDefault('binmodeout');
+ binmode $x->{fh} ;
if ($x->{Got}->getValue('append')) {
seek($x->{fh}, 0, SEEK_END)
or return retErr($x, "Cannot seek to end of output filehandle: $!") ;
@@ -1077,13 +1077,6 @@ sub streamCount
return scalar @{ *$self->{InfoList} } ;
}
-#sub read
-#{
-# my $status = myRead(@_);
-# return undef if $status < 0;
-# return $status;
-#}
-
sub read
{
# return codes
@@ -1536,7 +1529,7 @@ purpose is to be sub-classed by IO::Uncompress modules.
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1554,7 +1547,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Bunzip2.pm b/cpan/IO-Compress/lib/IO/Uncompress/Bunzip2.pm
index ec17c63c6c..7a84bcd15c 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Bunzip2.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Bunzip2.pm
@@ -4,15 +4,15 @@ use strict ;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status );
+use IO::Compress::Base::Common 2.084 qw(:Status );
-use IO::Uncompress::Base 2.081 ;
-use IO::Uncompress::Adapter::Bunzip2 2.081 ;
+use IO::Uncompress::Base 2.084 ;
+use IO::Uncompress::Adapter::Bunzip2 2.084 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bunzip2Error);
-$VERSION = '2.081';
+$VERSION = '2.084';
$Bunzip2Error = '';
@ISA = qw(IO::Uncompress::Base Exporter);
@@ -338,10 +338,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -881,7 +878,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -903,7 +900,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Gunzip.pm b/cpan/IO-Compress/lib/IO/Uncompress/Gunzip.pm
index 55d4c0a97a..46dd108341 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Gunzip.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Gunzip.pm
@@ -9,12 +9,12 @@ use strict ;
use warnings;
use bytes;
-use IO::Uncompress::RawInflate 2.081 ;
+use IO::Uncompress::RawInflate 2.084 ;
-use Compress::Raw::Zlib 2.081 () ;
-use IO::Compress::Base::Common 2.081 qw(:Status );
-use IO::Compress::Gzip::Constants 2.081 ;
-use IO::Compress::Zlib::Extra 2.081 ;
+use Compress::Raw::Zlib 2.084 () ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
+use IO::Compress::Gzip::Constants 2.084 ;
+use IO::Compress::Zlib::Extra 2.084 ;
require Exporter ;
@@ -28,7 +28,7 @@ Exporter::export_ok_tags('all');
$GunzipError = '';
-$VERSION = '2.081';
+$VERSION = '2.084';
sub new
{
@@ -477,10 +477,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -1087,7 +1084,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1118,7 +1115,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm b/cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm
index 9dcd797be4..4d89db5b19 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm
@@ -5,15 +5,15 @@ use strict ;
use warnings;
use bytes;
-use IO::Compress::Base::Common 2.081 qw(:Status );
-use IO::Compress::Zlib::Constants 2.081 ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
+use IO::Compress::Zlib::Constants 2.084 ;
-use IO::Uncompress::RawInflate 2.081 ;
+use IO::Uncompress::RawInflate 2.084 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $InflateError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$InflateError = '';
@ISA = qw(IO::Uncompress::RawInflate Exporter);
@@ -399,10 +399,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -959,7 +956,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -990,7 +987,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm b/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
index 5cf10b0bd2..63703cd975 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm
@@ -5,16 +5,16 @@ use strict ;
use warnings;
use bytes;
-use Compress::Raw::Zlib 2.081 ;
-use IO::Compress::Base::Common 2.081 qw(:Status );
+use Compress::Raw::Zlib 2.084 ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
-use IO::Uncompress::Base 2.081 ;
-use IO::Uncompress::Adapter::Inflate 2.081 ;
+use IO::Uncompress::Base 2.084 ;
+use IO::Uncompress::Adapter::Inflate 2.084 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $RawInflateError);
-$VERSION = '2.081';
+$VERSION = '2.084';
$RawInflateError = '';
@ISA = qw(IO::Uncompress::Base Exporter);
@@ -547,10 +547,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -1087,7 +1084,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1118,7 +1115,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm b/cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm
index 9b8399eeaf..4e8a0d67c7 100644
--- a/cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm
+++ b/cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm
@@ -9,14 +9,14 @@ use warnings;
use bytes;
use IO::File;
-use IO::Uncompress::RawInflate 2.081 ;
-use IO::Compress::Base::Common 2.081 qw(:Status );
-use IO::Uncompress::Adapter::Inflate 2.081 ;
-use IO::Uncompress::Adapter::Identity 2.081 ;
-use IO::Compress::Zlib::Extra 2.081 ;
-use IO::Compress::Zip::Constants 2.081 ;
+use IO::Uncompress::RawInflate 2.084 ;
+use IO::Compress::Base::Common 2.084 qw(:Status );
+use IO::Uncompress::Adapter::Inflate 2.084 ;
+use IO::Uncompress::Adapter::Identity 2.084 ;
+use IO::Compress::Zlib::Extra 2.084 ;
+use IO::Compress::Zip::Constants 2.084 ;
-use Compress::Raw::Zlib 2.081 () ;
+use Compress::Raw::Zlib 2.084 () ;
BEGIN
{
@@ -31,7 +31,7 @@ require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $UnzipError, %headerLookup);
-$VERSION = '2.081';
+$VERSION = '2.084';
$UnzipError = '';
@ISA = qw(IO::Uncompress::RawInflate Exporter);
@@ -171,25 +171,27 @@ sub readHeader
# TODO - when Stream is off, use seek
my $buffer;
if (*$self->{ZipData}{Streaming}) {
-
while (1) {
my $b;
my $status = $self->smartRead(\$b, 1024 * 16);
- return undef
+
+ return $self->saveErrorString(undef, "Truncated file")
if $status <= 0 ;
- my $temp_buf;
+ my $temp_buf ;
my $out;
+
$status = *$self->{Uncomp}->uncompr(\$b, \$temp_buf, 0, $out);
return $self->saveErrorString(undef, *$self->{Uncomp}{Error},
*$self->{Uncomp}{ErrorNo})
if $self->saveStatus($status) == STATUS_ERROR;
+ $self->pushBack($b) ;
+
if ($status == STATUS_ENDSTREAM) {
*$self->{Uncomp}->reset();
- $self->pushBack($b) ;
last;
}
}
@@ -461,6 +463,7 @@ sub skipEndCentralDirectory
my $self = shift;
my $magic = shift ;
+
my $buffer;
$self->smartReadExact(\$buffer, 22 - 4)
or return $self->TrailerError("Minimum header size is " .
@@ -1233,10 +1236,7 @@ This parameter defaults to 0.
=item C<< BinModeOut => 0|1 >>
-When writing to a file or filehandle, set C<binmode> before writing to the
-file.
-
-Defaults to 0.
+This option is now a no-op. All files will be written in binmode.
=item C<< Append => 0|1 >>
@@ -1830,7 +1830,7 @@ The script is available from L<https://gist.github.com/eqhmcow/5389877>
=head1 SEE ALSO
-L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
+L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzip>, L<IO::Uncompress::UnLzip>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Compress::Zstd>, L<IO::Uncompress::UnZstd>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
L<IO::Compress::FAQ|IO::Compress::FAQ>
@@ -1861,7 +1861,7 @@ See the Changes file.
=head1 COPYRIGHT AND LICENSE
-Copyright (c) 2005-2018 Paul Marquess. All rights reserved.
+Copyright (c) 2005-2019 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/cpan/IO-Compress/t/000prereq.t b/cpan/IO-Compress/t/000prereq.t
index 7167fed325..c3395464c4 100644
--- a/cpan/IO-Compress/t/000prereq.t
+++ b/cpan/IO-Compress/t/000prereq.t
@@ -25,7 +25,7 @@ BEGIN
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- my $VERSION = '2.081';
+ my $VERSION = '2.084';
my @NAMES = qw(
Compress::Raw::Bzip2
Compress::Raw::Zlib
diff --git a/cpan/IO-Compress/t/004gziphdr.t b/cpan/IO-Compress/t/004gziphdr.t
index 399fdb70ef..27a9013546 100644
--- a/cpan/IO-Compress/t/004gziphdr.t
+++ b/cpan/IO-Compress/t/004gziphdr.t
@@ -854,8 +854,8 @@ EOM
$status = $gunz->read($uncomp) while $status > 0;
if ($strict)
{
- cmp_ok $status, '<', 0 ;
- like $GunzipError, "/Trailer Error: trailer truncated. Expected 8 bytes, got $got/";
+ cmp_ok $status, '<', 0, "status 0" ;
+ like $GunzipError, "/Trailer Error: trailer truncated. Expected 8 bytes, got $got/", "got Trailer Error";
}
else
{
diff --git a/cpan/IO-Compress/t/101truncate-bzip2.t b/cpan/IO-Compress/t/101truncate-bzip2.t
index 94d9be287b..d533f237a0 100644
--- a/cpan/IO-Compress/t/101truncate-bzip2.t
+++ b/cpan/IO-Compress/t/101truncate-bzip2.t
@@ -21,7 +21,7 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- plan tests => 4012 + $extra;
+ plan tests => 3308 + $extra;
};
diff --git a/cpan/IO-Compress/t/101truncate-deflate.t b/cpan/IO-Compress/t/101truncate-deflate.t
index abff664905..49f9ae41ca 100644
--- a/cpan/IO-Compress/t/101truncate-deflate.t
+++ b/cpan/IO-Compress/t/101truncate-deflate.t
@@ -21,7 +21,7 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- plan tests => 3056 + $extra;
+ plan tests => 2552 + $extra;
};
diff --git a/cpan/IO-Compress/t/101truncate-gzip.t b/cpan/IO-Compress/t/101truncate-gzip.t
index 6a787c912a..16b2d07963 100644
--- a/cpan/IO-Compress/t/101truncate-gzip.t
+++ b/cpan/IO-Compress/t/101truncate-gzip.t
@@ -22,7 +22,7 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- plan tests => 3544 + $extra;
+ plan tests => 3040 + $extra;
};
diff --git a/cpan/IO-Compress/t/101truncate-zip.t b/cpan/IO-Compress/t/101truncate-zip.t
index 89603d35c0..80a0aee275 100644
--- a/cpan/IO-Compress/t/101truncate-zip.t
+++ b/cpan/IO-Compress/t/101truncate-zip.t
@@ -22,7 +22,7 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- plan tests => 9156 + $extra;
+ plan tests => 7732 + $extra;
};
diff --git a/cpan/IO-Compress/t/105oneshot-zip-only.t b/cpan/IO-Compress/t/105oneshot-zip-only.t
index 4fea3d1a46..94676eb5dd 100644
--- a/cpan/IO-Compress/t/105oneshot-zip-only.t
+++ b/cpan/IO-Compress/t/105oneshot-zip-only.t
@@ -1,7 +1,7 @@
BEGIN {
if ($ENV{PERL_CORE}) {
- chdir 't' if -d 't';
- @INC = ("../lib", "lib/compress");
+ chdir 't' if -d 't';
+ @INC = ("../lib", "lib/compress");
}
}
@@ -24,7 +24,7 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- plan tests => 216 + $extra ;
+ plan tests => 219 + $extra ;
#use_ok('IO::Compress::Zip', qw(zip $ZipError :zip_method)) ;
use_ok('IO::Compress::Zip', qw(:all)) ;
@@ -246,5 +246,30 @@ for my $stream (0, 1)
}
}
+{
+ title "Regression: ods streaming issue";
+
+ # The file before meta.xml in test.ods is content.xml.
+ # Issue was triggered because content.xml was stored
+ # as streamed and the code to walk the compressed streaming
+ # content assumed that all of the input buffer was consumed
+ # in a single call to "uncompr".
+
+ my $files = "./t/" ;
+ $files = "./" if $ENV{PERL_CORE} ;
+ $files .= "files/";
+
+ my $zipfile = "$files/test.ods" ;
+ my $file = "meta.xml";
+
+ my $got;
+
+ ok unzip($zipfile => \$got, Name => $file), " unzip $file ok"
+ or diag $UnzipError ;
+
+ my $meta = readFile("$files/$file");
+ is $got, $meta, " content ok";
+}
+
# TODO add more error cases
diff --git a/cpan/IO-Compress/t/compress/CompTestUtils.pm b/cpan/IO-Compress/t/compress/CompTestUtils.pm
index da238e15d2..c506632f90 100644
--- a/cpan/IO-Compress/t/compress/CompTestUtils.pm
+++ b/cpan/IO-Compress/t/compress/CompTestUtils.pm
@@ -395,6 +395,17 @@ my %TOP = (
Raw => 0,
},
+ 'IO::Compress::Lzip' => { Inverse => 'IO::Uncompress::UnLzip',
+ Error => 'LzipError',
+ TopLevel => 'lzip',
+ Raw => 0,
+ },
+ 'IO::Uncompress::UnLzip' => { Inverse => 'IO::Compress::Lzip',
+ Error => 'UnLzipError',
+ TopLevel => 'unlzip',
+ Raw => 0,
+ },
+
'IO::Compress::PPMd' => { Inverse => 'IO::Uncompress::UnPPMd',
Error => 'PPMdError',
TopLevel => 'ppmd',
@@ -405,6 +416,16 @@ my %TOP = (
TopLevel => 'unppmd',
Raw => 0,
},
+ 'IO::Compress::Zstd' => { Inverse => 'IO::Uncompress::UnZstd',
+ Error => 'ZstdError',
+ TopLevel => 'zstd',
+ Raw => 0,
+ },
+ 'IO::Uncompress::UnZstd' => { Inverse => 'IO::Compress::Zstd',
+ Error => 'UnZstdError',
+ TopLevel => 'unzstd',
+ Raw => 0,
+ },
'IO::Compress::DummyComp' => { Inverse => 'IO::Uncompress::DummyUnComp',
Error => 'DummyCompError',
@@ -494,7 +515,7 @@ sub compressBuffer
our ($AnyUncompressError);
BEGIN
{
- eval ' use IO::Uncompress::AnyUncompress qw($AnyUncompressError); ';
+ eval ' use IO::Uncompress::AnyUncompress qw(anyuncompress $AnyUncompressError); ';
}
sub anyUncompress
@@ -555,7 +576,6 @@ sub anyUncompress
if $o->error() ;
return $out ;
-
}
sub getHeaders
@@ -718,7 +738,7 @@ sub getMultiValues
{
my $class = shift ;
- return (0,0) if $class =~ /lzf|lzma/i;
+ return (0,0) if $class =~ /lzf|lzma|zstd/i;
return (1,0);
}
diff --git a/cpan/IO-Compress/t/compress/generic.pl b/cpan/IO-Compress/t/compress/generic.pl
index f6e630c736..d9695e88dc 100644
--- a/cpan/IO-Compress/t/compress/generic.pl
+++ b/cpan/IO-Compress/t/compress/generic.pl
@@ -18,7 +18,7 @@ BEGIN
$extra = 1
if $st ;
- plan(tests => 794 + $extra) ;
+ plan(tests => 799 + $extra) ;
}
sub myGZreadFile
@@ -43,7 +43,7 @@ sub myGZreadFile
sub run
{
my $CompressClass = identify();
- $UncompressClass = getInverse($CompressClass);
+ $UncompressClass = getInverse($CompressClass);
my $Error = getErrorRef($CompressClass);
my $UnError = getErrorRef($UncompressClass);
@@ -484,10 +484,13 @@ EOM
#print "length " . length($x) . " \n";
}
+ SKIP:
{
# embed a compressed file in another file
#================================
+ skip "zstd doesn't support trailing data", 11
+ if $CompressClass =~ /zstd/i ;
my $lex = new LexFile my $name ;
@@ -525,7 +528,7 @@ EOM
ok $x->binmode();
1 while $x->read($uncomp) > 0 ;
- ok $uncomp eq $hello ;
+ is $uncomp, $hello ;
my $rest ;
read($fh1, $rest, 5000);
is $x->trailingData() . $rest, $trailer ;
@@ -533,10 +536,13 @@ EOM
}
+ SKIP:
{
# embed a compressed file in another buffer
#================================
+ skip "zstd doesn't support trailing data", 6
+ if $CompressClass =~ /zstd/i ;
my $hello = <<EOM ;
hello world
@@ -1142,7 +1148,8 @@ EOT
my $b ;
my $a = new $CompressClass(\$b) ;
- ok ! $a->error() ;
+ ok ! $a->error()
+ or die $a->error() ;
eval { $a->seek(-1, 10) ; };
like $@, mkErr("^${CompressClass}::seek: unknown value, 10, for whence parameter");
@@ -1598,7 +1605,7 @@ EOT
$c->close();
my $comp_len = length $compressed;
- $compressed .= $appended if $append ;
+ $compressed .= $appended if $append && $CompressClass !~ /zstd/i;
my $lex = new LexFile my $name ;
my $input ;
@@ -1638,7 +1645,7 @@ EOT
}
{
- # Check that read return an empty string
+ # Check that read returns an empty string
if ($type eq 'filehandle')
{
my $fh = new IO::File "<$name" ;
@@ -1651,7 +1658,8 @@ EOT
isa_ok $x, $UncompressClass;
my $buffer;
- is $x->read($buffer), 0, "read 0 bytes";
+ is $x->read($buffer), 0, "read 0 bytes"
+ or diag "read returned $$UnError";
ok defined $buffer, "buffer is defined";
is $buffer, "", "buffer is empty string";
@@ -1703,6 +1711,37 @@ EOT
}
}
}
+
+ {
+ # Round trip binary data that happens to contain \r\n
+ # via the filesystem
+
+ my $original = join '', map { chr } 0x00 .. 0xff ;
+ $original .= "data1\r\ndata2\r\ndata3\r\n" ;
+
+
+ title "$UncompressClass -- round trip test";
+
+ my $string = $original;
+
+ my $lex = new LexFile( my $name, my $compressed) ;
+ my $input ;
+ writeFile ($name, $original);
+
+ my $c = new $CompressClass($compressed);
+ isa_ok $c, $CompressClass;
+ $c->print($string);
+ $c->close();
+
+ my $u = new $UncompressClass $compressed, Transparent => 0
+ or diag "$$UnError" ;
+ isa_ok $u, $UncompressClass;
+ my $buffer;
+ is $u->read($buffer), length($original), "read bytes";
+ is $buffer, $original, " round tripped ok";
+
+
+ }
}
1;
diff --git a/cpan/IO-Compress/t/compress/multi.pl b/cpan/IO-Compress/t/compress/multi.pl
index c6501f8f74..4d587fbdd4 100644
--- a/cpan/IO-Compress/t/compress/multi.pl
+++ b/cpan/IO-Compress/t/compress/multi.pl
@@ -101,8 +101,6 @@ EOM
}
ok $x->close, " Close ok" ;
- #hexDump($compressed) ;
-
foreach my $unc ($UncompressClass, 'IO::Uncompress::AnyUncompress') {
title " Testing $CompressClass with $unc and $i streams, from $fb";
$cc = $output ;
diff --git a/cpan/IO-Compress/t/compress/oneshot.pl b/cpan/IO-Compress/t/compress/oneshot.pl
index 43d9c02f64..790d1b2b0c 100644
--- a/cpan/IO-Compress/t/compress/oneshot.pl
+++ b/cpan/IO-Compress/t/compress/oneshot.pl
@@ -16,12 +16,24 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
- plan tests => 1002 + $extra ;
+ plan tests => 1007 + $extra ;
use_ok('IO::Uncompress::AnyUncompress', qw(anyuncompress $AnyUncompressError)) ;
}
+my $OriginalContent1 = <<EOM ;
+Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut tempus odio id
+ dolor. Camelus perlus. Larrius in lumen numen. Dolor en quiquum filia
+ est. Quintus cenum parat.
+EOM
+
+my $OriginalContent2 = <<EOM ;
+LOREM ipsum dolor sit amet, consectetuer adipiscing elit. Ut tempus odio id
+ dolor. Camelus perlus. Larrius in lumen numen. Dolor en quiquum filia
+ est. Quintus cenum PARAT.
+EOM
+
sub run
{
@@ -286,9 +298,8 @@ sub run
my $already = '';
$already = 'abcde' if $append ;
- for my $buffer ( undef, '', "abcde" )
+ for my $buffer ( undef, '', $OriginalContent1 )
{
-
my $disp_content = defined $buffer ? $buffer : '<undef>' ;
my $keep = $buffer;
@@ -306,7 +317,6 @@ sub run
$got = undef if ! defined $buffer && $got eq '' ;
ok ! $$Error, " no error [$$Error]" ;
is $got, $buffer, " Uncompressed matches original";
-
}
{
@@ -520,22 +530,22 @@ sub run
my $lex = new LexFile(my $file1, my $file2) ;
- writeFile($file1, "data1");
- writeFile($file2, "data2");
+ writeFile($file1, $OriginalContent1);
+ writeFile($file2, $OriginalContent2);
my $of = new IO::File "<$file1" ;
ok $of, " Created output filehandle" ;
#my @input = ( undef, "", $file2, \undef, \'', \"abcde", $of) ;
- #my @expected = ("", "", $file2, "", "", "abcde", "data1");
- #my @uexpected = ("", "", "data2", "", "", "abcde", "data1");
+ #my @expected = ("", "", $file2, "", "", "abcde", $OriginalContent1);
+ #my @uexpected = ("", "", $OriginalContent2, "", "", "abcde", $OriginalContent1);
#my @input = ( $file2, \"abcde", $of) ;
- #my @expected = ( $file2, "abcde", "data1");
- #my @uexpected = ("data2", "abcde", "data1");
+ #my @expected = ( $file2, "abcde", $OriginalContent1);
+ #my @uexpected = ($OriginalContent2, "abcde", $OriginalContent1);
my @input = ( $file1, $file2) ;
#my @expected = ( $file1, $file2);
- my @expected = ("data1", "data2");
- my @uexpected = ("data1", "data2");
+ my @expected = ($OriginalContent1, $OriginalContent2);
+ my @uexpected = ($OriginalContent1, $OriginalContent2);
my @keep = @input ;
@@ -618,7 +628,7 @@ sub run
{
title "Truncated file";
skip '', 7
- if $CompressClass =~ /lzop|lzf|lzma/i ;
+ if $CompressClass =~ /lzop|lzf|lzma|zstd|lzip/i ;
my @in ;
push @in, "abcde" x 10;
@@ -644,6 +654,33 @@ sub run
}
}
+ foreach my $bit ($CompressClass)
+ {
+
+ my $Error = getErrorRef($bit);
+ my $Func = getTopFuncRef($bit);
+ my $TopType = getTopFuncName($bit);
+
+ my $TopTypeInverse = getInverse($bit);
+ my $FuncInverse = getTopFuncRef($TopTypeInverse);
+ my $ErrorInverse = getErrorRef($TopTypeInverse);
+
+ title 'Round trip binary data that happens to include \r\n' ;
+
+ my $lex = new LexFile(my $file1, my $file2, my $file3) ;
+
+ my $original = join '', map { chr } 0x00 .. 0xff ;
+ $original .= "data1\r\ndata2\r\ndata3\r\n" ;
+
+ writeFile($file1, $original);
+ is readFile($file1), $original;
+
+ ok &$Func($file1 => $file2), ' Compressed ok' ;
+ ok &$FuncInverse($file2 => $file3), ' Uncompressed ok' ;
+ is readFile($file3), $original, " round tripped ok";
+
+ }
+
foreach my $bit ($UncompressClass,
#'IO::Uncompress::AnyUncompress',
)
@@ -660,10 +697,14 @@ sub run
my $keep = $data ;
my $extra = "after the main event";
+ SKIP:
foreach my $fb ( qw( filehandle buffer ) )
{
title "Trailingdata with $TopType, from $fb";
+ skip "zstd doesn't support trailing data", 9
+ if $CompressClass =~ /zstd/i ;
+
my $lex = new LexFile my $name ;
my $input ;
@@ -1008,8 +1049,8 @@ sub run
my $Func = getTopFuncRef($bit);
my $TopType = getTopFuncName($bit);
- my $buffer = "abcde" ;
- my $buffer2 = "ABCDE" ;
+ my $buffer = $OriginalContent1;
+ my $buffer2 = $OriginalContent2;
my $keep_orig = $buffer;
my $comp = compressBuffer($UncompressClass, $buffer) ;
@@ -1327,8 +1368,8 @@ sub run
my $lex = new LexFile(my $file1, my $file2) ;
- writeFile($file1, compressBuffer($UncompressClass,"data1"));
- writeFile($file2, compressBuffer($UncompressClass,"data2"));
+ writeFile($file1, compressBuffer($UncompressClass, $OriginalContent1));
+ writeFile($file2, compressBuffer($UncompressClass, $OriginalContent2));
my $of = new IO::File "<$file1" ;
ok $of, " Created output filehandle" ;
@@ -1336,7 +1377,7 @@ sub run
#my @input = ($file2, \$undef, \$null, \$comp, $of) ;
#my @expected = ('data2', '', '', 'abcde', 'data1');
my @input = ($file1, $file2);
- my @expected = ('data1', 'data2');
+ my @expected = ($OriginalContent1, $OriginalContent2);
my @keep = @input ;
@@ -1622,6 +1663,8 @@ sub run
ok &$UncompFunc($fh_in2 => $fh_out2), ' UnCompressed ok' ;
is $output, $input, "round trip ok" ;
}
+
+
}
# TODO add more error cases
diff --git a/cpan/IO-Compress/t/compress/truncate.pl b/cpan/IO-Compress/t/compress/truncate.pl
index 0bf269a7a6..24fe176ce8 100644
--- a/cpan/IO-Compress/t/compress/truncate.pl
+++ b/cpan/IO-Compress/t/compress/truncate.pl
@@ -114,7 +114,7 @@ sub run
#ok $gz->eof() ;
}
- # Test curruption directly after the header
+ # Test corruption directly after the header
# In this case the uncompression object will have been created,
# so need to check that subsequent reads from the object fail
if ($header_size > 0)
@@ -227,13 +227,15 @@ sub run
}
ok $gz->error() ;
cmp_ok $gz->errorNo(), '<', 0 ;
- ok $gz->eof() ;
+ # ok $gz->eof()
+ # or die "EOF";
$gz->close();
}
}
- # RawDeflate does not have a trailer
+ # RawDeflate and Zstandard do not have a trailer
next if $CompressClass eq 'IO::Compress::RawDeflate' ;
+ next if $CompressClass eq 'IO::Compress::Zstd' ;
title "Compressed Trailer Truncation";
foreach my $i (length($compressed) - $trailer_size .. length($compressed) -1 )
diff --git a/cpan/IO-Compress/t/files/meta.xml b/cpan/IO-Compress/t/files/meta.xml
new file mode 100644
index 0000000000..437352da62
--- /dev/null
+++ b/cpan/IO-Compress/t/files/meta.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:grddl="http://www.w3.org/2003/g/data-view#" office:version="1.2"><office:meta><meta:creation-date>2018-12-25T11:36:11.437260543</meta:creation-date><dc:date>2018-12-25T11:36:55.657945697</dc:date><meta:editing-duration>PT54S</meta:editing-duration><meta:editing-cycles>1</meta:editing-cycles><meta:document-statistic meta:table-count="1" meta:cell-count="3" meta:object-count="0"/><meta:generator>LibreOffice/6.0.7.3$Linux_X86_64 LibreOffice_project/00m0$Build-3</meta:generator></office:meta></office:document-meta> \ No newline at end of file
diff --git a/cpan/IO-Compress/t/files/test.ods b/cpan/IO-Compress/t/files/test.ods
new file mode 100644
index 0000000000..ecb2a5df9f
--- /dev/null
+++ b/cpan/IO-Compress/t/files/test.ods
Binary files differ