Update IO-Compress to CPAN version 2.044

[DELTA]

  2.044 2 December 2011

      * Moved FAQ.pod under the lib directory so it can get installed

      * Added bin/zipdetails

      * IO::Compress::Zip
        - In one-shot mode enable Zip64 mode if the input file/buffer
          >= 0xFFFFFFFF bytes.

      * IO::Compress::FAQ
        - Updates
This commit is contained in:
Chris 'BinGOs' Williams 2011-12-03 23:59:33 +00:00
parent 71a82d22df
commit 08ad9465ed
48 changed files with 2510 additions and 220 deletions

View File

@ -2122,6 +2122,7 @@ make install will install the following:
shasum A tool to print or check SHA checksums.
splain Describe Perl warnings and errors.
xsubpp Compiler to convert Perl XS code into C code.
zipdetails display the internal structure of zip files
library files

View File

@ -1219,6 +1219,7 @@ cpan/HTTP-Tiny/t/cases/redirect-07.txt
cpan/HTTP-Tiny/t/cases/redirect-08.txt
cpan/HTTP-Tiny/t/cases/redirect-09.txt
cpan/HTTP-Tiny/t/Util.pm
cpan/IO-Compress/bin/zipdetails IO::Compress
cpan/IO-Compress/Changes IO::Compress
cpan/IO-Compress/examples/compress-zlib/filtdef IO::Compress
cpan/IO-Compress/examples/compress-zlib/filtinf IO::Compress
@ -1242,6 +1243,7 @@ cpan/IO-Compress/lib/IO/Compress/Base/Common.pm IO::Compress
cpan/IO-Compress/lib/IO/Compress/Base.pm IO::Compress
cpan/IO-Compress/lib/IO/Compress/Bzip2.pm IO::Compress
cpan/IO-Compress/lib/IO/Compress/Deflate.pm IO::Compress
cpan/IO-Compress/lib/IO/Compress/FAQ.pod IO::Compress
cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm IO::Compress
cpan/IO-Compress/lib/IO/Compress/Gzip.pm IO::Compress
cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm IO::Compress
@ -1261,7 +1263,6 @@ cpan/IO-Compress/lib/IO/Uncompress/Inflate.pm IO::Compress
cpan/IO-Compress/lib/IO/Uncompress/RawInflate.pm IO::Compress
cpan/IO-Compress/lib/IO/Uncompress/Unzip.pm IO::Compress
cpan/IO-Compress/Makefile.PL IO::Compress
cpan/IO-Compress/pod/FAQ.pod IO::Compress
cpan/IO-Compress/private/MakeUtil.pm IO::Compress
cpan/IO-Compress/README IO::Compress
cpan/IO-Compress/t/000prereq.t IO::Compress
@ -5470,6 +5471,7 @@ utils/ptar.PL The ptar utility
utils/shasum.PL filter for computing SHA digests (analogous to md5sum)
utils/splain.PL Stand-alone version of diagnostics.pm
utils/xsubpp.PL External subroutine preprocessor
utils/zipdetails.PL display the internal structure of zip files
uts/sprintf_wrap.c sprintf wrapper for UTS
uts/strtol_wrap.c strtol wrapper for UTS
vmesa/Makefile VM/ESA Makefile

View File

@ -1035,7 +1035,7 @@ use File::Glob qw(:case);
'IO-Compress' =>
{
'MAINTAINER' => 'pmqs',
'DISTRIBUTION' => 'PMQS/IO-Compress-2.043.tar.gz',
'DISTRIBUTION' => 'PMQS/IO-Compress-2.044.tar.gz',
'FILES' => q[cpan/IO-Compress],
'EXCLUDED' => [ qr{t/Test/} ],
'UPSTREAM' => 'cpan',

View File

@ -7330,6 +7330,7 @@ $ WRITE CONFIG "$ ptargrep == """ + perl_setup_perl + " ''vms_prefix':[utils]p
$ WRITE CONFIG "$ shasum == """ + perl_setup_perl + " ''vms_prefix':[utils]shasum.com"""
$ WRITE CONFIG "$ splain == """ + perl_setup_perl + " ''vms_prefix':[utils]splain.com"""
$ WRITE CONFIG "$ xsubpp == """ + perl_setup_perl + " ''vms_prefix':[utils]xsubpp.com"""
$ WRITE CONFIG "$ zipdetails == """ + perl_setup_perl + " ''vms_prefix':[utils]zipdetails.com"""
$ CLOSE CONFIG
$!
$ echo ""

View File

@ -1,6 +1,19 @@
CHANGES
-------
2.044 2 December 2011
* Moved FAQ.pod under the lib directory so it can get installed
* Added bin/zipdetails
* IO::Compress::Zip
- In one-shot mode enable Zip64 mode if the input file/buffer
>= 0xFFFFFFFF bytes.
* IO::Compress::FAQ
- Updates
2.043 20 November 2011
* IO::Compress::Base

View File

@ -3,7 +3,7 @@
use strict ;
require 5.004 ;
$::VERSION = '2.043' ;
$::VERSION = '2.044' ;
use private::MakeUtil;
use ExtUtils::MakeMaker 5.16 ;
@ -40,6 +40,8 @@ WriteMakefile(
),
INSTALLDIRS => ($] >= 5.009 ? 'perl' : 'site'),
EXE_FILES => ['bin/zipdetails'],
(
$] >= 5.009 && $] <= 5.011001 && ! $ENV{PERL_CORE}

View File

@ -1,9 +1,9 @@
IO-Compress
Version 2.043
Version 2.044
20th November 2011
3rd December 2011
Copyright (c) 1995-2011 Paul Marquess. All rights reserved.
This program is free software; you can redistribute it
@ -89,7 +89,7 @@ To help me help you, I need all of the following information:
If you haven't installed IO-Compress then search IO::Compress::Gzip.pm
for a line like this:
$VERSION = "2.043" ;
$VERSION = "2.044" ;
2. If you are having problems building IO-Compress, send me a
complete log of what happened. Start by unpacking the IO-Compress

File diff suppressed because it is too large Load Diff

View File

@ -7,17 +7,17 @@ use Carp ;
use IO::Handle ;
use Scalar::Util qw(dualvar);
use IO::Compress::Base::Common 2.043 ;
use Compress::Raw::Zlib 2.043 ;
use IO::Compress::Gzip 2.043 ;
use IO::Uncompress::Gunzip 2.043 ;
use IO::Compress::Base::Common 2.044 ;
use Compress::Raw::Zlib 2.044 ;
use IO::Compress::Gzip 2.044 ;
use IO::Uncompress::Gunzip 2.044 ;
use strict ;
use warnings ;
use bytes ;
our ($VERSION, $XS_VERSION, @ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS);
$VERSION = '2.043';
$VERSION = '2.044';
$XS_VERSION = $VERSION;
$VERSION = eval $VERSION;
@ -453,7 +453,7 @@ sub inflate
package Compress::Zlib ;
use IO::Compress::Gzip::Constants 2.043 ;
use IO::Compress::Gzip::Constants 2.044 ;
sub memGzip($)
{
@ -1449,7 +1449,7 @@ of I<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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -4,13 +4,12 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status);
use IO::Compress::Base::Common 2.044 qw(:Status);
#use Compress::Bzip2 ;
use Compress::Raw::Bzip2 2.043 ;
use Compress::Raw::Bzip2 2.044 ;
our ($VERSION);
$VERSION = '2.043';
$VERSION = '2.044';
sub mkCompObject
{
@ -18,11 +17,12 @@ sub mkCompObject
my $WorkFactor = shift ;
my $Verbosity = shift ;
$BlockSize100K = 1 if ! defined $BlockSize100K ;
$WorkFactor = 0 if ! defined $WorkFactor ;
$Verbosity = 0 if ! defined $Verbosity ;
my ($def, $status) = new Compress::Raw::Bzip2(1, $BlockSize100K,
$WorkFactor, $Verbosity);
#my ($def, $status) = bzdeflateInit();
#-BlockSize100K => $params->value('BlockSize100K'),
#-WorkFactor => $params->value('WorkFactor');
return (undef, "Could not create Deflate object: $status", $status)
if $status != BZ_OK ;
@ -39,7 +39,6 @@ sub compr
my $def = $self->{Def};
#my ($out, $status) = $def->bzdeflate(defined ${$_[0]} ? ${$_[0]} : "") ;
my $status = $def->bzdeflate($_[0], $_[1]) ;
$self->{ErrorNo} = $status;
@ -49,8 +48,6 @@ sub compr
return STATUS_ERROR;
}
#${ $_[1] } .= $out if defined $out;
return STATUS_OK;
}
@ -60,8 +57,6 @@ sub flush
my $def = $self->{Def};
#my ($out, $status) = $def->bzflush($opt);
#my $status = $def->bzflush($_[0], $opt);
my $status = $def->bzflush($_[0]);
$self->{ErrorNo} = $status;
@ -71,7 +66,6 @@ sub flush
return STATUS_ERROR;
}
#${ $_[0] } .= $out if defined $out ;
return STATUS_OK;
}
@ -82,7 +76,6 @@ sub close
my $def = $self->{Def};
#my ($out, $status) = $def->bzclose();
my $status = $def->bzclose($_[0]);
$self->{ErrorNo} = $status;
@ -92,7 +85,6 @@ sub close
return STATUS_ERROR;
}
#${ $_[0] } .= $out if defined $out ;
return STATUS_OK;
}

View File

@ -4,12 +4,12 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status);
use IO::Compress::Base::Common 2.044 qw(:Status);
use Compress::Raw::Zlib 2.043 qw(Z_OK Z_FINISH MAX_WBITS) ;
use Compress::Raw::Zlib 2.044 qw(Z_OK Z_FINISH MAX_WBITS) ;
our ($VERSION);
$VERSION = '2.043';
$VERSION = '2.044';
sub mkCompObject
{

View File

@ -4,10 +4,10 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status);
use IO::Compress::Base::Common 2.044 qw(:Status);
our ($VERSION);
$VERSION = '2.043';
$VERSION = '2.044';
sub mkCompObject
{

View File

@ -6,7 +6,7 @@ require 5.004 ;
use strict ;
use warnings;
use IO::Compress::Base::Common 2.043 ;
use IO::Compress::Base::Common 2.044 ;
use IO::File qw(SEEK_SET SEEK_END); ;
use Scalar::Util qw(blessed readonly);
@ -20,7 +20,7 @@ use bytes;
our (@ISA, $VERSION);
@ISA = qw(Exporter IO::File);
$VERSION = '2.043';
$VERSION = '2.044';
#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.
@ -414,7 +414,7 @@ sub _singleTarget
if ($x->{oneInput})
{
$obj->getFileInfo($x->{Got}, $input)
if isaFilename($input) and $inputIsFilename ;
if isaScalar($input) || (isaFilename($input) and $inputIsFilename) ;
my $z = $obj->_create($x->{Got}, @_)
or return undef ;
@ -444,7 +444,7 @@ sub _singleTarget
else
{
$obj->getFileInfo($x->{Got}, $element)
if $isFilename;
if isaScalar($element) || $isFilename;
$obj->_create($x->{Got}, @_)
or return undef ;
@ -527,7 +527,7 @@ sub addInterStream
{
$self->getFileInfo(*$self->{Got}, $input)
#if isaFilename($input) and $inputIsFilename ;
if isaFilename($input) ;
if isaScalar($input) || isaFilename($input) ;
# TODO -- newStream needs to allow gzip/zip header to be modified
return $self->newStream();
@ -973,7 +973,7 @@ purpose if to to be sub-classed by IO::Compress modules.
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -11,15 +11,20 @@ use File::GlobMapper;
require Exporter;
our ($VERSION, @ISA, @EXPORT, %EXPORT_TAGS, $HAS_ENCODE);
@ISA = qw(Exporter);
$VERSION = '2.043';
$VERSION = '2.044';
@EXPORT = qw( isaFilehandle isaFilename whatIsInput whatIsOutput
@EXPORT = qw( isaFilehandle isaFilename isaScalar
whatIsInput whatIsOutput
isaFileGlobString cleanFileGlobString oneTarget
setBinModeInput setBinModeOutput
ckInOutParams
createSelfTiedObject
getEncoding
isGeMax32
MAX32
WANT_CODE
WANT_EXT
WANT_UNDEF
@ -42,7 +47,16 @@ use constant STATUS_OK => 0;
use constant STATUS_ENDSTREAM => 1;
use constant STATUS_EOF => 2;
use constant STATUS_ERROR => -1;
use constant MAX16 => 0xFFFF ;
use constant MAX32 => 0xFFFFFFFF ;
use constant MAX32cmp => 0xFFFFFFFF + 1 - 1; # for 5.6.x on 32-bit need to force an non-IV value
sub isGeMax32
{
return $_[0] >= MAX32cmp ;
}
sub hasEncode()
{
if (! defined $HAS_ENCODE) {
@ -106,6 +120,11 @@ sub isaFilehandle($)
)
}
sub isaScalar
{
return ( defined($_[0]) and ref($_[0]) eq 'SCALAR' and defined ${ $_[0] } ) ;
}
sub isaFilename($)
{
return (defined $_[0] and

View File

@ -5,16 +5,16 @@ use warnings;
use bytes;
require Exporter ;
use IO::Compress::Base 2.043 ;
use IO::Compress::Base 2.044 ;
use IO::Compress::Base::Common 2.043 qw(createSelfTiedObject);
use IO::Compress::Adapter::Bzip2 2.043 ;
use IO::Compress::Base::Common 2.044 qw(createSelfTiedObject);
use IO::Compress::Adapter::Bzip2 2.044 ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bzip2Error);
$VERSION = '2.043';
$VERSION = '2.044';
$Bzip2Error = '';
@ISA = qw(Exporter IO::Compress::Base);
@ -51,7 +51,7 @@ sub getExtraParams
{
my $self = shift ;
use IO::Compress::Base::Common 2.043 qw(:Parse);
use IO::Compress::Base::Common 2.044 qw(:Parse);
return (
'BlockSize100K' => [0, 1, Parse_unsigned, 1],

View File

@ -6,16 +6,16 @@ use bytes;
require Exporter ;
use IO::Compress::RawDeflate 2.043 ;
use IO::Compress::RawDeflate 2.044 ;
use Compress::Raw::Zlib 2.043 ;
use IO::Compress::Zlib::Constants 2.043 ;
use IO::Compress::Base::Common 2.043 qw(createSelfTiedObject);
use Compress::Raw::Zlib 2.044 ;
use IO::Compress::Zlib::Constants 2.044 ;
use IO::Compress::Base::Common 2.044 qw(createSelfTiedObject);
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $DeflateError);
$VERSION = '2.043';
$VERSION = '2.044';
$DeflateError = '';
@ISA = qw(Exporter IO::Compress::RawDeflate);
@ -884,8 +884,6 @@ These symbolic constants are used by the C<Strategy> option in the constructor.
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Apache::GZip Revisited">
=head2 Working with Net::FTP
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
@ -894,7 +892,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -96,6 +96,78 @@ can find it on CPAN at
http://www.cpan.org/modules/by-module/Archive/Archive-Zip-*.tar.gz
=head2 Can I Read/Write Zip files larger the 4 Gig?
Yes, both the C<IO-Compress-Zip> and C<IO-Uncompress-Unzip> modules
support the zip feature called I<Zip64>. That allows them to read/write
files/buffers larger than 4Gig.
If you are creating a Zip file using the one-shot interface, and any of the
input files is greater than 4Gig, a zip64 complaint zip file will be
created.
zip "really-large-file" => "my.zip";
Similarly with the one-shot interface, if the input is a buffer larger than
4 Gig, a zip64 complaint zip file will be created.
zip \$really_large_buffer => "my.zip";
The one-shot interface allows you to force the creation of a zip64 zip file
by including the C<Zip64> option.
zip $filehandle => "my.zip", Zip64 => 1;
If you want to create a zip64 zip file with the OO interface you must
specify the C<Zip64> option.
my $zip = new IO::Compress::Zip "whatever", Zip64 => 1;
When uncompressing with C<IO-Uncompress-Unzip>, it will automatically
detect if the zip file is zip64.
If you intend to manipulate the Zip64 zip files created with
C<IO-Compress-Zip> using an external zip/unzip, make sure that it supports
Zip64.
In particular, if you are using Info-Zip you need to have zip version 3.x
or better to update a Zip64 archive and unzip version 6.x to read a zip64
archive.
=head2 What Compression Types do IO::Compress::Zip & IO::Uncompress::Unzip support?
The following compression formats are supported by C<IO::Compress::Zip> and
C<IO::Uncompress::Unzip>
=over 5
=item * Store (method 0)
NO compression at all.
=item * Deflate (method 8)
This is the default compression used when creating a zip file with
C<IO::Compress::Zip>.
=item * Bzip2 (method 12)
Only supported if the C<IO-Compress-Bzip2> module is available.
=item * Lzma (method 14)
Only supported if the C<IO-Compress-Lzma> module is available.
=back
=head2 Zip Resources
The primary reference for zip files is the "appnote" document available at
L<http://www.pkware.com/documents/casestudies/APPNOTE.TXT>
An alternatively is the Info-Zip appnote. This is available from
L<ftp://ftp.info-zip.org/pub/infozip/doc/>
=head2 Compressed files and Net::FTP
The C<Net::FTP> module provides two low-level methods called C<stor> and
@ -491,7 +563,7 @@ file.
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -8,12 +8,12 @@ use warnings;
use bytes;
use IO::Compress::RawDeflate 2.043 ;
use IO::Compress::RawDeflate 2.044 ;
use Compress::Raw::Zlib 2.043 ;
use IO::Compress::Base::Common 2.043 qw(:Status :Parse createSelfTiedObject);
use IO::Compress::Gzip::Constants 2.043 ;
use IO::Compress::Zlib::Extra 2.043 ;
use Compress::Raw::Zlib 2.044 ;
use IO::Compress::Base::Common 2.044 qw(:Status :Parse isaScalar createSelfTiedObject);
use IO::Compress::Gzip::Constants 2.044 ;
use IO::Compress::Zlib::Extra 2.044 ;
BEGIN
{
@ -27,7 +27,7 @@ require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $GzipError);
$VERSION = '2.043';
$VERSION = '2.044';
$GzipError = '' ;
@ISA = qw(Exporter IO::Compress::RawDeflate);
@ -178,6 +178,8 @@ sub getFileInfo
my $params = shift;
my $filename = shift ;
return if isaScalar($filename);
my $defaultTime = (stat($filename))[9] ;
$params->value('Name' => $filename)
@ -1196,8 +1198,6 @@ These symbolic constants are used by the C<Strategy> option in the constructor.
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Apache::GZip Revisited">
=head2 Working with Net::FTP
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
@ -1206,7 +1206,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -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.043';
$VERSION = '2.044';
@ISA = qw(Exporter);

View File

@ -7,16 +7,16 @@ use warnings;
use bytes;
use IO::Compress::Base 2.043 ;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use IO::Compress::Adapter::Deflate 2.043 ;
use IO::Compress::Base 2.044 ;
use IO::Compress::Base::Common 2.044 qw(:Status createSelfTiedObject);
use IO::Compress::Adapter::Deflate 2.044 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %DEFLATE_CONSTANTS, %EXPORT_TAGS, $RawDeflateError);
$VERSION = '2.043';
$VERSION = '2.044';
$RawDeflateError = '';
@ISA = qw(Exporter IO::Compress::Base);
@ -142,8 +142,8 @@ sub getZlibParams
{
my $self = shift ;
use IO::Compress::Base::Common 2.043 qw(:Parse);
use Compress::Raw::Zlib 2.043 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
use IO::Compress::Base::Common 2.044 qw(:Parse);
use Compress::Raw::Zlib 2.044 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
return (
@ -971,8 +971,6 @@ These symbolic constants are used by the C<Strategy> option in the constructor.
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Apache::GZip Revisited">
=head2 Working with Net::FTP
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
@ -981,7 +979,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -4,28 +4,30 @@ use strict ;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use IO::Compress::RawDeflate 2.043 ;
use IO::Compress::Adapter::Deflate 2.043 ;
use IO::Compress::Adapter::Identity 2.043 ;
use IO::Compress::Zlib::Extra 2.043 ;
use IO::Compress::Zip::Constants 2.043 ;
use IO::Compress::Base::Common 2.044 qw(:Status MAX32 isGeMax32 isaScalar createSelfTiedObject);
use IO::Compress::RawDeflate 2.044 ;
use IO::Compress::Adapter::Deflate 2.044 ;
use IO::Compress::Adapter::Identity 2.044 ;
use IO::Compress::Zlib::Extra 2.044 ;
use IO::Compress::Zip::Constants 2.044 ;
use File::Spec();
use Config;
use Compress::Raw::Zlib 2.043 qw(crc32) ;
use Compress::Raw::Zlib 2.044 qw(crc32) ;
BEGIN
{
eval { require IO::Compress::Adapter::Bzip2 ;
import IO::Compress::Adapter::Bzip2 2.043 ;
import IO::Compress::Adapter::Bzip2 2.044 ;
require IO::Compress::Bzip2 ;
import IO::Compress::Bzip2 2.043 ;
import IO::Compress::Bzip2 2.044 ;
} ;
eval { require IO::Compress::Adapter::Lzma ;
import IO::Compress::Adapter::Lzma 2.043 ;
import IO::Compress::Adapter::Lzma 2.044 ;
require IO::Compress::Lzma ;
import IO::Compress::Lzma 2.043 ;
import IO::Compress::Lzma 2.044 ;
} ;
}
@ -34,7 +36,7 @@ require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $ZipError);
$VERSION = '2.043';
$VERSION = '2.044';
$ZipError = '';
@ISA = qw(Exporter IO::Compress::RawDeflate);
@ -248,7 +250,7 @@ sub mkHeader
if $osCode == ZIP_OS_CODE_UNIX ;
if (*$self->{ZipData}{Zip64}) {
$empty = 0xFFFFFFFF;
$empty = MAX32;
my $x = '';
$x .= pack "V V", 0, 0 ; # uncompressedLength
@ -368,7 +370,7 @@ sub mkHeader
# offset to local hdr
if (*$self->{ZipData}{LocalHdrOffset}->is64bit() ) {
$ctl .= pack 'V', 0xFFFFFFFF ;
$ctl .= pack 'V', MAX32 ;
}
else {
$ctl .= *$self->{ZipData}{LocalHdrOffset}->getPacked_V32() ;
@ -512,8 +514,8 @@ sub mkFinalTrailer
$z64e .= *$self->{ZipData}{Offset}->getPacked_V64() ; # offset to end zip64 central dir
$z64e .= pack 'V', 1 ; # Total number of disks
$cd_offset = 0xFFFFFFFF ;
$cd_len = 0xFFFFFFFF if $cd_len >= 0xFFFFFFFF ;
$cd_offset = MAX32 ;
$cd_len = MAX32 if isGeMax32 $cd_len ;
$entries = 0xFFFF if $entries >= 0xFFFF ;
}
@ -641,15 +643,14 @@ sub getExtraParams
{
my $self = shift ;
use IO::Compress::Base::Common 2.043 qw(:Parse);
use Compress::Raw::Zlib 2.043 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
use IO::Compress::Base::Common 2.044 qw(:Parse);
use Compress::Raw::Zlib 2.044 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
my @Bzip2 = ();
@Bzip2 = IO::Compress::Bzip2::getExtraParams($self)
if defined $IO::Compress::Bzip2::VERSION;
return (
# zlib behaviour
$self->getZlibParams(),
@ -704,9 +705,20 @@ sub getFileInfo
my $params = shift;
my $filename = shift ;
if (isaScalar($filename))
{
$params->value(Zip64 => 1)
if isGeMax32 length (${ $filename }) ;
return ;
}
my ($mode, $uid, $gid, $atime, $mtime, $ctime)
= (stat($filename))[2, 4,5, 8,9,10] ;
$params->value(Zip64 => 1)
if isGeMax32 -s $filename ;
$params->value('Name' => $filename)
if ! $params->parsed('Name') ;
@ -1416,11 +1428,14 @@ The default is 1.
=item C<< Zip64 => 0|1 >>
Create a Zip64 zip file/buffer. This option should only be used if you want
to store files larger than 4 Gig.
Create a Zip64 zip file/buffer. This option is used if you want
to store files larger than 4 Gig.
C<Zip64> will be automatically set, as needed, if working with the one-shot
interface when the input is either a filename or a scalar reference.
If you intend to manipulate the Zip64 zip files created with this module
using an external zip/unzip make sure that it supports Zip64.
using an external zip/unzip, make sure that it supports Zip64.
In particular, if you are using Info-Zip you need to have zip version 3.x
or better to update a Zip64 archive and unzip version 6.x to read a zip64
@ -1855,8 +1870,6 @@ constructor.
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Apache::GZip Revisited">
=head2 Working with Net::FTP
See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
@ -1865,7 +1878,7 @@ See L<IO::Compress::FAQ|IO::Compress::FAQ/"Compressed files and Net::FTP">
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -7,7 +7,7 @@ require Exporter;
our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS);
$VERSION = '2.043';
$VERSION = '2.044';
@ISA = qw(Exporter);

View File

@ -9,7 +9,7 @@ require Exporter;
our ($VERSION, @ISA, @EXPORT);
$VERSION = '2.043';
$VERSION = '2.044';
@ISA = qw(Exporter);

View File

@ -8,9 +8,9 @@ use bytes;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS);
$VERSION = '2.043';
$VERSION = '2.044';
use IO::Compress::Gzip::Constants 2.043 ;
use IO::Compress::Gzip::Constants 2.044 ;
sub ExtraFieldError
{

View File

@ -4,12 +4,12 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status);
use IO::Compress::Base::Common 2.044 qw(:Status);
use Compress::Raw::Bzip2 2.043 ;
use Compress::Raw::Bzip2 2.044 ;
our ($VERSION, @ISA);
$VERSION = '2.043';
$VERSION = '2.044';
sub mkUncompObject
{

View File

@ -4,14 +4,14 @@ use warnings;
use strict;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status);
use IO::Compress::Base::Common 2.044 qw(:Status);
use IO::Compress::Zip::Constants ;
our ($VERSION);
$VERSION = '2.043';
$VERSION = '2.044';
use Compress::Raw::Zlib 2.043 ();
use Compress::Raw::Zlib 2.044 ();
sub mkUncompObject
{

View File

@ -4,11 +4,11 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status);
use Compress::Raw::Zlib 2.043 qw(Z_OK Z_BUF_ERROR Z_STREAM_END Z_FINISH MAX_WBITS);
use IO::Compress::Base::Common 2.044 qw(:Status);
use Compress::Raw::Zlib 2.044 qw(Z_OK Z_BUF_ERROR Z_STREAM_END Z_FINISH MAX_WBITS);
our ($VERSION);
$VERSION = '2.043';
$VERSION = '2.044';

View File

@ -6,22 +6,22 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(createSelfTiedObject);
use IO::Compress::Base::Common 2.044 qw(createSelfTiedObject);
use IO::Uncompress::Adapter::Inflate 2.043 ();
use IO::Uncompress::Adapter::Inflate 2.044 ();
use IO::Uncompress::Base 2.043 ;
use IO::Uncompress::Gunzip 2.043 ;
use IO::Uncompress::Inflate 2.043 ;
use IO::Uncompress::RawInflate 2.043 ;
use IO::Uncompress::Unzip 2.043 ;
use IO::Uncompress::Base 2.044 ;
use IO::Uncompress::Gunzip 2.044 ;
use IO::Uncompress::Inflate 2.044 ;
use IO::Uncompress::RawInflate 2.044 ;
use IO::Uncompress::Unzip 2.044 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyInflateError);
$VERSION = '2.043';
$VERSION = '2.044';
$AnyInflateError = '';
@ISA = qw( Exporter IO::Uncompress::Base );
@ -48,7 +48,7 @@ sub anyinflate
sub getExtraParams
{
use IO::Compress::Base::Common 2.043 qw(:Parse);
use IO::Compress::Base::Common 2.044 qw(:Parse);
return ( 'RawInflate' => [1, 1, Parse_boolean, 0] ) ;
}
@ -951,7 +951,7 @@ See L<IO::Uncompress::AnyInflate::FAQ|IO::Uncompress::AnyInflate::FAQ/"Compresse
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -4,16 +4,16 @@ use strict;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(createSelfTiedObject);
use IO::Compress::Base::Common 2.044 qw(createSelfTiedObject);
use IO::Uncompress::Base 2.043 ;
use IO::Uncompress::Base 2.044 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyUncompressError);
$VERSION = '2.043';
$VERSION = '2.044';
$AnyUncompressError = '';
@ISA = qw( Exporter IO::Uncompress::Base );
@ -27,22 +27,22 @@ Exporter::export_ok_tags('all');
BEGIN
{
eval ' use IO::Uncompress::Adapter::Inflate 2.043 ;';
eval ' use IO::Uncompress::Adapter::Bunzip2 2.043 ;';
eval ' use IO::Uncompress::Adapter::LZO 2.043 ;';
eval ' use IO::Uncompress::Adapter::Lzf 2.043 ;';
eval ' use IO::Uncompress::Adapter::UnLzma 2.043 ;';
eval ' use IO::Uncompress::Adapter::UnXz 2.043 ;';
eval ' use IO::Uncompress::Adapter::Inflate 2.044 ;';
eval ' use IO::Uncompress::Adapter::Bunzip2 2.044 ;';
eval ' use IO::Uncompress::Adapter::LZO 2.044 ;';
eval ' use IO::Uncompress::Adapter::Lzf 2.044 ;';
eval ' use IO::Uncompress::Adapter::UnLzma 2.044 ;';
eval ' use IO::Uncompress::Adapter::UnXz 2.044 ;';
eval ' use IO::Uncompress::Bunzip2 2.043 ;';
eval ' use IO::Uncompress::UnLzop 2.043 ;';
eval ' use IO::Uncompress::Gunzip 2.043 ;';
eval ' use IO::Uncompress::Inflate 2.043 ;';
eval ' use IO::Uncompress::RawInflate 2.043 ;';
eval ' use IO::Uncompress::Unzip 2.043 ;';
eval ' use IO::Uncompress::UnLzf 2.043 ;';
eval ' use IO::Uncompress::UnLzma 2.043 ;';
eval ' use IO::Uncompress::UnXz 2.043 ;';
eval ' use IO::Uncompress::Bunzip2 2.044 ;';
eval ' use IO::Uncompress::UnLzop 2.044 ;';
eval ' use IO::Uncompress::Gunzip 2.044 ;';
eval ' use IO::Uncompress::Inflate 2.044 ;';
eval ' use IO::Uncompress::RawInflate 2.044 ;';
eval ' use IO::Uncompress::Unzip 2.044 ;';
eval ' use IO::Uncompress::UnLzf 2.044 ;';
eval ' use IO::Uncompress::UnLzma 2.044 ;';
eval ' use IO::Uncompress::UnXz 2.044 ;';
}
sub new
@ -60,7 +60,7 @@ sub anyuncompress
sub getExtraParams
{
use IO::Compress::Base::Common 2.043 qw(:Parse);
use IO::Compress::Base::Common 2.044 qw(:Parse);
return ( 'RawInflate' => [1, 1, Parse_boolean, 0] ,
'UnLzma' => [1, 1, Parse_boolean, 0] ) ;
}
@ -995,7 +995,7 @@ Same as doing this
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -9,12 +9,12 @@ our (@ISA, $VERSION, @EXPORT_OK, %EXPORT_TAGS);
@ISA = qw(Exporter IO::File);
$VERSION = '2.043';
$VERSION = '2.044';
use constant G_EOF => 0 ;
use constant G_ERR => -1 ;
use IO::Compress::Base::Common 2.043 ;
use IO::Compress::Base::Common 2.044 ;
use IO::File ;
use Symbol;
@ -1043,6 +1043,13 @@ sub streamCount
return scalar @{ *$self->{InfoList} } ;
}
#sub read
#{
# my $status = myRead(@_);
# return undef if $status < 0;
# return $status;
#}
sub read
{
# return codes
@ -1496,7 +1503,7 @@ purpose if to to be sub-classed by IO::Uncompress modules.
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -4,15 +4,15 @@ use strict ;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use IO::Compress::Base::Common 2.044 qw(:Status createSelfTiedObject);
use IO::Uncompress::Base 2.043 ;
use IO::Uncompress::Adapter::Bunzip2 2.043 ;
use IO::Uncompress::Base 2.044 ;
use IO::Uncompress::Adapter::Bunzip2 2.044 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bunzip2Error);
$VERSION = '2.043';
$VERSION = '2.044';
$Bunzip2Error = '';
@ISA = qw( Exporter IO::Uncompress::Base );
@ -40,7 +40,7 @@ sub getExtraParams
{
my $self = shift ;
use IO::Compress::Base::Common 2.043 qw(:Parse);
use IO::Compress::Base::Common 2.044 qw(:Parse);
return (
'Verbosity' => [1, 1, Parse_boolean, 0],

View File

@ -9,12 +9,12 @@ use strict ;
use warnings;
use bytes;
use IO::Uncompress::RawInflate 2.043 ;
use IO::Uncompress::RawInflate 2.044 ;
use Compress::Raw::Zlib 2.043 qw( crc32 ) ;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use IO::Compress::Gzip::Constants 2.043 ;
use IO::Compress::Zlib::Extra 2.043 ;
use Compress::Raw::Zlib 2.044 qw( crc32 ) ;
use IO::Compress::Base::Common 2.044 qw(:Status createSelfTiedObject);
use IO::Compress::Gzip::Constants 2.044 ;
use IO::Compress::Zlib::Extra 2.044 ;
require Exporter ;
@ -28,7 +28,7 @@ Exporter::export_ok_tags('all');
$GunzipError = '';
$VERSION = '2.043';
$VERSION = '2.044';
sub new
{
@ -47,7 +47,7 @@ sub gunzip
sub getExtraParams
{
use IO::Compress::Base::Common 2.043 qw(:Parse);
use IO::Compress::Base::Common 2.044 qw(:Parse);
return ( 'ParseExtra' => [1, 1, Parse_boolean, 0] ) ;
}
@ -1075,7 +1075,7 @@ See L<IO::Uncompress::Gunzip::FAQ|IO::Uncompress::Gunzip::FAQ/"Compressed files
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -5,15 +5,15 @@ use strict ;
use warnings;
use bytes;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use IO::Compress::Zlib::Constants 2.043 ;
use IO::Compress::Base::Common 2.044 qw(:Status createSelfTiedObject);
use IO::Compress::Zlib::Constants 2.044 ;
use IO::Uncompress::RawInflate 2.043 ;
use IO::Uncompress::RawInflate 2.044 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $InflateError);
$VERSION = '2.043';
$VERSION = '2.044';
$InflateError = '';
@ISA = qw( Exporter IO::Uncompress::RawInflate );
@ -946,7 +946,7 @@ See L<IO::Uncompress::Inflate::FAQ|IO::Uncompress::Inflate::FAQ/"Compressed file
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -5,16 +5,16 @@ use strict ;
use warnings;
use bytes;
use Compress::Raw::Zlib 2.043 ;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use Compress::Raw::Zlib 2.044 ;
use IO::Compress::Base::Common 2.044 qw(:Status createSelfTiedObject);
use IO::Uncompress::Base 2.043 ;
use IO::Uncompress::Adapter::Inflate 2.043 ;
use IO::Uncompress::Base 2.044 ;
use IO::Uncompress::Adapter::Inflate 2.044 ;
require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $RawInflateError);
$VERSION = '2.043';
$VERSION = '2.044';
$RawInflateError = '';
@ISA = qw( Exporter IO::Uncompress::Base );
@ -1074,7 +1074,7 @@ See L<IO::Uncompress::RawInflate::FAQ|IO::Uncompress::RawInflate::FAQ/"Compresse
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -9,14 +9,14 @@ use warnings;
use bytes;
use IO::File;
use IO::Uncompress::RawInflate 2.043 ;
use IO::Compress::Base::Common 2.043 qw(:Status createSelfTiedObject);
use IO::Uncompress::Adapter::Inflate 2.043 ;
use IO::Uncompress::Adapter::Identity 2.043 ;
use IO::Compress::Zlib::Extra 2.043 ;
use IO::Compress::Zip::Constants 2.043 ;
use IO::Uncompress::RawInflate 2.044 ;
use IO::Compress::Base::Common 2.044 qw(:Status createSelfTiedObject);
use IO::Uncompress::Adapter::Inflate 2.044 ;
use IO::Uncompress::Adapter::Identity 2.044 ;
use IO::Compress::Zlib::Extra 2.044 ;
use IO::Compress::Zip::Constants 2.044 ;
use Compress::Raw::Zlib 2.043 qw(crc32) ;
use Compress::Raw::Zlib 2.044 qw(crc32) ;
BEGIN
{
@ -31,7 +31,7 @@ require Exporter ;
our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $UnzipError, %headerLookup);
$VERSION = '2.043';
$VERSION = '2.044';
$UnzipError = '';
@ISA = qw(Exporter IO::Uncompress::RawInflate);
@ -64,7 +64,7 @@ sub unzip
sub getExtraParams
{
use IO::Compress::Base::Common 2.043 qw(:Parse);
use IO::Compress::Base::Common 2.044 qw(:Parse);
return (
@ -1812,7 +1812,7 @@ skipping to the next one.
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::FAQ|Compress::Zlib::FAQ>
L<IO::Compress::FAQ|IO::Compress::FAQ>
L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
L<Archive::Tar|Archive::Tar>,

View File

@ -25,7 +25,7 @@ BEGIN
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
my $VERSION = '2.043';
my $VERSION = '2.044';
my @NAMES = qw(
Compress::Raw::Bzip2
Compress::Raw::Zlib

View File

@ -28,7 +28,7 @@ BEGIN {
$extra = 1
if eval { require Test::NoWarnings ; import Test::NoWarnings; 1 };
plan tests => 152 + $extra ;
plan tests => 248 + $extra ;
#use_ok('IO::Compress::Zip', qw(zip $ZipError :zip_method)) ;
use_ok('IO::Compress::Zip', qw(:all)) ;
@ -67,41 +67,55 @@ sub zipGetHeader
}
for my $stream (0, 1)
for my $input (0, 1)
{
for my $zip64 (0, 1)
for my $stream (0, 1)
{
#next if $zip64 && ! $stream;
for my $method (ZIP_CM_STORE, ZIP_CM_DEFLATE, ZIP_CM_BZIP2)
for my $zip64 (0, 1)
{
title "Stream $stream, Zip64 $zip64, Method $method";
#next if $zip64 && ! $stream;
my $lex = new LexFile my $file1;
for my $method (ZIP_CM_STORE, ZIP_CM_DEFLATE, ZIP_CM_BZIP2)
{
title "Input $input, Stream $stream, Zip64 $zip64, Method $method";
my $content = "hello ";
#writeFile($file1, $content);
my $lex1 = new LexFile my $file1;
my $lex2 = new LexFile my $file2;
my $content = "hello ";
my $in ;
ok zip(\$content => $file1 , Method => $method,
Zip64 => $zip64,
Stream => $stream), " zip ok"
or diag $ZipError ;
if ($input)
{
writeFile($file2, $content);
$in = $file2;
}
else
{
$in = \$content;
}
my $got ;
ok unzip($file1 => \$got), " unzip ok"
or diag $UnzipError ;
is $got, $content, " content ok";
ok zip($in => $file1 , Method => $method,
Zip64 => $zip64,
Stream => $stream), " zip ok"
or diag $ZipError ;
my $u = new IO::Uncompress::Unzip $file1
or diag $ZipError ;
my $got ;
ok unzip($file1 => \$got), " unzip ok"
or diag $UnzipError ;
my $hdr = $u->getHeaderInfo();
ok $hdr, " got header";
is $got, $content, " content ok";
is $hdr->{Stream}, $stream, " stream is $stream" ;
is $hdr->{MethodID}, $method, " MethodID is $method" ;
is $hdr->{Zip64}, $zip64, " Zip64 is $zip64" ;
my $u = new IO::Uncompress::Unzip $file1
or diag $ZipError ;
my $hdr = $u->getHeaderInfo();
ok $hdr, " got header";
is $hdr->{Stream}, $stream, " stream is $stream" ;
is $hdr->{MethodID}, $method, " MethodID is $method" ;
is $hdr->{Zip64}, $zip64, " Zip64 is $zip64" ;
}
}
}
}

View File

@ -707,8 +707,9 @@ sub installlib {
# scripts in lib/ExtUtils, the prove script in lib/Test/Harness,
# the corelist script from lib/Module/CoreList/bin and ptar* in
# lib/Archive/Tar/bin, the config_data script in lib/Module/Build/scripts
# and zipdetails in cpan/IO-Compress/bin
# (they're installed later with other utils)
return if $name =~ /^(?:cpan|instmodsh|prove|corelist|ptar|cpan2dist|cpanp|cpanp-run-perl|ptardiff|ptargrep|config_data)\z/;
return if $name =~ /^(?:cpan|instmodsh|prove|corelist|ptar|cpan2dist|cpanp|cpanp-run-perl|ptardiff|ptargrep|config_data|zipdetails)\z/;
# ignore the Makefiles
return if $name =~ /^makefile$/i;
# ignore the test extensions

View File

@ -119,7 +119,9 @@ L<Compress::Raw::Bzip2> has been upgraded from version 2.042 to version 2.044.
=item *
L<IO::Compress::Base> has been upgraded from version 2.042 to version 2.043.
L<IO::Compress::Base> has been upgraded from version 2.042 to version 2.044.
Added zipdetails utility.
=item *
@ -260,13 +262,14 @@ here. Most of these are built within the directories F<utils> and F<x2p>.
entries for each change
Use L<XXX> with program names to get proper documentation linking. ]
=head3 L<XXX>
=head3 L<zipdetails>
=over 4
=item *
XXX
L<zipdetails> displays information about the internal record structure of the zip file.
It is not concerned with displaying any details of the compressed data stored in the zip file.
=back

View File

@ -256,6 +256,11 @@ in a tar archive.
This utility, that comes with the C<Digest::SHA> module, is used to print
or verify SHA checksums.
=item L<zipdetails>
L<zipdetails> displays information about the internal record structure of the zip file.
It is not concerned with displaying any details of the compressed data stored in the zip file.
=back
=head2 Installation
@ -301,6 +306,6 @@ C<roffitall|roffitall>, L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>,
L<File::Find|File::Find>, L<pl2pm|pl2pm>, L<perlbug|perlbug>,
L<h2ph|h2ph>, L<c2ph|c2ph>, L<h2xs|h2xs>, L<enc2xs>, L<xsubpp>,
L<cpan>, L<cpanp>, L<cpan2dist>, L<instmodsh>, L<piconv>, L<prove>,
L<corelist>, L<ptar>, L<ptardiff>, L<shasum>
L<corelist>, L<ptar>, L<ptardiff>, L<shasum>, L<zipdetails>
=cut

View File

@ -191,7 +191,7 @@ ext/vms-dclsym/dclsym.pm Verbatim line length including indents exceeds 79 by 1
ext/vms-stdio/stdio.pm Verbatim line length including indents exceeds 79 by 1
ext/xs-apitest/apitest.pm Verbatim line length including indents exceeds 79 by 1
install ? Should you be using F<...> or maybe L<...> instead of 1
install Verbatim line length including indents exceeds 79 by 10
install Verbatim line length including indents exceeds 79 by 11
installhtml Verbatim line length including indents exceeds 79 by 5
os2/os2/os2-extattr/extattr.pm ? Should you be using F<...> or maybe L<...> instead of 1
os2/os2/os2-process/process.pm Verbatim line length including indents exceeds 79 by 27

View File

@ -41,6 +41,7 @@ utils/cpan2dist
utils/shasum
utils/splain
utils/xsubpp
utils/zipdetails
x2p/a2p # pod = x2p/a2p.pod
x2p/find2perl
x2p/s2p # link = x2p/psed

View File

@ -10,9 +10,9 @@ RUN = # Used mainly cross-compilation setups.
# Files to be built with variable substitution after miniperl is
# available. Dependencies handled manually below (for now).
pl = c2ph.PL config_data.PL corelist.PL cpan.PL h2ph.PL h2xs.PL instmodsh.PL json_pp.PL perlbug.PL perldoc.PL perlivp.PL pl2pm.PL prove.PL ptar.PL ptardiff.PL ptargrep.PL cpanp-run-perl.PL cpanp.PL cpan2dist.PL shasum.PL splain.PL libnetcfg.PL piconv.PL enc2xs.PL xsubpp.PL pod2html.PL
plextract = c2ph config_data corelist cpan h2ph h2xs instmodsh json_pp perlbug perldoc perlivp pl2pm prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum splain libnetcfg piconv enc2xs xsubpp pod2html
plextractexe = ./c2ph ./config_data ./corelist ./cpan ./h2ph ./h2xs ./json_pp ./instmodsh ./perlbug ./perldoc ./perlivp ./pl2pm ./prove ./ptar ./ptardiff ./ptargrep ./cpanp-run-perl ./cpanp ./cpan2dist ./shasum ./splain ./libnetcfg ./piconv ./enc2xs ./xsubpp ./pod2html
pl = c2ph.PL config_data.PL corelist.PL cpan.PL h2ph.PL h2xs.PL instmodsh.PL json_pp.PL perlbug.PL perldoc.PL perlivp.PL pl2pm.PL prove.PL ptar.PL ptardiff.PL ptargrep.PL cpanp-run-perl.PL cpanp.PL cpan2dist.PL shasum.PL splain.PL libnetcfg.PL piconv.PL enc2xs.PL xsubpp.PL pod2html.PL zipdetails.PL
plextract = c2ph config_data corelist cpan h2ph h2xs instmodsh json_pp perlbug perldoc perlivp pl2pm prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum splain libnetcfg piconv enc2xs xsubpp pod2html zipdetails
plextractexe = ./c2ph ./config_data ./corelist ./cpan ./h2ph ./h2xs ./json_pp ./instmodsh ./perlbug ./perldoc ./perlivp ./pl2pm ./prove ./ptar ./ptardiff ./ptargrep ./cpanp-run-perl ./cpanp ./cpan2dist ./shasum ./splain ./libnetcfg ./piconv ./enc2xs ./xsubpp ./pod2html ./zipdetails
all: $(plextract)
@ -69,6 +69,8 @@ enc2xs: enc2xs.PL ../config.sh
xsubpp: xsubpp.PL ../config.sh
zipdetails: zipdetails.PL ../config.sh
pod2html: pod2html.PL ../config.sh ../ext/Pod-Html/bin/pod2html
clean:

View File

@ -48,9 +48,9 @@ cat >>Makefile <<'!NO!SUBS!'
# Files to be built with variable substitution after miniperl is
# available. Dependencies handled manually below (for now).
pl = c2ph.PL config_data.PL corelist.PL cpan.PL h2ph.PL h2xs.PL instmodsh.PL json_pp.PL perlbug.PL perldoc.PL perlivp.PL pl2pm.PL prove.PL ptar.PL ptardiff.PL ptargrep.PL cpanp-run-perl.PL cpanp.PL cpan2dist.PL shasum.PL splain.PL libnetcfg.PL piconv.PL enc2xs.PL xsubpp.PL pod2html.PL
plextract = c2ph config_data corelist cpan h2ph h2xs instmodsh json_pp perlbug perldoc perlivp pl2pm prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum splain libnetcfg piconv enc2xs xsubpp pod2html
plextractexe = ./c2ph ./config_data ./corelist ./cpan ./h2ph ./h2xs ./json_pp ./instmodsh ./perlbug ./perldoc ./perlivp ./pl2pm ./prove ./ptar ./ptardiff ./ptargrep ./cpanp-run-perl ./cpanp ./cpan2dist ./shasum ./splain ./libnetcfg ./piconv ./enc2xs ./xsubpp ./pod2html
pl = c2ph.PL config_data.PL corelist.PL cpan.PL h2ph.PL h2xs.PL instmodsh.PL json_pp.PL perlbug.PL perldoc.PL perlivp.PL pl2pm.PL prove.PL ptar.PL ptardiff.PL ptargrep.PL cpanp-run-perl.PL cpanp.PL cpan2dist.PL shasum.PL splain.PL libnetcfg.PL piconv.PL enc2xs.PL xsubpp.PL pod2html.PL zipdetails.PL
plextract = c2ph config_data corelist cpan h2ph h2xs instmodsh json_pp perlbug perldoc perlivp pl2pm prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum splain libnetcfg piconv enc2xs xsubpp pod2html zipdetails
plextractexe = ./c2ph ./config_data ./corelist ./cpan ./h2ph ./h2xs ./json_pp ./instmodsh ./perlbug ./perldoc ./perlivp ./pl2pm ./prove ./ptar ./ptardiff ./ptargrep ./cpanp-run-perl ./cpanp ./cpan2dist ./shasum ./splain ./libnetcfg ./piconv ./enc2xs ./xsubpp ./pod2html ./zipdetails
all: $(plextract)
@ -107,6 +107,8 @@ enc2xs: enc2xs.PL ../config.sh
xsubpp: xsubpp.PL ../config.sh
zipdetails: zipdetails.PL ../config.sh
pod2html: pod2html.PL ../config.sh ../ext/Pod-Html/bin/pod2html
clean:

51
utils/zipdetails.PL Normal file
View File

@ -0,0 +1,51 @@
#!/usr/local/bin/perl
use Config;
use File::Basename qw(&basename &dirname);
use Cwd;
# List explicitly here the variables you want Configure to
# generate. Metaconfig only looks for shell variables, so you
# have to mention them as if they were shell variables, not
# %Config entries. Thus you write
# $startperl
# to ensure Configure will look for $Config{startperl}.
# This forces PL files to create target in same directory as PL file.
# This is so that make depend always knows where to find PL derivatives.
my $origdir = cwd;
chdir dirname($0);
my $file = basename($0, '.PL');
$file .= '.com' if $^O eq 'VMS';
open OUT,">$file" or die "Can't create $file: $!";
print "Extracting $file (with variable substitutions)\n";
# In this section, perl variables will be expanded during extraction.
# You can use $Config{...} to use Configure variables.
print OUT <<"!GROK!THIS!";
$Config{startperl}
eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}'
if \$running_under_some_shell;
!GROK!THIS!
use File::Spec;
my $script = File::Spec->catfile(
File::Spec->catdir(
File::Spec->updir, qw[ cpan IO-Compress bin ]
), "zipdetails");
if (open(IN, $script)) {
print OUT <IN>;
close IN;
} else {
die "$0: cannot find '$script'\n";
}
close OUT or die "Can't close $file: $!";
chmod 0755, $file or die "Can't reset permissions for $file: $!\n";
exec("$Config{'eunicefix'} $file") if $Config{'eunicefix'} ne ':';
chdir $origdir;

View File

@ -313,7 +313,7 @@ utils1 = [.utils]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils
utils2 = [.utils]h2xs.com [.utils]libnetcfg.com [.lib]perlbug.com [.utils]json_pp.com
utils3 = [.utils]perlivp.com [.lib]splain.com [.utils]pl2pm.com [.utils]xsubpp.com [.utils]pod2html.com [.utils]instmodsh.com
utils4 = [.utils]enc2xs.com [.utils]piconv.com [.utils]cpan.com [.utils]prove.com [.utils]ptar.com [.utils]ptardiff.com [.utils]shasum.com
utils5 = [.utils]corelist.com [.utils]config_data.com [.utils]cpanp.com [.utils]cpan2dist.com [.utils]cpanp-run-perl.com [.utils]ptargrep.com
utils5 = [.utils]corelist.com [.utils]config_data.com [.utils]cpanp.com [.utils]cpan2dist.com [.utils]cpanp-run-perl.com [.utils]ptargrep.com [.utils]zipdetails.com
.ifdef NOX2P
all : base extras archcorefiles preplibrary [.pod]perltoc.pod
@ -561,6 +561,9 @@ nonxsext : $(LIBPREREQ) preplibrary $(MINIPERL_EXE)
[.utils]xsubpp.com : [.utils]xsubpp.PL $(ARCHDIR)Config.pm nonxsext
$(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
[.utils]zipdetails.com : [.utils]zipdetails.PL $(ARCHDIR)Config.pm nonxsext
$(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
[.utils]pod2html.com : [.utils]pod2html.PL $(ARCHDIR)Config.pm nonxsext
$(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)

View File

@ -583,6 +583,7 @@ UTILS = \
..\utils\ptar \
..\utils\ptardiff \
..\utils\ptargrep \
..\utils\zipdetails \
..\utils\cpanp-run-perl \
..\utils\cpanp \
..\utils\cpan2dist \
@ -1180,7 +1181,7 @@ distclean: realclean
perlvos.pod perlwin32.pod
-cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \
perldoc perlivp libnetcfg enc2xs piconv cpan *.bat \
xsubpp pod2html instmodsh json_pp prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum corelist config_data
xsubpp pod2html instmodsh json_pp prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum corelist config_data zipdetails
-cd ..\x2p && del /f find2perl s2p psed *.bat
-del /f ..\config.sh perlmain.c dlutils.c config.h.new \
perlmainst.c

View File

@ -675,6 +675,7 @@ UTILS = \
..\utils\ptar \
..\utils\ptardiff \
..\utils\ptargrep \
..\utils\zipdetails \
..\utils\cpanp-run-perl \
..\utils\cpanp \
..\utils\cpan2dist \
@ -1365,7 +1366,7 @@ distclean: realclean
perlvos.pod perlwin32.pod
-cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \
perldoc perlivp libnetcfg enc2xs piconv cpan *.bat \
xsubpp pod2html instmodsh json_pp prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum corelist config_data
xsubpp pod2html instmodsh json_pp prove ptar ptardiff ptargrep cpanp-run-perl cpanp cpan2dist shasum corelist config_data zipdetails
-cd ..\x2p && del /f find2perl s2p psed *.bat
-del /f ..\config.sh perlmain.c dlutils.c config.h.new \
perlmainst.c