Updated Archive-Tar to CPAN version 1.66
authorChris 'BinGOs' Williams <chris@bingosnet.co.uk>
Mon, 26 Jul 2010 09:59:37 +0000 (10:59 +0100)
committerChris 'BinGOs' Williams <chris@bingosnet.co.uk>
Mon, 26 Jul 2010 09:59:37 +0000 (10:59 +0100)
  [DELTA]

  * important changes in version 1.66 26/07/2010
  - Applied a patch from Alexandr Ciornii [RT#59699] to Makefile.PL which produces better META.yml
  - Apply a patch from Alexandr Ciornii to ptar [RT#59700]:

    Adds option -C to allow archives created with ptar to be uploaded to
    PAUSE in case of Windows or world +w permissions on unix.

Porting/Maintainers.pl
cpan/Archive-Tar/bin/ptar
cpan/Archive-Tar/lib/Archive/Tar.pm
cpan/Archive-Tar/lib/Archive/Tar/Constant.pm
cpan/Archive-Tar/lib/Archive/Tar/File.pm

index 19b2cc4..5caab85 100644 (file)
@@ -197,7 +197,7 @@ use File::Glob qw(:case);
     'Archive::Tar' =>
        {
        'MAINTAINER'    => 'kane',
-       'DISTRIBUTION'  => 'BINGOS/Archive-Tar-1.64.tar.gz',
+       'DISTRIBUTION'  => 'BINGOS/Archive-Tar-1.66.tar.gz',
        'FILES'         => q[cpan/Archive-Tar],
        'EXCLUDED'      => [ qw(Makefile.PL) ],
        'UPSTREAM'      => 'cpan',
index 6a3c1bc..653ce35 100644 (file)
@@ -7,7 +7,7 @@ use Archive::Tar;
 use Data::Dumper;
 
 my $opts = {};
-getopts('Ddcvzthxf:I', $opts) or die usage();
+getopts('Ddcvzthxf:IC', $opts) or die usage();
 
 ### show the help message ###
 die usage() if $opts->{h};
@@ -40,8 +40,14 @@ if( $opts->{c} ) {
         $file->fdopen(fileno(STDOUT),"w");
     }
 
-    Archive::Tar->create_archive( $file, $compress, @files );
-
+    my $tar = Archive::Tar->new;
+    $tar->add_files(@files);
+    if( $opts->{C} ) {
+        for my $f ($tar->get_files) {
+            $f->mode($f->mode & ~022); # chmod go-w
+        }
+    }
+    $tar->write($file, $compress);
 } else {
     if ($file eq '-') {
         use IO::Handle;
@@ -81,7 +87,7 @@ sub usage {
 
 =head1 SYNOPSIS
 
-    ptar -c [-v] [-z] [-f ARCHIVE_FILE | -] FILE FILE ...
+    ptar -c [-v] [-z] [-C] [-f ARCHIVE_FILE | -] FILE FILE ...
     ptar -x [-v] [-z] [-f ARCHIVE_FILE | -]
     ptar -t [-z] [-f ARCHIVE_FILE | -]
     ptar -h
@@ -95,6 +101,7 @@ sub usage {
     z   Read/Write zlib compressed ARCHIVE_FILE (not always available)
     v   Print filenames as they are added or extraced from ARCHIVE_FILE
     h   Prints this help message
+    C   CPAN mode - drop 022 from permissions
 
 =head1 SEE ALSO
 
index 021d311..2e21bbb 100644 (file)
@@ -31,7 +31,7 @@ use vars qw[$DEBUG $error $VERSION $WARN $FOLLOW_SYMLINK $CHOWN $CHMOD
 $DEBUG                  = 0;
 $WARN                   = 1;
 $FOLLOW_SYMLINK         = 0;
-$VERSION                = "1.64";
+$VERSION                = "1.66";
 $CHOWN                  = 1;
 $CHMOD                  = 1;
 $SAME_PERMISSIONS       = $> == 0 ? 1 : 0;
index cf9a972..3353d1b 100644 (file)
@@ -3,7 +3,7 @@ package Archive::Tar::Constant;
 BEGIN {
     require Exporter;
     
-    $VERSION    = '1.64';
+    $VERSION    = '1.66';
     @ISA        = qw[Exporter];
 
     require Time::Local if $^O eq "MacOS";
index 6056292..1e90e9a 100644 (file)
@@ -13,7 +13,7 @@ use Archive::Tar::Constant;
 
 use vars qw[@ISA $VERSION];
 #@ISA        = qw[Archive::Tar];
-$VERSION    = '1.64';
+$VERSION    = '1.66';
 
 ### set value to 1 to oct() it during the unpack ###
 my $tmpl = [