r62881 - in /branches/upstream/libfile-spec-perl/current: ./ lib/File/ lib/File/Spec/ t/
periapt-guest at users.alioth.debian.org
periapt-guest at users.alioth.debian.org
Sat Sep 25 11:09:47 UTC 2010
Author: periapt-guest
Date: Sat Sep 25 11:09:09 2010
New Revision: 62881
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=62881
Log:
[svn-upgrade] new version libfile-spec-perl (3.3300)
Added:
branches/upstream/libfile-spec-perl/current/t/rel2abs_vs_symlink.t
Modified:
branches/upstream/libfile-spec-perl/current/Changes
branches/upstream/libfile-spec-perl/current/Cwd.pm
branches/upstream/libfile-spec-perl/current/MANIFEST
branches/upstream/libfile-spec-perl/current/META.yml
branches/upstream/libfile-spec-perl/current/lib/File/Spec.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/Cygwin.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/Epoc.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/Functions.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/Mac.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/OS2.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/Unix.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/VMS.pm
branches/upstream/libfile-spec-perl/current/lib/File/Spec/Win32.pm
branches/upstream/libfile-spec-perl/current/t/Spec.t
Modified: branches/upstream/libfile-spec-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/Changes?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/Changes (original)
+++ branches/upstream/libfile-spec-perl/current/Changes Sat Sep 25 11:09:09 2010
@@ -1,4 +1,32 @@
Revision history for Perl distribution PathTools.
+
+3.33 - Mon Sep 20 18:00:00 2010
+- No functional changes since the previous release.
+- Fixes POD links
+ (part of core change2a6dc37471bea77f0c24fd1fe90c598a270c9968,
+ Florian Ragwitz)
+
+3.32 - Sun Sep 19 18:00:00 2010
+
+- Promote to stable release.
+
+3.31_03 - Fri Sep 17 20:00:00 2010
+
+- Colon delimiter and escaped delimiters for File::Spec::VMS
+ This is core change 61196b433b2b (Craig A. Berry)
+
+3.31_02 - Fri Jul 23 20:00:00 2010
+
+- Add TODO test for File::Spec->rel2abs() when under a symlink.
+- Make catpath return an empty directory rather than the current
+ directory if the directory name is empty. This allows catpath
+ to play nice with non-rooted logical names, as in
+ catpath('sys$login:', '', 'login.com');
+ (Craig A. Berry)
+- Fix abs2rel bug in handling a Unix-style input.
+ (Craig A. Berry)
+- Assorted clarification and simplification of the documentation.
+ (Craig A. Berry)
3.31 - Sun Nov 1 15:15:00 2009
Modified: branches/upstream/libfile-spec-perl/current/Cwd.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/Cwd.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/Cwd.pm (original)
+++ branches/upstream/libfile-spec-perl/current/Cwd.pm Sat Sep 25 11:09:09 2010
@@ -171,7 +171,7 @@
use Exporter;
use vars qw(@ISA @EXPORT @EXPORT_OK $VERSION);
-$VERSION = '3.31';
+$VERSION = '3.33';
my $xs_version = $VERSION;
$VERSION = eval $VERSION;
Modified: branches/upstream/libfile-spec-perl/current/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/MANIFEST?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/MANIFEST (original)
+++ branches/upstream/libfile-spec-perl/current/MANIFEST Sat Sep 25 11:09:09 2010
@@ -24,6 +24,7 @@
t/lib/Test/Simple.pm
t/lib/Test/Tutorial.pod
t/rel2abs2rel.t
+t/rel2abs_vs_symlink.t
t/Spec.t
t/taint.t
t/tmpdir.t
Modified: branches/upstream/libfile-spec-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/META.yml?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/META.yml (original)
+++ branches/upstream/libfile-spec-perl/current/META.yml Sat Sep 25 11:09:09 2010
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: PathTools
-version: 3.31
+version: 3.33
abstract: ~
author: []
license: unknown
@@ -19,7 +19,7 @@
directory:
- t
- inc
-generated_by: ExtUtils::MakeMaker version 6.54
+generated_by: ExtUtils::MakeMaker version 6.56
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec.pm Sat Sep 25 11:09:09 2010
@@ -3,7 +3,7 @@
use strict;
use vars qw(@ISA $VERSION);
-$VERSION = '3.31';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
my %module = (MacOS => 'Mac',
@@ -166,6 +166,7 @@
Returns a true or false value indicating, respectively, that alphabetic
case is not or is significant when comparing file specifications.
+Cygwin and Win32 accept an optional drive argument.
$is_case_tolerant = File::Spec->case_tolerant();
@@ -214,7 +215,7 @@
=item splitdir
X<splitdir> X<split, dir>
-The opposite of L</catdir()>.
+The opposite of L</catdir>.
@dirs = File::Spec->splitdir( $directories );
@@ -289,7 +290,7 @@
C<$base> filename as well. Otherwise all path components are assumed to be
directories.
-If C<$path> is absolute, it is cleaned up and returned using L</canonpath()>.
+If C<$path> is absolute, it is cleaned up and returned using L</canonpath>.
No checks against the filesystem are made. On VMS, there is
interaction with the working environment, as logicals and
@@ -328,7 +329,7 @@
=head1 COPYRIGHT
-Copyright (c) 2004 by the Perl 5 Porters. All rights reserved.
+Copyright (c) 2004-2010 by the Perl 5 Porters. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/Cygwin.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/Cygwin.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/Cygwin.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/Cygwin.pm Sat Sep 25 11:09:09 2010
@@ -4,7 +4,7 @@
use vars qw(@ISA $VERSION);
require File::Spec::Unix;
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
@ISA = qw(File::Spec::Unix);
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/Epoc.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/Epoc.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/Epoc.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/Epoc.pm Sat Sep 25 11:09:09 2010
@@ -3,7 +3,7 @@
use strict;
use vars qw($VERSION @ISA);
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
require File::Spec::Unix;
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/Functions.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/Functions.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/Functions.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/Functions.pm Sat Sep 25 11:09:09 2010
@@ -5,7 +5,7 @@
use vars qw(@ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $VERSION);
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
require Exporter;
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/Mac.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/Mac.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/Mac.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/Mac.pm Sat Sep 25 11:09:09 2010
@@ -4,7 +4,7 @@
use vars qw(@ISA $VERSION);
require File::Spec::Unix;
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
@ISA = qw(File::Spec::Unix);
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/OS2.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/OS2.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/OS2.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/OS2.pm Sat Sep 25 11:09:09 2010
@@ -4,7 +4,7 @@
use vars qw(@ISA $VERSION);
require File::Spec::Unix;
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
@ISA = qw(File::Spec::Unix);
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/Unix.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/Unix.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/Unix.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/Unix.pm Sat Sep 25 11:09:09 2010
@@ -3,7 +3,7 @@
use strict;
use vars qw($VERSION);
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
=head1 NAME
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/VMS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/VMS.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/VMS.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/VMS.pm Sat Sep 25 11:09:09 2010
@@ -4,7 +4,7 @@
use vars qw(@ISA $VERSION);
require File::Spec::Unix;
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
@ISA = qw(File::Spec::Unix);
@@ -26,34 +26,16 @@
there. This package overrides the implementation of these methods, not
the semantics.
-The mode of operation of these routines depend on the VMS features that
-are controlled by the DECC features C<DECC$FILENAME_REPORT_UNIX> and
-C<DECC$EFS_CHARSET>.
-
-Perl needs to be at least at 5.10 for these feature settings to work.
-Use of them on older perl versions on VMS will result in unpredictable
-operations.
-
-The default and traditional mode of these routines have been to expect VMS
-syntax on input and to return VMS syntax on output, even when Unix syntax was
-given on input.
-
-The default and traditional mode is also incompatible with the VMS
-C<EFS>, Extended File system character set, and with running Perl scripts
-under <GNV>, Gnu is not VMS, an optional Unix like runtime environment on VMS.
-
-If the C<DECC$EFS_CHARSET> feature is enabled, These routines will now accept
-either VMS or UNIX syntax. If the input parameters are clearly VMS syntax,
-the return value will be in VMS syntax. If the input parameters are clearly
-in Unix syntax, the output will be in Unix syntax.
-
-This corresponds to the way that the VMS C library routines have always
-handled filenames, and what a programmer who has not specifically read this
-pod before would also expect.
-
-If the C<DECC$FILENAME_REPORT_UNIX> feature is enabled, then if the output
-syntax can not be determined from the input syntax, the output syntax will be
-UNIX. If the feature is not enabled, VMS output will be the default.
+The default behavior is to allow either VMS or Unix syntax on input and to
+return VMS syntax on output, even when Unix syntax was given on input.
+
+When used with a Perl of version 5.10 or greater and a CRTL possessing the
+relevant capabilities, override behavior depends on the CRTL features
+C<DECC$FILENAME_UNIX_REPORT> and C<DECC$EFS_CHARSET>. When the
+C<DECC$EFS_CHARSET> feature is enabled and the input parameters are clearly
+in Unix syntax, the output will be in Unix syntax. If
+C<DECC$FILENAME_UNIX_REPORT> is enabled and the output syntax cannot be
+determined from the input syntax, the output will be in Unix syntax.
=over 4
@@ -202,13 +184,13 @@
$path_unix = 1 if ($path =~ m#/#);
$path_unix = 1 if ($path =~ /^\.\.?$/);
my $path_vms = 0;
- $path_vms = 1 if ($path =~ m#[\[<\]]#);
+ $path_vms = 1 if ($path =~ m#(?<!\^)[\[<\]:]#);
$path_vms = 1 if ($path =~ /^--?$/);
my $dir_unix = 0;
$dir_unix = 1 if ($dir =~ m#/#);
$dir_unix = 1 if ($dir =~ /^\.\.?$/);
my $dir_vms = 0;
- $dir_vms = 1 if ($dir =~ m#[\[<\]]#);
+ $dir_vms = 1 if ($dir =~ m#(?<!\^)[\[<\]:]#);
$dir_vms = 1 if ($dir =~ /^--?$/);
my $unix_mode = 0;
@@ -318,7 +300,7 @@
$dir_unix = 1 if ($dir =~ m#/#);
$dir_unix = 1 if ($dir =~ /^\.\.?$/);
my $dir_vms = 0;
- $dir_vms = 1 if ($dir =~ m#[\[<\]]#);
+ $dir_vms = 1 if ($dir =~ m#(?<!\^)[\[<\]:]#);
$dir_vms = 1 if ($dir =~ /^--?$/);
if ($dir_vms == $dir_unix) {
@@ -366,7 +348,7 @@
# of the specification in order to merge them.
$file_unix = 1 if ($tfile =~ m#/#);
$file_unix = 1 if ($tfile =~ /^\.\.?$/);
- $file_vms = 1 if ($tfile =~ m#[\[<\]]#);
+ $file_vms = 1 if ($tfile =~ m#(?<!\^)[\[<\]:]#);
$file_vms = 1 if ($tfile =~ /^--?$/);
# We may know for sure what the format is.
@@ -390,7 +372,7 @@
my $tdir = $files[$i];
my $tdir_vms = 0;
my $tdir_unix = 0;
- $tdir_vms = 1 if ($tdir =~ m#[\[<\]]#);
+ $tdir_vms = 1 if ($tdir =~ m#(?<!\^)[\[<\]:]#);
$tdir_unix = 1 if ($tdir =~ m#/#);
$tdir_unix = 1 if ($tdir =~ /^\.\.?$/);
@@ -414,9 +396,7 @@
# if the spath ends with a directory delimiter and the file is bare,
# then just concat them.
- # FIX-ME: In VMS format "[]<>:" are not delimiters if preceded by '^'
- # Quite a bit of Perl does not know that yet.
- if ($spath =~ /^[^\)\]\/:>]+\)\Z(?!\n)/s && basename($file) eq $file) {
+ if ($spath =~ /^(?<!\^)[^\)\]\/:>]+\)\Z(?!\n)/s && basename($file) eq $file) {
$rslt = "$spath$file";
} else {
if ($efs) {
@@ -427,7 +407,7 @@
$spath_unix = 1 if ($spath =~ m#/#);
$spath_unix = 1 if ($spath =~ /^\.\.?$/);
my $spath_vms = 0;
- $spath_vms = 1 if ($spath =~ m#[\[<\]]#);
+ $spath_vms = 1 if ($spath =~ m#(?<!\^)[\[<\]:]#);
$spath_vms = 1 if ($spath =~ /^--?$/);
# Assume VMS mode
@@ -548,7 +528,7 @@
Returns a string representation of the first writable directory
from the following list or '' if none are writable:
- /tmp if C<DECC$FILENAME_REPORT_UNIX> is enabled.
+ /tmp if C<DECC$FILENAME_UNIX_REPORT> is enabled.
sys$scratch:
$ENV{TMPDIR}
@@ -638,7 +618,7 @@
my $vmsify_path = vmsify($path);
if ($efs) {
my $path_vms = 0;
- $path_vms = 1 if ($path =~ m#[\[<\]]#);
+ $path_vms = 1 if ($path =~ m#(?<!\^)[\[<\]:]#);
$path_vms = 1 if ($path =~ /^--?$/);
if (!$path_vms) {
return $self->SUPER::splitpath($path, $nofile);
@@ -699,7 +679,7 @@
# [--. ==> [-.-.
# .--] ==> .-.-]
# [--] ==> [-.-]
- $dirspec = "[$dirspec]" unless $dirspec =~ /[\[<]/; # make legal
+ $dirspec = "[$dirspec]" unless $dirspec =~ /(?<!\^)[\[<]/; # make legal
$dirspec =~ s/^(\[|<)\./$1/;
@dirs = split /(?<!\^)\./, vmspath($dirspec);
$dirs[0] =~ s/^[\[<]//s; $dirs[-1] =~ s/[\]>]\Z(?!\n)//s;
@@ -724,7 +704,7 @@
$dir_unix = 1 if ($dir =~ m#/#);
$dir_unix = 1 if ($dir =~ /^\.\.?$/);
my $dir_vms = 0;
- $dir_vms = 1 if ($dir =~ m#[\[<\]]#);
+ $dir_vms = 1 if ($dir =~ m#(?<!\^)[\[<\]:]#);
$dir_vms = 1 if ($dir =~ /^--?$/);
if ($efs && (length($dev) == 0)) {
@@ -759,6 +739,7 @@
$dir = vmspath($dir);
}
}
+ $dir = '' if length($dev) && ($dir eq '[]' || $dir eq '<>');
"$dev$dir$file";
}
@@ -775,11 +756,6 @@
my $efs = $self->_efs;
my $unix_rpt = $self->_unix_rpt;
-
- if (!$efs) {
- return vmspath(File::Spec::Unix::abs2rel( $self, @_ ))
- if grep m{/}, @_;
- }
# We need to identify what the directory is in
# of the specification in order to process them
@@ -787,7 +763,7 @@
$path_unix = 1 if ($path =~ m#/#);
$path_unix = 1 if ($path =~ /^\.\.?$/);
my $path_vms = 0;
- $path_vms = 1 if ($path =~ m#[\[<\]]#);
+ $path_vms = 1 if ($path =~ m#(?<!\^)[\[<\]:]#);
$path_vms = 1 if ($path =~ /^--?$/);
my $unix_mode = 0;
@@ -803,7 +779,7 @@
if (defined $base) {
$base_unix = 1 if ($base =~ m#/#);
$base_unix = 1 if ($base =~ /^\.\.?$/);
- $base_vms = 1 if ($base =~ m#[\[<\]]#);
+ $base_vms = 1 if ($base =~ m#(?<!\^)[\[<\]:]#);
$base_vms = 1 if ($base =~ /^--?$/);
if ($path_vms == $path_unix) {
@@ -923,7 +899,7 @@
$path_unix = 1 if ($path =~ m#/#);
$path_unix = 1 if ($path =~ /^\.\.?$/);
my $path_vms = 0;
- $path_vms = 1 if ($path =~ m#[\[<\]]#);
+ $path_vms = 1 if ($path =~ m#(?<!\^)[\[<\]:]#);
$path_vms = 1 if ($path =~ /^--?$/);
my $unix_mode = 0;
@@ -939,7 +915,7 @@
if (defined $base) {
$base_unix = 1 if ($base =~ m#/#);
$base_unix = 1 if ($base =~ /^\.\.?$/);
- $base_vms = 1 if ($base =~ m#[\[<\]]#);
+ $base_vms = 1 if ($base =~ m#(?<!\^)[\[<\]:]#);
$base_vms = 1 if ($base =~ /^--?$/);
# If we could not determine the path mode, see if we can find out
@@ -981,7 +957,7 @@
if ($efs) {
# base may have changed, so need to look up format again.
if ($unix_mode) {
- $base_vms = 1 if ($base =~ m#[\[<\]]#);
+ $base_vms = 1 if ($base =~ m#(?<!\^)[\[<\]:]#);
$base_vms = 1 if ($base =~ /^--?$/);
$base = unixpath($base) if $base_vms;
$base .= '/' unless ($base =~ m#/$#);
@@ -1041,7 +1017,7 @@
#
# The traditional VMS mode using ODS-2 disks depends on these routines
# being here. These routines should not be called in when the
-# C<DECC$EFS_CHARSET> or C<DECC$FILENAME_REPORT_UNIX> modes are enabled.
+# C<DECC$EFS_CHARSET> or C<DECC$FILENAME_UNIX_REPORT> modes are enabled.
sub eliminate_macros {
my($self,$path) = @_;
@@ -1158,7 +1134,7 @@
implementation of these methods, not the semantics.
An explanation of VMS file specs can be found at
-L<"http://h71000.www7.hp.com/doc/731FINAL/4506/4506pro_014.html#apps_locating_naming_files">.
+L<http://h71000.www7.hp.com/doc/731FINAL/4506/4506pro_014.html#apps_locating_naming_files>.
=cut
Modified: branches/upstream/libfile-spec-perl/current/lib/File/Spec/Win32.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/lib/File/Spec/Win32.pm?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/lib/File/Spec/Win32.pm (original)
+++ branches/upstream/libfile-spec-perl/current/lib/File/Spec/Win32.pm Sat Sep 25 11:09:09 2010
@@ -5,7 +5,7 @@
use vars qw(@ISA $VERSION);
require File::Spec::Unix;
-$VERSION = '3.30';
+$VERSION = '3.33';
$VERSION = eval $VERSION;
@ISA = qw(File::Spec::Unix);
Modified: branches/upstream/libfile-spec-perl/current/t/Spec.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/t/Spec.t?rev=62881&op=diff
==============================================================================
--- branches/upstream/libfile-spec-perl/current/t/Spec.t (original)
+++ branches/upstream/libfile-spec-perl/current/t/Spec.t Sat Sep 25 11:09:09 2010
@@ -377,6 +377,7 @@
[ "VMS->catpath('','d1/d2/d3','file')",
$vms_efs ? 'd1/d2/d3/file' : '[.d1.d2.d3]file' ],
[ "VMS->catpath('v','d1/d2/d3','file')", 'v:[.d1.d2.d3]file' ],
+[ "VMS->catpath('v','','file')", 'v:file' ],
[ "VMS->catpath('v','w:[d1.d2.d3]','file')", 'v:[d1.d2.d3]file' ],
[ "VMS->catpath('node::volume:','[d1.d2.d3]','')", 'node::volume:[d1.d2.d3]' ],
[ "VMS->catpath('node::volume:','[d1.d2.d3]','file')", 'node::volume:[d1.d2.d3]file' ],
Added: branches/upstream/libfile-spec-perl/current/t/rel2abs_vs_symlink.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libfile-spec-perl/current/t/rel2abs_vs_symlink.t?rev=62881&op=file
==============================================================================
--- branches/upstream/libfile-spec-perl/current/t/rel2abs_vs_symlink.t (added)
+++ branches/upstream/libfile-spec-perl/current/t/rel2abs_vs_symlink.t Sat Sep 25 11:09:09 2010
@@ -1,0 +1,37 @@
+#!/usr/bin/perl -w
+
+# Test that rel2abs() works correctly when the process is under a symlink
+# See [rt.cpan.org 47637]
+
+use strict;
+
+use File::Path;
+use File::Spec;
+
+# Do this to simulate already being inside a symlinked directory
+# and having $ENV{PWD} set.
+use Cwd qw(chdir);
+
+use Test::More;
+
+plan skip_all => "needs symlink()" if !eval { symlink("", ""); 1 };
+
+plan tests => 1;
+
+my $real_dir = "for_rel2abs_test";
+my $symlink = "link_for_rel2abs_test";
+mkdir $real_dir or die "Can't make $real_dir: $!";
+END { rmtree $real_dir }
+
+symlink $real_dir, $symlink or die "Can't symlink $real_dir => $symlink: $!";
+END { unlink $symlink }
+
+chdir $symlink or die "Can't chdir into $symlink: $!";
+
+TODO: {
+ local $TODO = 'Need to find a way to make cwd work reliably under symlinks"';
+ like( File::Spec->rel2abs("."), qr/$symlink/ );
+}
+
+# So the unlinking works
+chdir "..";
More information about the Pkg-perl-cvs-commits
mailing list