The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Changes 010
META.json 33
META.yml 33
Makefile.PL 11
README 33
lib/Compress/Zlib.pm 66
lib/IO/Compress/Adapter/Bzip2.pm 33
lib/IO/Compress/Adapter/Deflate.pm 33
lib/IO/Compress/Adapter/Identity.pm 22
lib/IO/Compress/Base/Common.pm 11
lib/IO/Compress/Base.pm 22
lib/IO/Compress/Bzip2.pm 55
lib/IO/Compress/Deflate.pm 55
lib/IO/Compress/Gzip/Constants.pm 11
lib/IO/Compress/Gzip.pm 66
lib/IO/Compress/RawDeflate.pm 66
lib/IO/Compress/Zip/Constants.pm 11
lib/IO/Compress/Zip.pm 1212
lib/IO/Compress/Zlib/Constants.pm 11
lib/IO/Compress/Zlib/Extra.pm 22
lib/IO/Uncompress/Adapter/Bunzip2.pm 33
lib/IO/Uncompress/Adapter/Identity.pm 33
lib/IO/Uncompress/Adapter/Inflate.pm 33
lib/IO/Uncompress/AnyInflate.pm 99
lib/IO/Uncompress/AnyUncompress.pm 1919
lib/IO/Uncompress/Base.pm 34
lib/IO/Uncompress/Bunzip2.pm 44
lib/IO/Uncompress/Gunzip.pm 66
lib/IO/Uncompress/Inflate.pm 44
lib/IO/Uncompress/RawInflate.pm 55
lib/IO/Uncompress/Unzip.pm 88
t/000prereq.t 11
t/compress/oneshot.pl 225
33 files changed (This is a version diff) 136170
@@ -1,6 +1,16 @@
 CHANGES
 -------
 
+  2.066 21 Sept 2014
+
+      * IO::Uncompress::Gzip
+        Documentation of ExtraFlags stated the XFL values for BEST_COMPRESSION
+        and BEST_SPEED use the values 2 & 4 respectively. They should
+        be 4 & 2. Code for setting XFL was correct.
+
+      * RT #95494: IO::Uncompress::Gunzip: Can no longer gunzip to in-memory 
+        file handle
+
   2.064 1 February 2014
 
       * RT #90216: IO-Compress/t/050interop-gzip.t: Use android-compatible
@@ -34,12 +34,12 @@
       },
       "runtime" : {
          "requires" : {
-            "Compress::Raw::Bzip2" : "2.064",
-            "Compress::Raw::Zlib" : "2.064",
+            "Compress::Raw::Bzip2" : "2.066",
+            "Compress::Raw::Zlib" : "2.066",
             "Scalar::Util" : 0
          }
       }
    },
    "release_status" : "stable",
-   "version" : "2.064"
+   "version" : "2.066"
 }
@@ -20,7 +20,7 @@ no_index:
     - t
     - private
 requires:
-  Compress::Raw::Bzip2: 2.064
-  Compress::Raw::Zlib: 2.064
+  Compress::Raw::Bzip2: 2.066
+  Compress::Raw::Zlib: 2.066
   Scalar::Util: 0
-version: 2.064
+version: 2.066
@@ -3,7 +3,7 @@
 use strict ;
 require 5.006 ;
 
-$::VERSION = '2.064' ;
+$::VERSION = '2.066' ;
 
 use private::MakeUtil;
 use ExtUtils::MakeMaker 5.16 ;
@@ -1,9 +1,9 @@
 
                             IO-Compress
 
-                         Version 2.064
+                         Version 2.066
 
-                             1st February 2013
+                            21st September 2014
 
        Copyright (c) 1995-2014 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.064" ;
+          $VERSION = "2.066" ;
 
  2. If you are having problems building IO-Compress, send me a
     complete log of what happened. Start by unpacking the IO-Compress
@@ -7,17 +7,17 @@ use Carp ;
 use IO::Handle ;
 use Scalar::Util qw(dualvar);
 
-use IO::Compress::Base::Common 2.064 ;
-use Compress::Raw::Zlib 2.064 ;
-use IO::Compress::Gzip 2.064 ;
-use IO::Uncompress::Gunzip 2.064 ;
+use IO::Compress::Base::Common 2.066 ;
+use Compress::Raw::Zlib 2.066 ;
+use IO::Compress::Gzip 2.066 ;
+use IO::Uncompress::Gunzip 2.066 ;
 
 use strict ;
 use warnings ;
 use bytes ;
 our ($VERSION, $XS_VERSION, @ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $XS_VERSION = $VERSION; 
 $VERSION = eval $VERSION;
 
@@ -461,7 +461,7 @@ sub inflate
 
 package Compress::Zlib ;
 
-use IO::Compress::Gzip::Constants 2.064 ;
+use IO::Compress::Gzip::Constants 2.066 ;
 
 sub memGzip($)
 {
@@ -4,12 +4,12 @@ use strict;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common  2.064 qw(:Status);
+use IO::Compress::Base::Common  2.066 qw(:Status);
 
-use Compress::Raw::Bzip2  2.064 ;
+use Compress::Raw::Bzip2  2.066 ;
 
 our ($VERSION);
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 sub mkCompObject
 {
@@ -4,13 +4,13 @@ use strict;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common 2.064 qw(:Status);
-use Compress::Raw::Zlib  2.064 qw( !crc32 !adler32 ) ;
+use IO::Compress::Base::Common 2.066 qw(:Status);
+use Compress::Raw::Zlib  2.066 qw( !crc32 !adler32 ) ;
                                   
 require Exporter;                                     
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, @EXPORT, %DEFLATE_CONSTANTS);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 @ISA = qw(Exporter);
 @EXPORT_OK = @Compress::Raw::Zlib::DEFLATE_CONSTANTS;
 %EXPORT_TAGS = %Compress::Raw::Zlib::DEFLATE_CONSTANTS;
@@ -4,10 +4,10 @@ use strict;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common  2.064 qw(:Status);
+use IO::Compress::Base::Common  2.066 qw(:Status);
 our ($VERSION);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 sub mkCompObject
 {
@@ -11,7 +11,7 @@ use File::GlobMapper;
 require Exporter;
 our ($VERSION, @ISA, @EXPORT, %EXPORT_TAGS, $HAS_ENCODE);
 @ISA = qw(Exporter);
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 @EXPORT = qw( isaFilehandle isaFilename isaScalar
               whatIsInput whatIsOutput 
@@ -6,7 +6,7 @@ require 5.006 ;
 use strict ;
 use warnings;
 
-use IO::Compress::Base::Common 2.064 ;
+use IO::Compress::Base::Common 2.066 ;
 
 use IO::File (); ;
 use Scalar::Util ();
@@ -20,7 +20,7 @@ use Symbol();
 our (@ISA, $VERSION);
 @ISA    = qw(Exporter IO::File);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 #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.
 
@@ -5,16 +5,16 @@ use warnings;
 use bytes;
 require Exporter ;
 
-use IO::Compress::Base 2.064 ;
+use IO::Compress::Base 2.066 ;
 
-use IO::Compress::Base::Common  2.064 qw();
-use IO::Compress::Adapter::Bzip2 2.064 ;
+use IO::Compress::Base::Common  2.066 qw();
+use IO::Compress::Adapter::Bzip2 2.066 ;
 
 
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bzip2Error);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $Bzip2Error = '';
 
 @ISA    = qw(Exporter IO::Compress::Base);
@@ -51,7 +51,7 @@ sub getExtraParams
 {
     my $self = shift ;
 
-    use IO::Compress::Base::Common  2.064 qw(:Parse);
+    use IO::Compress::Base::Common  2.066 qw(:Parse);
     
     return (  
             'blocksize100k' => [IO::Compress::Base::Common::Parse_unsigned,  1],
@@ -8,16 +8,16 @@ use bytes;
 
 require Exporter ;
 
-use IO::Compress::RawDeflate 2.064 ();
-use IO::Compress::Adapter::Deflate 2.064 ;
+use IO::Compress::RawDeflate 2.066 ();
+use IO::Compress::Adapter::Deflate 2.066 ;
 
-use IO::Compress::Zlib::Constants 2.064 ;
-use IO::Compress::Base::Common  2.064 qw();
+use IO::Compress::Zlib::Constants 2.066 ;
+use IO::Compress::Base::Common  2.066 qw();
 
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $DeflateError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $DeflateError = '';
 
 @ISA    = qw(Exporter IO::Compress::RawDeflate);
@@ -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.064';
+$VERSION = '2.066';
 
 @ISA = qw(Exporter);
 
@@ -8,12 +8,12 @@ use bytes;
 
 require Exporter ;
 
-use IO::Compress::RawDeflate 2.064 () ; 
-use IO::Compress::Adapter::Deflate 2.064 ;
+use IO::Compress::RawDeflate 2.066 () ; 
+use IO::Compress::Adapter::Deflate 2.066 ;
 
-use IO::Compress::Base::Common  2.064 qw(:Status );
-use IO::Compress::Gzip::Constants 2.064 ;
-use IO::Compress::Zlib::Extra 2.064 ;
+use IO::Compress::Base::Common  2.066 qw(:Status );
+use IO::Compress::Gzip::Constants 2.066 ;
+use IO::Compress::Zlib::Extra 2.066 ;
 
 BEGIN
 {
@@ -25,7 +25,7 @@ BEGIN
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $GzipError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $GzipError = '' ;
 
 @ISA    = qw(Exporter IO::Compress::RawDeflate);
@@ -6,15 +6,15 @@ use strict ;
 use warnings;
 use bytes;
 
-use IO::Compress::Base 2.064 ;
-use IO::Compress::Base::Common  2.064 qw(:Status );
-use IO::Compress::Adapter::Deflate 2.064 ;
+use IO::Compress::Base 2.066 ;
+use IO::Compress::Base::Common  2.066 qw(:Status );
+use IO::Compress::Adapter::Deflate 2.066 ;
 
 require Exporter ;
 
 our ($VERSION, @ISA, @EXPORT_OK, %DEFLATE_CONSTANTS, %EXPORT_TAGS, $RawDeflateError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $RawDeflateError = '';
 
 @ISA = qw(Exporter IO::Compress::Base);
@@ -116,8 +116,8 @@ sub getExtraParams
     return getZlibParams();
 }
 
-use IO::Compress::Base::Common  2.064 qw(:Parse);
-use Compress::Raw::Zlib  2.064 qw(Z_DEFLATED Z_DEFAULT_COMPRESSION Z_DEFAULT_STRATEGY);
+use IO::Compress::Base::Common  2.066 qw(:Parse);
+use Compress::Raw::Zlib  2.066 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],
@@ -7,7 +7,7 @@ require Exporter;
 
 our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 @ISA = qw(Exporter);
 
@@ -4,30 +4,30 @@ use strict ;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common  2.064 qw(:Status );
-use IO::Compress::RawDeflate 2.064 ();
-use IO::Compress::Adapter::Deflate 2.064 ;
-use IO::Compress::Adapter::Identity 2.064 ;
-use IO::Compress::Zlib::Extra 2.064 ;
-use IO::Compress::Zip::Constants 2.064 ;
+use IO::Compress::Base::Common  2.066 qw(:Status );
+use IO::Compress::RawDeflate 2.066 ();
+use IO::Compress::Adapter::Deflate 2.066 ;
+use IO::Compress::Adapter::Identity 2.066 ;
+use IO::Compress::Zlib::Extra 2.066 ;
+use IO::Compress::Zip::Constants 2.066 ;
 
 use File::Spec();
 use Config;
 
-use Compress::Raw::Zlib  2.064 (); 
+use Compress::Raw::Zlib  2.066 (); 
 
 BEGIN
 {
     eval { require IO::Compress::Adapter::Bzip2 ; 
-           import  IO::Compress::Adapter::Bzip2 2.064 ; 
+           import  IO::Compress::Adapter::Bzip2 2.066 ; 
            require IO::Compress::Bzip2 ; 
-           import  IO::Compress::Bzip2 2.064 ; 
+           import  IO::Compress::Bzip2 2.066 ; 
          } ;
          
     eval { require IO::Compress::Adapter::Lzma ; 
-           import  IO::Compress::Adapter::Lzma 2.064 ; 
+           import  IO::Compress::Adapter::Lzma 2.066 ; 
            require IO::Compress::Lzma ; 
-           import  IO::Compress::Lzma 2.064 ; 
+           import  IO::Compress::Lzma 2.066 ; 
          } ;
 }
 
@@ -36,7 +36,7 @@ require Exporter ;
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $ZipError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $ZipError = '';
 
 @ISA = qw(Exporter IO::Compress::RawDeflate);
@@ -9,7 +9,7 @@ require Exporter;
 
 our ($VERSION, @ISA, @EXPORT);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 @ISA = qw(Exporter);
 
@@ -8,9 +8,9 @@ use bytes;
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
-use IO::Compress::Gzip::Constants 2.064 ;
+use IO::Compress::Gzip::Constants 2.066 ;
 
 sub ExtraFieldError
 {
@@ -4,12 +4,12 @@ use strict;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common 2.064 qw(:Status);
+use IO::Compress::Base::Common 2.066 qw(:Status);
 
-use Compress::Raw::Bzip2 2.064 ;
+use Compress::Raw::Bzip2 2.066 ;
 
 our ($VERSION, @ISA);
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 sub mkUncompObject
 {
@@ -4,14 +4,14 @@ use warnings;
 use strict;
 use bytes;
 
-use IO::Compress::Base::Common  2.064 qw(:Status);
+use IO::Compress::Base::Common  2.066 qw(:Status);
 use IO::Compress::Zip::Constants ;
 
 our ($VERSION);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
-use Compress::Raw::Zlib  2.064 ();
+use Compress::Raw::Zlib  2.066 ();
 
 sub mkUncompObject
 {
@@ -4,11 +4,11 @@ use strict;
 use warnings;
 #use bytes;
 
-use IO::Compress::Base::Common  2.064 qw(:Status);
-use Compress::Raw::Zlib  2.064 qw(Z_OK Z_BUF_ERROR Z_STREAM_END Z_FINISH MAX_WBITS);
+use IO::Compress::Base::Common  2.066 qw(:Status);
+use Compress::Raw::Zlib  2.066 qw(Z_OK Z_BUF_ERROR Z_STREAM_END Z_FINISH MAX_WBITS);
 
 our ($VERSION);
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 
 
@@ -6,22 +6,22 @@ use strict;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common  2.064 ();
+use IO::Compress::Base::Common  2.066 ();
 
-use IO::Uncompress::Adapter::Inflate  2.064 ();
+use IO::Uncompress::Adapter::Inflate  2.066 ();
 
 
-use IO::Uncompress::Base  2.064 ;
-use IO::Uncompress::Gunzip  2.064 ;
-use IO::Uncompress::Inflate  2.064 ;
-use IO::Uncompress::RawInflate  2.064 ;
-use IO::Uncompress::Unzip  2.064 ;
+use IO::Uncompress::Base  2.066 ;
+use IO::Uncompress::Gunzip  2.066 ;
+use IO::Uncompress::Inflate  2.066 ;
+use IO::Uncompress::RawInflate  2.066 ;
+use IO::Uncompress::Unzip  2.066 ;
 
 require Exporter ;
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyInflateError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $AnyInflateError = '';
 
 @ISA = qw( Exporter IO::Uncompress::Base );
@@ -48,7 +48,7 @@ sub anyinflate
 
 sub getExtraParams
 {
-    use IO::Compress::Base::Common  2.064 qw(:Parse);
+    use IO::Compress::Base::Common  2.066 qw(:Parse);
     return ( 'rawinflate' => [Parse_boolean,  0] ) ;
 }
 
@@ -4,16 +4,16 @@ use strict;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common 2.064 ();
+use IO::Compress::Base::Common 2.066 ();
 
-use IO::Uncompress::Base 2.064 ;
+use IO::Uncompress::Base 2.066 ;
 
 
 require Exporter ;
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $AnyUncompressError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $AnyUncompressError = '';
 
 @ISA = qw( Exporter IO::Uncompress::Base );
@@ -27,22 +27,22 @@ Exporter::export_ok_tags('all');
 
 BEGIN
 {
-   eval ' use IO::Uncompress::Adapter::Inflate 2.064 ;';
-   eval ' use IO::Uncompress::Adapter::Bunzip2 2.064 ;';
-   eval ' use IO::Uncompress::Adapter::LZO 2.064 ;';
-   eval ' use IO::Uncompress::Adapter::Lzf 2.064 ;';
-   eval ' use IO::Uncompress::Adapter::UnLzma 2.064 ;';
-   eval ' use IO::Uncompress::Adapter::UnXz 2.064 ;';
-
-   eval ' use IO::Uncompress::Bunzip2 2.064 ;';
-   eval ' use IO::Uncompress::UnLzop 2.064 ;';
-   eval ' use IO::Uncompress::Gunzip 2.064 ;';
-   eval ' use IO::Uncompress::Inflate 2.064 ;';
-   eval ' use IO::Uncompress::RawInflate 2.064 ;';
-   eval ' use IO::Uncompress::Unzip 2.064 ;';
-   eval ' use IO::Uncompress::UnLzf 2.064 ;';
-   eval ' use IO::Uncompress::UnLzma 2.064 ;';
-   eval ' use IO::Uncompress::UnXz 2.064 ;';
+   eval ' use IO::Uncompress::Adapter::Inflate 2.066 ;';
+   eval ' use IO::Uncompress::Adapter::Bunzip2 2.066 ;';
+   eval ' use IO::Uncompress::Adapter::LZO 2.066 ;';
+   eval ' use IO::Uncompress::Adapter::Lzf 2.066 ;';
+   eval ' use IO::Uncompress::Adapter::UnLzma 2.066 ;';
+   eval ' use IO::Uncompress::Adapter::UnXz 2.066 ;';
+
+   eval ' use IO::Uncompress::Bunzip2 2.066 ;';
+   eval ' use IO::Uncompress::UnLzop 2.066 ;';
+   eval ' use IO::Uncompress::Gunzip 2.066 ;';
+   eval ' use IO::Uncompress::Inflate 2.066 ;';
+   eval ' use IO::Uncompress::RawInflate 2.066 ;';
+   eval ' use IO::Uncompress::Unzip 2.066 ;';
+   eval ' use IO::Uncompress::UnLzf 2.066 ;';
+   eval ' use IO::Uncompress::UnLzma 2.066 ;';
+   eval ' use IO::Uncompress::UnXz 2.066 ;';
 }
 
 sub new
@@ -9,12 +9,12 @@ our (@ISA, $VERSION, @EXPORT_OK, %EXPORT_TAGS);
 @ISA    = qw(Exporter IO::File);
 
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 use constant G_EOF => 0 ;
 use constant G_ERR => -1 ;
 
-use IO::Compress::Base::Common 2.064 ;
+use IO::Compress::Base::Common 2.066 ;
 
 use IO::File ;
 use Symbol;
@@ -756,7 +756,8 @@ sub _rd2
 
         while (($status = $z->read($x->{buff})) > 0) {
             if ($fh) {
-                syswrite $fh, ${ $x->{buff} }
+                local $\;
+                print $fh ${ $x->{buff} }
                     or return $z->saveErrorString(undef, "Error writing to output file: $!", $!);
                 ${ $x->{buff} } = '' ;
             }
@@ -4,15 +4,15 @@ use strict ;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common 2.064 qw(:Status );
+use IO::Compress::Base::Common 2.066 qw(:Status );
 
-use IO::Uncompress::Base 2.064 ;
-use IO::Uncompress::Adapter::Bunzip2 2.064 ;
+use IO::Uncompress::Base 2.066 ;
+use IO::Uncompress::Adapter::Bunzip2 2.066 ;
 
 require Exporter ;
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $Bunzip2Error);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $Bunzip2Error = '';
 
 @ISA    = qw( Exporter IO::Uncompress::Base );
@@ -9,12 +9,12 @@ use strict ;
 use warnings;
 use bytes;
 
-use IO::Uncompress::RawInflate 2.064 ;
+use IO::Uncompress::RawInflate 2.066 ;
 
-use Compress::Raw::Zlib 2.064 () ;
-use IO::Compress::Base::Common 2.064 qw(:Status );
-use IO::Compress::Gzip::Constants 2.064 ;
-use IO::Compress::Zlib::Extra 2.064 ;
+use Compress::Raw::Zlib 2.066 () ;
+use IO::Compress::Base::Common 2.066 qw(:Status );
+use IO::Compress::Gzip::Constants 2.066 ;
+use IO::Compress::Zlib::Extra 2.066 ;
 
 require Exporter ;
 
@@ -28,7 +28,7 @@ Exporter::export_ok_tags('all');
 
 $GunzipError = '';
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 
 sub new
 {
@@ -5,15 +5,15 @@ use strict ;
 use warnings;
 use bytes;
 
-use IO::Compress::Base::Common  2.064 qw(:Status );
-use IO::Compress::Zlib::Constants 2.064 ;
+use IO::Compress::Base::Common  2.066 qw(:Status );
+use IO::Compress::Zlib::Constants 2.066 ;
 
-use IO::Uncompress::RawInflate  2.064 ;
+use IO::Uncompress::RawInflate  2.066 ;
 
 require Exporter ;
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $InflateError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $InflateError = '';
 
 @ISA    = qw( Exporter IO::Uncompress::RawInflate );
@@ -5,16 +5,16 @@ use strict ;
 use warnings;
 #use bytes;
 
-use Compress::Raw::Zlib  2.064 ;
-use IO::Compress::Base::Common  2.064 qw(:Status );
+use Compress::Raw::Zlib  2.066 ;
+use IO::Compress::Base::Common  2.066 qw(:Status );
 
-use IO::Uncompress::Base  2.064 ;
-use IO::Uncompress::Adapter::Inflate  2.064 ;
+use IO::Uncompress::Base  2.066 ;
+use IO::Uncompress::Adapter::Inflate  2.066 ;
 
 require Exporter ;
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, %DEFLATE_CONSTANTS, $RawInflateError);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $RawInflateError = '';
 
 @ISA    = qw( Exporter IO::Uncompress::Base );
@@ -9,14 +9,14 @@ use warnings;
 #use bytes;
 
 use IO::File;
-use IO::Uncompress::RawInflate  2.064 ;
-use IO::Compress::Base::Common  2.064 qw(:Status );
-use IO::Uncompress::Adapter::Inflate  2.064 ;
-use IO::Uncompress::Adapter::Identity 2.064 ;
-use IO::Compress::Zlib::Extra 2.064 ;
-use IO::Compress::Zip::Constants 2.064 ;
+use IO::Uncompress::RawInflate  2.066 ;
+use IO::Compress::Base::Common  2.066 qw(:Status );
+use IO::Uncompress::Adapter::Inflate  2.066 ;
+use IO::Uncompress::Adapter::Identity 2.066 ;
+use IO::Compress::Zlib::Extra 2.066 ;
+use IO::Compress::Zip::Constants 2.066 ;
 
-use Compress::Raw::Zlib  2.064 () ;
+use Compress::Raw::Zlib  2.066 () ;
 
 BEGIN
 {
@@ -31,7 +31,7 @@ require Exporter ;
 
 our ($VERSION, @ISA, @EXPORT_OK, %EXPORT_TAGS, $UnzipError, %headerLookup);
 
-$VERSION = '2.064';
+$VERSION = '2.066';
 $UnzipError = '';
 
 @ISA    = qw(Exporter IO::Uncompress::RawInflate);
@@ -25,7 +25,7 @@ BEGIN
         if eval { require Test::NoWarnings ;  import Test::NoWarnings; 1 };
 
 
-    my $VERSION = '2.064';
+    my $VERSION = '2.066';
     my @NAMES = qw(
 			Compress::Raw::Bzip2
 			Compress::Raw::Zlib
@@ -16,7 +16,7 @@ BEGIN {
     $extra = 1
         if eval { require Test::NoWarnings ;  import Test::NoWarnings; 1 };
 
-    plan tests => 995 + $extra ;
+    plan tests => 1002 + $extra ;
 
     use_ok('IO::Uncompress::AnyUncompress', qw(anyuncompress $AnyUncompressError)) ;
 
@@ -1583,7 +1583,7 @@ sub run
 
 
     {
-        # check setting $/ 
+        # check setting $\ 
 
         my $CompFunc = getTopFuncRef($CompressClass);
         my $UncompFunc = getTopFuncRef($UncompressClass);
@@ -1600,7 +1600,30 @@ sub run
 
     }
 
+    SKIP:
+    {
+        #95494: IO::Uncompress::Gunzip: Can no longer gunzip to in-memory file handle
+
+        skip "open filehandle to buffer not supported in Perl $]", 7
+            if $] < 5.008 ;
+        my $CompFunc = getTopFuncRef($CompressClass);
+        my $UncompFunc = getTopFuncRef($UncompressClass);
+
+        my $input = "hello world";
+        my $compressed ;
+        ok open my $fh_in1, '<', \$input ;
+        ok open my $fh_out1, '>', \$compressed ;
+        ok &$CompFunc($fh_in1 => $fh_out1), '  Compressed ok' ;
+
+        my $output;
+        ok open my $fh_in2, '<', \$compressed ;
+        ok open my $fh_out2, '>', \$output ;
+
+        ok &$UncompFunc($fh_in2 => $fh_out2), '  UnCompressed ok' ;
+        is $output, $input, "round trip ok" ;
+    }
 }
+
 # TODO add more error cases
 
 1;