r7629 - in /trunk/libarchive-tar-perl: CHANGES META.yml debian/changelog debian/control debian/copyright lib/Archive/Tar.pm lib/Archive/Tar/Constant.pm

rmayorga-guest at users.alioth.debian.org rmayorga-guest at users.alioth.debian.org
Mon Sep 17 04:21:13 UTC 2007


Author: rmayorga-guest
Date: Mon Sep 17 04:21:13 2007
New Revision: 7629

URL: http://svn.debian.org/wsvn/?sc=1&rev=7629
Log:
* New upstream release
* 'Homepage:' added
* debian/copyright updated

Modified:
    trunk/libarchive-tar-perl/CHANGES
    trunk/libarchive-tar-perl/META.yml
    trunk/libarchive-tar-perl/debian/changelog
    trunk/libarchive-tar-perl/debian/control
    trunk/libarchive-tar-perl/debian/copyright
    trunk/libarchive-tar-perl/lib/Archive/Tar.pm
    trunk/libarchive-tar-perl/lib/Archive/Tar/Constant.pm

Modified: trunk/libarchive-tar-perl/CHANGES
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/CHANGES?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/CHANGES (original)
+++ trunk/libarchive-tar-perl/CHANGES Mon Sep 17 04:21:13 2007
@@ -1,3 +1,6 @@
+* important changes in version 1.36 16/9/2007:
+-   Portability fixes for VMS, as offered by Craig Berry.
+
 * important changes in version 1.34 15/8/2007:
 -   Address #28687: Fwd: Unespected reaction of Archive::Tar
     A::T didn't always handle filenames that evaluated to false 
@@ -7,11 +10,15 @@
 -   Apply #28407: Unicode and Archive::Tar - documentation patch as
 	FAQ patch
 
-* important changes in version 1.32 24/5/2007:
--   Make Archive::Tar work nicely with perls compiled with 
-    -Dmksymlinks. This also fixes an issue introduced in 
-    1.31 where symlinks weren't dereferenced in all cases.
--   Quell warnings when a gid is not resolvable to a group name 
+* important changes in version 1.32 25/7/2007:
+-   Apply #28407: Unicode and Archive::Tar - documentation patch as
+    FAQ patch
+-   Following a report from rgs that A::T 1.31 doesn't play nicely
+    with -Dmksymlinks under perl core, rewrite the symlink logic in
+    A::T::File->new to continue building an object when reading a 
+    symlink fails, rather than refusing to read on a symlink (which 
+    is obviously wrong)
+-   Quell warnings when a gid is not resolvable to a group name
 
 * important changes in version 1.31 18/5/2007:
 -   No longer use the t/setup.t and t/cleanup.t files but just bundle 

Modified: trunk/libarchive-tar-perl/META.yml
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/META.yml?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/META.yml (original)
+++ trunk/libarchive-tar-perl/META.yml Mon Sep 17 04:21:13 2007
@@ -1,7 +1,7 @@
 # http://module-build.sourceforge.net/META-spec.html
 #XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#
 name:         Archive-Tar
-version:      1.34
+version:      1.36
 version_from: lib/Archive/Tar.pm
 installdirs:  site
 requires:

Modified: trunk/libarchive-tar-perl/debian/changelog
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/debian/changelog?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/debian/changelog (original)
+++ trunk/libarchive-tar-perl/debian/changelog Mon Sep 17 04:21:13 2007
@@ -1,3 +1,14 @@
+libarchive-tar-perl (1.36-1) UNRELEASED; urgency=low
+
+  * (NOT RELEASED YET) New upstream release
+  * debian/changelog
+    + Upstream copyright info update
+    + Upstream URL added
+  * debian/control
+    + Homepage field added
+
+ -- Rene Mayorga <rmayorga at debian.org.sv>  Sun, 16 Sep 2007 21:38:11 -0600
+
 libarchive-tar-perl (1.34-1) unstable; urgency=low
 
   [ Rene Mayorga ]

Modified: trunk/libarchive-tar-perl/debian/control
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/debian/control?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/debian/control (original)
+++ trunk/libarchive-tar-perl/debian/control Mon Sep 17 04:21:13 2007
@@ -26,3 +26,5 @@
  while also allowing for the creation of tar file objects for custom
  manipulation.  If you have the Compress::Zlib module installed,
  Archive::Tar will also support compressed or gzipped tar files.
+ .
+  Homepage: http://search.cpan.org/dist/Archive-Tar/

Modified: trunk/libarchive-tar-perl/debian/copyright
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/debian/copyright?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/debian/copyright (original)
+++ trunk/libarchive-tar-perl/debian/copyright Mon Sep 17 04:21:13 2007
@@ -7,17 +7,20 @@
 from the Comprehensive Perl Archive Network (CPAN). Visit
 <URL:http://www.perl.com/CPAN/> to find a CPAN site near you.
 
+You can find the original sources at: http://search.cpan.org/dist/Archive-Tar/
+
 The only change for the Debian package was the addition of the debian/
 files.  It was maintained by Stephen Zander <gibreel at pobox.com> until
 10 Oct 2004, by Matthias Klose <doko at debian.org> until Nov 2006 and since then,
 by the Debian Perl Group <debian-perl at lists.debian.org>
+
 
 The Archive::Tar copright is as follows:
 
 
 Archive::Tar is Copyright 1997 Calle Dybedahl. All rights reserved.
                 Copyright 1998 Stephen Zander. All rights reserved.
-                Copyright 2002 Jos Boumans. All rights reserved.
+                Copyright 2002 - 2007 Jos Boumans. All rights reserved.
 
 This library is free software; you can redistribute it and/or modify
 it under the same terms as Perl itself.

Modified: trunk/libarchive-tar-perl/lib/Archive/Tar.pm
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/lib/Archive/Tar.pm?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/lib/Archive/Tar.pm (original)
+++ trunk/libarchive-tar-perl/lib/Archive/Tar.pm Mon Sep 17 04:21:13 2007
@@ -14,7 +14,7 @@
 $DEBUG              = 0;
 $WARN               = 1;
 $FOLLOW_SYMLINK     = 0;
-$VERSION            = "1.34";
+$VERSION            = "1.36";
 $CHOWN              = 1;
 $CHMOD              = 1;
 $DO_NOT_USE_PREFIX  = 0;
@@ -496,7 +496,7 @@
 =head2 $tar->extract_file( $file, [$extract_path] )
 
 Write an entry, whose name is equivalent to the file name provided to
-disk. Optionally takes a second parameter, which is the full (unix)
+disk. Optionally takes a second parameter, which is the full native
 path (including filename) the entry will be written to.
 
 For example:
@@ -547,11 +547,39 @@
     ### it's a relative path ###
     } else {
         my $cwd     = (defined $self->{cwd} ? $self->{cwd} : cwd());
-        my @dirs    = File::Spec::Unix->splitdir( $dirs );
-        my @cwd     = File::Spec->splitdir( $cwd );
-        $dir        = File::Spec->catdir( @cwd, @dirs );
-
-        # catdir() returns undef if the path is longer than 255 chars on VMS
+
+
+
+        my @dirs = defined $alt
+            ? File::Spec->splitdir( $dirs )         # It's a local-OS path
+            : File::Spec::Unix->splitdir( $dirs );  # it's UNIX-style, likely
+                                                    # straight from the tarball
+        
+        ### '.' is the directory delimiter, of which the first one has to
+        ### be escaped/changed.
+        map tr/\./_/, @dirs if ON_VMS;        
+
+        my ($cwd_vol,$cwd_dir,$cwd_file) 
+                    = File::Spec->splitpath( $cwd );
+        my @cwd     = File::Spec->splitdir( $cwd_dir );
+        push @cwd, $cwd_file if length $cwd_file;
+
+        ### We need to pass '' as the last elemant to catpath. Craig Berry
+        ### explains why (msgid <p0624083dc311ae541393@[172.16.52.1]>):
+        ### The root problem is that splitpath on UNIX always returns the 
+        ### final path element as a file even if it is a directory, and of
+        ### course there is no way it can know the difference without checking
+        ### against the filesystem, which it is documented as not doing.  When
+        ### you turn around and call catpath, on VMS you have to know which bits
+        ### are directory bits and which bits are file bits.  In this case we
+        ### know the result should be a directory.  I had thought you could omit
+        ### the file argument to catpath in such a case, but apparently on UNIX
+        ### you can't.
+        $dir        = File::Spec->catpath( 
+                            $cwd_vol, File::Spec->catdir( @cwd, @dirs ), '' 
+                        );
+
+        ### catdir() returns undef if the path is longer than 255 chars on VMS
         unless ( defined $dir ) {
             $^W && $self->_error( qq[Could not compose a path for '$dirs'\n] );
             return;

Modified: trunk/libarchive-tar-perl/lib/Archive/Tar/Constant.pm
URL: http://svn.debian.org/wsvn/trunk/libarchive-tar-perl/lib/Archive/Tar/Constant.pm?rev=7629&op=diff
==============================================================================
--- trunk/libarchive-tar-perl/lib/Archive/Tar/Constant.pm (original)
+++ trunk/libarchive-tar-perl/lib/Archive/Tar/Constant.pm Mon Sep 17 04:21:13 2007
@@ -10,7 +10,7 @@
                 BLOCK_SIZE TAR_PAD TAR_END ON_UNIX BLOCK CAN_READLINK MAGIC 
                 TAR_VERSION UNAME GNAME CAN_CHOWN MODE CHECK_SUM UID GID 
                 GZIP_MAGIC_NUM MODE_READ LONGLINK LONGLINK_NAME PREFIX_LENGTH
-                LABEL NAME_LENGTH STRIP_MODE
+                LABEL NAME_LENGTH STRIP_MODE ON_VMS
             ];
 
     require Time::Local if $^O eq "MacOS";
@@ -73,5 +73,6 @@
 use constant CAN_CHOWN      => do { ($> == 0 and $^O ne "MacOS" and $^O ne "MSWin32") };
 use constant CAN_READLINK   => ($^O ne 'MSWin32' and $^O !~ /RISC(?:[ _])?OS/i and $^O ne 'VMS');
 use constant ON_UNIX        => ($^O ne 'MSWin32' and $^O ne 'MacOS' and $^O ne 'VMS');
+use constant ON_VMS         => $^O eq 'VMS'; 
 
 1;




More information about the Pkg-perl-cvs-commits mailing list