commit
81b9fe6900
@ -0,0 +1 @@
|
||||
SOURCES/PathTools-3.75.tar.gz
|
@ -0,0 +1 @@
|
||||
ff2f9e55e33a1cfe1247e29f4e136b9a78f4be3a SOURCES/PathTools-3.75.tar.gz
|
@ -0,0 +1,230 @@
|
||||
From 27cd91c8d8c0aa03a954097e24d78df08905dc8e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Thu, 11 May 2017 11:36:46 +0200
|
||||
Subject: [PATCH] Disable VMS test (bug #973713)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
t/Spec.t | 196 +--------------------------------------------------------------
|
||||
1 file changed, 1 insertion(+), 195 deletions(-)
|
||||
|
||||
diff --git a/t/Spec.t b/t/Spec.t
|
||||
index 84ed6b1..7ef976f 100644
|
||||
--- a/t/Spec.t
|
||||
+++ b/t/Spec.t
|
||||
@@ -38,7 +38,7 @@ if ( $@ ) {
|
||||
$INC{"VMS/Filespec.pm"} = 1 ;
|
||||
}
|
||||
|
||||
-foreach (qw(Unix Win32 VMS OS2 Mac Epoc Cygwin)) {
|
||||
+foreach (qw(Unix Win32 OS2 Mac Epoc Cygwin)) {
|
||||
require_ok("File::Spec::$_");
|
||||
}
|
||||
|
||||
@@ -326,200 +326,6 @@ my @tests = (
|
||||
[ "FakeWin32->rel2abs('../','//prague_main/work')", '\\\\prague_main\\work' ],
|
||||
[ "FakeWin32->rel2abs('D:foo.txt')", 'D:\\alpha\\beta\\foo.txt' ],
|
||||
|
||||
-[ "VMS->case_tolerant()", '1' ],
|
||||
-
|
||||
-[ "VMS->catfile('a','b','c')", $vms_unix_rpt ? 'a/b/c' : '[.a.b]c' ],
|
||||
-[ "VMS->catfile('a','b','[]c')", $vms_unix_rpt ? 'a/b/c' : '[.a.b]c' ],
|
||||
-[ "VMS->catfile('[.a]','b','c')", $vms_unix_rpt ? 'a/b/c' : '[.a.b]c' ],
|
||||
-[ "VMS->catfile('a/b/','c')", $vms_unix_rpt ? 'a/b/c' : '[.a.b]c' ],
|
||||
-[ "VMS->catfile('c')", 'c' ],
|
||||
-[ "VMS->catfile('[]c')", 'c' ],
|
||||
-
|
||||
-[ "VMS->catfile('0','b','c')", $vms_unix_rpt ? '0/b/c' : '[.0.b]c' ],
|
||||
-[ "VMS->catfile('a','0','c')", $vms_unix_rpt ? 'a/0/c' : '[.a.0]c' ],
|
||||
-[ "VMS->catfile('a','b','0')", $vms_unix_rpt ? 'a/b/0' : '[.a.b]0' ],
|
||||
-[ "VMS->catfile('0','0','c')", $vms_unix_rpt ? '0/0/c' : '[.0.0]c' ],
|
||||
-[ "VMS->catfile('a','0','0')", $vms_unix_rpt ? 'a/0/0' : '[.a.0]0' ],
|
||||
-[ "VMS->catfile('0','b','0')", $vms_unix_rpt ? '0/b/0' : '[.0.b]0' ],
|
||||
-[ "VMS->catfile('0','0','0')", $vms_unix_rpt ? '0/0/0' : '[.0.0]0' ],
|
||||
-
|
||||
-
|
||||
-[ "VMS->splitpath('file')", ',,file' ],
|
||||
-[ "VMS->splitpath('[d1.d2.d3]')", ',[d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('[.d1.d2.d3]')", ',[.d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('[d1.d2.d3]file')", ',[d1.d2.d3],file' ],
|
||||
-[ "VMS->splitpath('d1/d2/d3/file')",
|
||||
- $vms_unix_rpt ? ',d1/d2/d3/,file' : ',[.d1.d2.d3],file' ],
|
||||
-[ "VMS->splitpath('/d1/d2/d3/file')",
|
||||
- $vms_unix_rpt ? ',/d1/d2/d3/,file' : 'd1:,[d2.d3],file' ],
|
||||
-[ "VMS->splitpath('[.d1.d2.d3]file')", ',[.d1.d2.d3],file' ],
|
||||
-[ "VMS->splitpath('node::volume:[d1.d2.d3]')", 'node::volume:,[d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('node::volume:[d1.d2.d3]file')", 'node::volume:,[d1.d2.d3],file' ],
|
||||
-[ "VMS->splitpath('node\"access_spec\"::volume:[d1.d2.d3]')", 'node"access_spec"::volume:,[d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('node\"access_spec\"::volume:[d1.d2.d3]file')", 'node"access_spec"::volume:,[d1.d2.d3],file' ],
|
||||
-
|
||||
-[ "VMS->splitpath('[]')", ',[],' ],
|
||||
-[ "VMS->splitpath('[-]')", ',[-],' ],
|
||||
-[ "VMS->splitpath('[]file')", ',[],file' ],
|
||||
-[ "VMS->splitpath('[-]file')", ',[-],file' ],
|
||||
-[ "VMS->splitpath('')", ',,' ],
|
||||
-[ "VMS->splitpath('0')", ',,0' ],
|
||||
-[ "VMS->splitpath('[0]')", ',[0],' ],
|
||||
-[ "VMS->splitpath('[.0]')", ',[.0],' ],
|
||||
-[ "VMS->splitpath('[0.0.0]')", ',[0.0.0],' ],
|
||||
-[ "VMS->splitpath('[.0.0.0]')", ',[.0.0.0],' ],
|
||||
-[ "VMS->splitpath('[0]0')", ',[0],0' ],
|
||||
-[ "VMS->splitpath('[0.0.0]0')", ',[0.0.0],0' ],
|
||||
-[ "VMS->splitpath('[.0.0.0]0')", ',[.0.0.0],0' ],
|
||||
-[ "VMS->splitpath('0/0')", $vms_unix_rpt ? ',0/,0' : ',[.0],0' ],
|
||||
-[ "VMS->splitpath('0/0/0')", $vms_unix_rpt ? ',0/0/,0' : ',[.0.0],0' ],
|
||||
-[ "VMS->splitpath('/0/0')", $vms_unix_rpt ? ',/0/,0' : '0:,[000000],0' ],
|
||||
-[ "VMS->splitpath('/0/0/0')", $vms_unix_rpt ? ',/0/0/,0' : '0:,[0],0' ],
|
||||
-[ "VMS->splitpath('d1',1)", ',d1,' ],
|
||||
-# $no_file tests
|
||||
-[ "VMS->splitpath('[d1.d2.d3]',1)", ',[d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('[.d1.d2.d3]',1)", ',[.d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('d1/d2/d3',1)", $vms_unix_rpt ? ',d1/d2/d3,' : ',[.d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('/d1/d2/d3',1)", $vms_unix_rpt ? ',/d1/d2/d3,' : 'd1:,[d2.d3],' ],
|
||||
-[ "VMS->splitpath('node::volume:[d1.d2.d3]',1)", 'node::volume:,[d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('node\"access_spec\"::volume:[d1.d2.d3]',1)", 'node"access_spec"::volume:,[d1.d2.d3],' ],
|
||||
-[ "VMS->splitpath('[]',1)", ',[],' ],
|
||||
-[ "VMS->splitpath('[-]',1)", ',[-],' ],
|
||||
-[ "VMS->splitpath('',1)", ',,' ],
|
||||
-[ "VMS->splitpath('0',1)", ',0,' ],
|
||||
-[ "VMS->splitpath('[0]',1)", ',[0],' ],
|
||||
-[ "VMS->splitpath('[.0]',1)", ',[.0],' ],
|
||||
-[ "VMS->splitpath('[0.0.0]',1)", ',[0.0.0],' ],
|
||||
-[ "VMS->splitpath('[.0.0.0]',1)", ',[.0.0.0],' ],
|
||||
-[ "VMS->splitpath('0/0',1)", $vms_unix_rpt ? ',0/0,' : ',[.0.0],' ],
|
||||
-[ "VMS->splitpath('0/0/0',1)", $vms_unix_rpt ? ',0/0/0,' : ',[.0.0.0],' ],
|
||||
-[ "VMS->splitpath('/0/0',1)", $vms_unix_rpt ? ',/0/0,' : '0:,[000000.0],' ],
|
||||
-[ "VMS->splitpath('/0/0/0',1)", $vms_unix_rpt ? ',/0/0/0,' : '0:,[0.0],' ],
|
||||
-
|
||||
-[ "VMS->catpath('','','file')", 'file' ],
|
||||
-[ "VMS->catpath('','[d1.d2.d3]','')", '[d1.d2.d3]' ],
|
||||
-[ "VMS->catpath('','[.d1.d2.d3]','')", '[.d1.d2.d3]' ],
|
||||
-[ "VMS->catpath('','[d1.d2.d3]','file')", '[d1.d2.d3]file' ],
|
||||
-[ "VMS->catpath('','[.d1.d2.d3]','file')", '[.d1.d2.d3]file' ],
|
||||
-[ "VMS->catpath('','d1/d2/d3','file')",
|
||||
- $vms_unix_rpt ? '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' ],
|
||||
-[ "VMS->catpath('node\"access_spec\"::volume:','[d1.d2.d3]','')", 'node"access_spec"::volume:[d1.d2.d3]' ],
|
||||
-[ "VMS->catpath('node\"access_spec\"::volume:','[d1.d2.d3]','file')", 'node"access_spec"::volume:[d1.d2.d3]file' ],
|
||||
-
|
||||
-[ "VMS->canonpath('')", '' ],
|
||||
-[ "VMS->canonpath('volume:[d1]file')", $vms_unix_rpt ? '/volume/d1/file' : 'volume:[d1]file' ],
|
||||
-[ "VMS->canonpath('volume:[d1.-.d2.][d3.d4.-]')", $vms_unix_rpt ? '/volume/d2/d3/' : 'volume:[d2.d3]' ],
|
||||
-[ "VMS->canonpath('volume:[000000.d1]d2.dir;1')", $vms_unix_rpt ? '/volume/d1/d2.dir.1' : 'volume:[d1]d2.dir;1' ],
|
||||
-[ "VMS->canonpath('volume:[d1.d2.d3]file.txt')", $vms_unix_rpt ? '/volume/d1/d2/d3/file.txt' : 'volume:[d1.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.d2.d3]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/d2/d3/file.txt' : '[d1.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[-.d1.d2.d3]file.txt')", $vms_unix_rpt ? '/volume/../d1/d2/d3/file.txt' : 'volume:[-.d1.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[-.d1.d2.d3]file.txt')", $vms_unix_rpt ? '../d1/d2/d3/file.txt' : '[-.d1.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[--.d1.d2.d3]file.txt')", $vms_unix_rpt ? '/volume/../../d1/d2/d3/file.txt' : 'volume:[--.d1.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[--.d1.d2.d3]file.txt')", $vms_unix_rpt ? '../../d1/d2/d3/file.txt' : '[--.d1.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.-.d2.d3]file.txt')", $vms_unix_rpt ? '/volume/d2/d3/file.txt' : 'volume:[d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.-.d2.d3]file.txt')", $vms_unix_rpt ? '/sys$disk/d2/d3/file.txt' : '[d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.--.d2.d3]file.txt')", $vms_unix_rpt ? '/volume/../d2/d3/file.txt' : 'volume:[-.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.--.d2.d3]file.txt')", $vms_unix_rpt ? '../d2/d3/file.txt' : '[-.d2.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.d2.-.d3]file.txt')", $vms_unix_rpt ? '/volume/d1/d3/file.txt' : 'volume:[d1.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.d2.-.d3]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/d3/file.txt' : '[d1.d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.d2.--.d3]file.txt')", $vms_unix_rpt ? '/volume/d3/file.txt' : 'volume:[d3]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.d2.--.d3]file.txt')", $vms_unix_rpt ? '/sys$disk/d3/file.txt' : '[d3]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.d2.d3.-]file.txt')", $vms_unix_rpt ? '/volume/d1/d2/file.txt' : 'volume:[d1.d2]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.d2.d3.-]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/d2/file.txt' : '[d1.d2]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.d2.d3.--]file.txt')", $vms_unix_rpt ? '/volume/d1/file.txt' : 'volume:[d1]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.d2.d3.--]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/file.txt' : '[d1]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.000000.][000000.][d3.--]file.txt')", $vms_unix_rpt ? '/volume/d1/file.txt'
|
||||
- : 'volume:[d1]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.000000.][000000.][d3.--]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/file.txt'
|
||||
- : '[d1]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.000000.][000000.][d2.000000]file.txt')", $vms_unix_rpt ? '/volume/d1/000000/d2/000000/file.txt'
|
||||
- : 'volume:[d1.000000.d2.000000]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.000000.][000000.][d2.000000]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/000000/d2/000000/file.txt'
|
||||
- : '[d1.000000.d2.000000]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.000000.][000000.][d3.--.000000]file.txt')", $vms_unix_rpt ? '/volume/d1/000000/file.txt'
|
||||
- : 'volume:[d1.000000]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.000000.][000000.][d3.--.000000]file.txt')", $vms_unix_rpt ? '/sys$disk/d1/000000/file.txt'
|
||||
- : '[d1.000000]file.txt' ],
|
||||
-[ "VMS->canonpath('volume:[d1.000000.][000000.][-.-.000000]file.txt')", $vms_unix_rpt ? '/volume/file.txt'
|
||||
- : 'volume:[000000]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.000000.][000000.][--.-.000000]file.txt')", $vms_unix_rpt ? '../file.txt' : '[-.000000]file.txt' ],
|
||||
-[ "VMS->canonpath('[d1.d2.--]file')", $vms_unix_rpt ? '../file.txt' : '[000000]file' ],
|
||||
-# During the Perl 5.8 era, FS::Unix stopped eliminating redundant path elements, so mimic that here.
|
||||
-[ "VMS->canonpath('a/../../b/c.dat')", $vms_unix_rpt ? 'a/../../b/c.dat' : '[-.b]c.dat' ],
|
||||
-[ "VMS->canonpath('^<test^.new.-.caret^ escapes^>')", $vms_unix_rpt ? '/<test.new.-.caret escapes>' : '^<test^.new.-.caret^ escapes^>' ],
|
||||
-# Check that directory specs with caret-dot component is treated correctly
|
||||
-[ "VMS->canonpath('foo:[bar.coo.kie.--]file.txt')", $vms_unix_rpt ? '/foo/bar/file.txt' : "foo:[bar]file.txt" ],
|
||||
-[ "VMS->canonpath('foo:[bar^.coo.kie.--]file.txt')", $vms_unix_rpt ? '/foo/file.txt' : "foo:[000000]file.txt" ],
|
||||
-[ "VMS->canonpath('foo:[bar.coo^.kie.--]file.txt')", $vms_unix_rpt ? '/foo/file.txt' : "foo:[000000]file.txt" ],
|
||||
-[ "VMS->canonpath('foo:[bar.coo.kie.-]file.txt')", $vms_unix_rpt ? '/foo/bar/coo/file.txt' : "foo:[bar.coo]file.txt" ],
|
||||
-[ "VMS->canonpath('foo:[bar^.coo.kie.-]file.txt')", $vms_unix_rpt ? '/foo/bar.coo/file.txt' : "foo:[bar^.coo]file.txt" ],
|
||||
-[ "VMS->canonpath('foo:[bar.coo^.kie.-]file.txt')", $vms_unix_rpt ? '/foo/bar/file.txt' : "foo:[bar]file.txt" ],
|
||||
-
|
||||
-[ "VMS->splitdir('')", '' ],
|
||||
-[ "VMS->splitdir('[]')", '' ],
|
||||
-[ "VMS->splitdir('d1.d2.d3')", 'd1,d2,d3' ],
|
||||
-[ "VMS->splitdir('[d1.d2.d3]')", 'd1,d2,d3' ],
|
||||
-[ "VMS->splitdir('.d1.d2.d3')", 'd1,d2,d3' ],
|
||||
-[ "VMS->splitdir('[.d1.d2.d3]')", 'd1,d2,d3' ],
|
||||
-[ "VMS->splitdir('.-.d2.d3')", '-,d2,d3' ],
|
||||
-[ "VMS->splitdir('[.-.d2.d3]')", '-,d2,d3' ],
|
||||
-[ "VMS->splitdir('[d1.d2]')", 'd1,d2' ],
|
||||
-[ "VMS->splitdir('[d1-.--d2]')", 'd1-,--d2' ],
|
||||
-[ "VMS->splitdir('[d1---.-.d2]')", 'd1---,-,d2' ],
|
||||
-[ "VMS->splitdir('[d1.---.d2]')", 'd1,-,-,-,d2' ],
|
||||
-[ "VMS->splitdir('[d1---d2]')", 'd1---d2' ],
|
||||
-[ "VMS->splitdir('[d1.][000000.d2]')", 'd1,d2' ],
|
||||
-[ "VMS->splitdir('[.d1.d2^.d3]')", 'd1,d2^.d3' ],
|
||||
-
|
||||
-[ "VMS->catdir('')", '' ],
|
||||
-[ "VMS->catdir('foo')", $vms_unix_rpt ? 'foo' : '[.foo]' ],
|
||||
-[ "VMS->catdir('d1','d2','d3')", $vms_unix_rpt ? 'd1/d2/d3' : '[.d1.d2.d3]' ],
|
||||
-[ "VMS->catdir('d1','d2/','d3')", $vms_unix_rpt ? 'd1/d2/d3' : '[.d1.d2.d3]' ],
|
||||
-[ "VMS->catdir('','d1','d2','d3')",$vms_unix_rpt ? '/d1/d2/d3' : '[.d1.d2.d3]' ],
|
||||
-[ "VMS->catdir('','-','d2','d3')", $vms_unix_rpt ? '-/d2/d3' : '[-.d2.d3]' ],
|
||||
-[ "VMS->catdir('','-','','d3')", $vms_unix_rpt ? '-/d3' : '[-.d3]' ],
|
||||
-[ "VMS->catdir('dir.dir','d2.dir','d3.dir')", $vms_unix_rpt ? 'dir/d2/d3'
|
||||
- : '[.dir.d2.d3]' ],
|
||||
-[ "VMS->catdir('[.name]')", $vms_unix_rpt ? 'name/' : '[.name]' ],
|
||||
-[ "VMS->catdir('[.name]','[.name]')", $vms_unix_rpt ? 'name/name' :'[.name.name]' ],
|
||||
-[ "VMS->catdir('/a/b/c','[-]')", $vms_unix_rpt ? '/a/b/c/..' : 'a:[b]'],
|
||||
-[ "VMS->catdir('a:[b.c]','..')", $vms_unix_rpt ? '/a/b/c/..' : 'a:[b]'],
|
||||
-
|
||||
-[ "VMS->abs2rel('node::volume:[t1.t2.t3]','node::volume:[t1.t2.t3]')", $vms_unix_rpt ? './' : '[]' ],
|
||||
-[ "VMS->abs2rel('node::volume:[t1.t2.t3]','[t1.t2.t3]')", $vms_unix_rpt ? '/node//volume/t1/t2/t3/' : 'node::volume:[t1.t2.t3]' ],
|
||||
-[ "VMS->abs2rel('node::volume:[t1.t2.t4]','node::volume:[t1.t2.t3]')", $vms_unix_rpt ? '../t4/' : '[-.t4]' ],
|
||||
-[ "VMS->abs2rel('node::volume:[t1.t2.t4]','[t1.t2.t3]')", $vms_unix_rpt ? '/node//volume/t1/t2/t4/' : 'node::volume:[t1.t2.t4]' ],
|
||||
-[ "VMS->abs2rel('/volume/t1/t2/t3','/volume/t1')", $vms_unix_rpt ? 't2/t3' : '[.t2]t3' ],
|
||||
-[ "VMS->abs2rel('/volume/t1/t2/t3/t4','/volume/t1/xyz')", $vms_unix_rpt ? '../t2/t3/t4' : '[-.t2.t3]t4' ],
|
||||
-[ "VMS->abs2rel('[t1.t2.t3]','[t1.t2.t3]')", $vms_unix_rpt ? './' : '[]' ],
|
||||
-[ "VMS->abs2rel('[t1.t2.t3]file','[t1.t2.t3]')", 'file' ],
|
||||
-[ "VMS->abs2rel('[t1.t2.t3]file','[t1.t2]')", $vms_unix_rpt ? 't3/file' : '[.t3]file' ],
|
||||
-[ "VMS->abs2rel('v:[t1.t2.t3]file','v:[t1.t2]')", $vms_unix_rpt ? 't3/file' : '[.t3]file' ],
|
||||
-[ "VMS->abs2rel('[t1.t2.t4]','[t1.t2.t3]')", $vms_unix_rpt ? '../t4/' : '[-.t4]' ],
|
||||
-[ "VMS->abs2rel('[t1.t2]file','[t1.t2.t3]')", $vms_unix_rpt ? '../file' : '[-]file' ],
|
||||
-[ "VMS->abs2rel('[t1.t2.t3.t4]','[t1.t2.t3]')", $vms_unix_rpt ? 't4/' : '[.t4]' ],
|
||||
-[ "VMS->abs2rel('[t4.t5.t6]','[t1.t2.t3]')", $vms_unix_rpt ? '../../../t4/t5/t6/' : '[---.t4.t5.t6]' ],
|
||||
-[ "VMS->abs2rel('[000000]','[t1.t2.t3]')", $vms_unix_rpt ? '../../../' : '[---]' ],
|
||||
-[ "VMS->abs2rel('a:[t1.t2.t4]','a:[t1.t2.t3]')", $vms_unix_rpt ? '../t4/' : '[-.t4]' ],
|
||||
-[ "VMS->abs2rel('a:[t1.t2.t4]','[t1.t2.t3]')", $vms_unix_rpt ? '/a/t1/t2/t4' : 'a:[t1.t2.t4]' ],
|
||||
-[ "VMS->abs2rel('[a.-.b.c.-]','[t1.t2.t3]')", $vms_unix_rpt ? '../../../b/' : '[---.b]' ],
|
||||
-
|
||||
-[ "VMS->rel2abs('[.t4]','[t1.t2.t3]')", $vms_unix_rpt ? '/sys$disk/t1/t2/t3/t4/' : '[t1.t2.t3.t4]' ],
|
||||
-[ "VMS->rel2abs('[.t4.t5]','[t1.t2.t3]')", $vms_unix_rpt ? '/sys$disk/t1/t2/t3/t4/t5/' : '[t1.t2.t3.t4.t5]' ],
|
||||
-[ "VMS->rel2abs('[]','[t1.t2.t3]')", $vms_unix_rpt ? '/sys$disk/t1/t2/t3/' : '[t1.t2.t3]' ],
|
||||
-[ "VMS->rel2abs('[-]','[t1.t2.t3]')", $vms_unix_rpt ? '/sys$disk/t1/t2/' : '[t1.t2]' ],
|
||||
-[ "VMS->rel2abs('[-.t4]','[t1.t2.t3]')", $vms_unix_rpt ? '/sys$disk/t1/t2/t4/' : '[t1.t2.t4]' ],
|
||||
-[ "VMS->rel2abs('[t1]','[t1.t2.t3]')", $vms_unix_rpt ? '/sys$disk/t1/' : '[t1]' ],
|
||||
-
|
||||
-[ "VMS->file_name_is_absolute('foo:')", '1' ],
|
||||
-[ "VMS->file_name_is_absolute('foo:bar.dat')", '1' ],
|
||||
-[ "VMS->file_name_is_absolute('foo:[000000]bar.dat')", '1' ],
|
||||
-
|
||||
[ "OS2->case_tolerant()", '1' ],
|
||||
|
||||
[ "OS2->catdir('A:/d1','B:/d2','d3','')", 'A:/d1/B:/d2/d3' ],
|
||||
--
|
||||
2.13.6
|
||||
|
@ -0,0 +1,283 @@
|
||||
From 3c570b93e7ca990b3274219dd828e8fdaac0bf9d Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 25 Apr 2019 17:04:30 +0200
|
||||
Subject: [PATCH] Upgrade to 3.78
|
||||
|
||||
---
|
||||
Cwd.pm | 8 ++++++--
|
||||
lib/File/Spec.pm | 2 +-
|
||||
lib/File/Spec/AmigaOS.pm | 2 +-
|
||||
lib/File/Spec/Cygwin.pm | 2 +-
|
||||
lib/File/Spec/Epoc.pm | 2 +-
|
||||
lib/File/Spec/Functions.pm | 2 +-
|
||||
lib/File/Spec/Mac.pm | 2 +-
|
||||
lib/File/Spec/OS2.pm | 2 +-
|
||||
lib/File/Spec/Unix.pm | 2 +-
|
||||
lib/File/Spec/Win32.pm | 14 ++------------
|
||||
t/Spec.t | 4 ++--
|
||||
t/cwd.t | 11 ++++++++++-
|
||||
t/cwd_enoent.t | 9 ++++++---
|
||||
13 files changed, 34 insertions(+), 28 deletions(-)
|
||||
|
||||
diff --git a/Cwd.pm b/Cwd.pm
|
||||
index 16d5b11..9b173c2 100644
|
||||
--- a/Cwd.pm
|
||||
+++ b/Cwd.pm
|
||||
@@ -3,7 +3,7 @@ use strict;
|
||||
use Exporter;
|
||||
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
my $xs_version = $VERSION;
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
@@ -171,7 +171,7 @@ if($^O ne 'MSWin32') {
|
||||
if ($^O =~ /android/) {
|
||||
# If targetsh is executable, then we're either a full
|
||||
# perl, or a miniperl for a native build.
|
||||
- if (-x $Config::Config{targetsh}) {
|
||||
+ if ( exists($Config::Config{targetsh}) && -x $Config::Config{targetsh}) {
|
||||
$pwd_cmd = "$Config::Config{targetsh} -c pwd"
|
||||
}
|
||||
else {
|
||||
@@ -659,6 +659,10 @@ if (exists $METHOD_MAP{$^O}) {
|
||||
}
|
||||
}
|
||||
|
||||
+# built-in from 5.30
|
||||
+*getcwd = \&Internals::getcwd
|
||||
+ if !defined &getcwd && defined &Internals::getcwd;
|
||||
+
|
||||
# In case the XS version doesn't load.
|
||||
*abs_path = \&_perl_abs_path unless defined &abs_path;
|
||||
*getcwd = \&_perl_getcwd unless defined &getcwd;
|
||||
diff --git a/lib/File/Spec.pm b/lib/File/Spec.pm
|
||||
index eb3b55a..7fe3272 100644
|
||||
--- a/lib/File/Spec.pm
|
||||
+++ b/lib/File/Spec.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
my %module = (
|
||||
diff --git a/lib/File/Spec/AmigaOS.pm b/lib/File/Spec/AmigaOS.pm
|
||||
index 1355768..2b7d18a 100644
|
||||
--- a/lib/File/Spec/AmigaOS.pm
|
||||
+++ b/lib/File/Spec/AmigaOS.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::AmigaOS;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Cygwin.pm b/lib/File/Spec/Cygwin.pm
|
||||
index 9dc15a1..d44ced3 100644
|
||||
--- a/lib/File/Spec/Cygwin.pm
|
||||
+++ b/lib/File/Spec/Cygwin.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Cygwin;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Epoc.pm b/lib/File/Spec/Epoc.pm
|
||||
index bd87b68..b611cd9 100644
|
||||
--- a/lib/File/Spec/Epoc.pm
|
||||
+++ b/lib/File/Spec/Epoc.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec::Epoc;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require File::Spec::Unix;
|
||||
diff --git a/lib/File/Spec/Functions.pm b/lib/File/Spec/Functions.pm
|
||||
index 19ab4db..3f617bd 100644
|
||||
--- a/lib/File/Spec/Functions.pm
|
||||
+++ b/lib/File/Spec/Functions.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Functions;
|
||||
use File::Spec;
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require Exporter;
|
||||
diff --git a/lib/File/Spec/Mac.pm b/lib/File/Spec/Mac.pm
|
||||
index 926a5dd..d920d2f 100644
|
||||
--- a/lib/File/Spec/Mac.pm
|
||||
+++ b/lib/File/Spec/Mac.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/OS2.pm b/lib/File/Spec/OS2.pm
|
||||
index 4404fe8..603781a 100644
|
||||
--- a/lib/File/Spec/OS2.pm
|
||||
+++ b/lib/File/Spec/OS2.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Unix.pm b/lib/File/Spec/Unix.pm
|
||||
index cd29f76..6749e60 100644
|
||||
--- a/lib/File/Spec/Unix.pm
|
||||
+++ b/lib/File/Spec/Unix.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Unix;
|
||||
use strict;
|
||||
use Cwd ();
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
=head1 NAME
|
||||
diff --git a/lib/File/Spec/Win32.pm b/lib/File/Spec/Win32.pm
|
||||
index 0cf0e28..5934010 100644
|
||||
--- a/lib/File/Spec/Win32.pm
|
||||
+++ b/lib/File/Spec/Win32.pm
|
||||
@@ -5,7 +5,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.75';
|
||||
+our $VERSION = '3.78';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
@@ -137,7 +137,7 @@ sub catfile {
|
||||
# Legacy / compatibility support
|
||||
#
|
||||
shift, return _canon_cat( "/", @_ )
|
||||
- if $_[0] eq "";
|
||||
+ if !@_ || $_[0] eq "";
|
||||
|
||||
# Compatibility with File::Spec <= 3.26:
|
||||
# catfile('A:', 'foo') should return 'A:\foo'.
|
||||
@@ -407,16 +407,6 @@ sub _canon_cat # @path -> path
|
||||
)+ # performance boost -- I do not know why
|
||||
}{\\}gx;
|
||||
|
||||
- # XXX I do not know whether more dots are supported by the OS supporting
|
||||
- # this ... annotation (NetWare or symbian but not MSWin32).
|
||||
- # Then .... could easily become ../../.. etc:
|
||||
- # Replace \.\.\. by (\.\.\.+) and substitute with
|
||||
- # { $1 . ".." . "\\.." x (length($2)-2) }gex
|
||||
- # ... --> ../..
|
||||
- $path =~ s{ (\A|\\) # at begin or after a slash
|
||||
- \.\.\.
|
||||
- (?=\\|\z) # at end or followed by slash
|
||||
- }{$1..\\..}gx;
|
||||
# xx\yy\..\zz --> xx\zz
|
||||
while ( $path =~ s{(?:
|
||||
(?:\A|\\) # at begin or after a slash
|
||||
diff --git a/t/Spec.t b/t/Spec.t
|
||||
index 1b26190..c953391 100644
|
||||
--- a/t/Spec.t
|
||||
+++ b/t/Spec.t
|
||||
@@ -277,9 +277,9 @@ my @tests = (
|
||||
[ "Win32->canonpath('//a/b/../../c')", '\\\\a\\b\\c' ],
|
||||
[ "Win32->canonpath('//a/b/c/../d')", '\\\\a\\b\\d' ],
|
||||
[ "Win32->canonpath('//a/b/c/../../d')",'\\\\a\\b\\d' ],
|
||||
-[ "Win32->canonpath('//a/b/c/.../d')", '\\\\a\\b\\d' ],
|
||||
+[ "Win32->canonpath('//a/b/c/.../d')", '\\\\a\\b\\c\\...\\d' ],
|
||||
[ "Win32->canonpath('/a/b/c/../../d')", '\\a\\d' ],
|
||||
-[ "Win32->canonpath('/a/b/c/.../d')", '\\a\\d' ],
|
||||
+[ "Win32->canonpath('/a/b/c/.../d')", '\\a\\b\\c\\...\\d' ],
|
||||
[ "Win32->canonpath('\\../temp\\')", '\\temp' ],
|
||||
[ "Win32->canonpath('\\../')", '\\' ],
|
||||
[ "Win32->canonpath('\\..\\')", '\\' ],
|
||||
diff --git a/t/cwd.t b/t/cwd.t
|
||||
index 483b437..c056938 100644
|
||||
--- a/t/cwd.t
|
||||
+++ b/t/cwd.t
|
||||
@@ -10,6 +10,7 @@ chdir 't';
|
||||
use Config;
|
||||
use File::Spec;
|
||||
use File::Path;
|
||||
+use Errno qw(EACCES);
|
||||
|
||||
use lib File::Spec->catdir('t', 'lib');
|
||||
use Test::More;
|
||||
@@ -208,7 +209,15 @@ SKIP: {
|
||||
|
||||
like($abs_path, qr|$want$|i, "Cwd::abs_path produced $abs_path");
|
||||
like($fast_abs_path, qr|$want$|i, "Cwd::fast_abs_path produced $fast_abs_path");
|
||||
- like($pas, qr|$want$|i, "Cwd::_perl_abs_path produced $pas") if $EXTRA_ABSPATH_TESTS;
|
||||
+ if ($EXTRA_ABSPATH_TESTS) {
|
||||
+ # _perl_abs_path() can fail if some ancestor directory isn't readable
|
||||
+ if (defined $pas) {
|
||||
+ like($pas, qr|$want$|i, "Cwd::_perl_abs_path produced $pas");
|
||||
+ }
|
||||
+ else {
|
||||
+ is($!+0, EACCES, "check we got the expected error on failure");
|
||||
+ }
|
||||
+ }
|
||||
|
||||
rmtree($test_dirs[0], 0, 0);
|
||||
1 while unlink $file;
|
||||
diff --git a/t/cwd_enoent.t b/t/cwd_enoent.t
|
||||
index 8f3a1fb..510c65e 100644
|
||||
--- a/t/cwd_enoent.t
|
||||
+++ b/t/cwd_enoent.t
|
||||
@@ -2,7 +2,7 @@ use warnings;
|
||||
use strict;
|
||||
|
||||
use Config;
|
||||
-use Errno qw(ENOENT);
|
||||
+use Errno qw();
|
||||
use File::Temp qw(tempdir);
|
||||
use Test::More;
|
||||
|
||||
@@ -19,6 +19,7 @@ unless(mkdir("$tmp/testdir") && chdir("$tmp/testdir") && rmdir("$tmp/testdir")){
|
||||
plan tests => 8;
|
||||
require Cwd;
|
||||
|
||||
+my @acceptable_errnos = (&Errno::ENOENT, (defined &Errno::ESTALE ? &Errno::ESTALE : ()));
|
||||
foreach my $type (qw(regular perl)) {
|
||||
SKIP: {
|
||||
skip "_perl_abs_path() not expected to work", 4
|
||||
@@ -36,12 +37,14 @@ foreach my $type (qw(regular perl)) {
|
||||
$res = Cwd::getcwd();
|
||||
$eno = 0+$!;
|
||||
is $res, undef, "$type getcwd result on non-existent directory";
|
||||
- is $eno, ENOENT, "$type getcwd errno on non-existent directory";
|
||||
+ ok((grep { $eno == $_ } @acceptable_errnos), "$type getcwd errno on non-existent directory")
|
||||
+ or diag "Got errno code $eno, expected " . join(", ", @acceptable_errnos);
|
||||
$! = 0;
|
||||
$res = Cwd::abs_path(".");
|
||||
$eno = 0+$!;
|
||||
is $res, undef, "$type abs_path result on non-existent directory";
|
||||
- is $eno, ENOENT, "$type abs_path errno on non-existent directory";
|
||||
+ ok((grep { $eno == $_ } @acceptable_errnos), "$type abs_path errno on non-existent directory")
|
||||
+ or diag "Got errno code $eno, expected " . join(", ", @acceptable_errnos);
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.20.1
|
||||
|
@ -0,0 +1,278 @@
|
||||
From 2aa3d01bca010903b9cdb848e61ca45f84ce6bcf Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 6 May 2021 08:31:26 +0200
|
||||
Subject: [PATCH] Upgrade to 3.80
|
||||
|
||||
---
|
||||
Cwd.pm | 2 +-
|
||||
Cwd.xs | 24 +++--
|
||||
META.json | 2 +-
|
||||
META.yml | 2 +-
|
||||
lib/File/Spec.pm | 2 +-
|
||||
lib/File/Spec/AmigaOS.pm | 2 +-
|
||||
lib/File/Spec/Cygwin.pm | 2 +-
|
||||
lib/File/Spec/Epoc.pm | 2 +-
|
||||
lib/File/Spec/Functions.pm | 2 +-
|
||||
lib/File/Spec/Mac.pm | 2 +-
|
||||
lib/File/Spec/OS2.pm | 2 +-
|
||||
lib/File/Spec/Unix.pm | 2 +-
|
||||
lib/File/Spec/Win32.pm | 4 +-
|
||||
t/cwd.t | 4 +
|
||||
t/cwd_enoent.t | 2 +
|
||||
16 files changed, 232 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/Cwd.pm b/Cwd.pm
|
||||
index 9b173c2..6a1d2f1 100644
|
||||
--- a/Cwd.pm
|
||||
+++ b/Cwd.pm
|
||||
@@ -3,7 +3,7 @@ use strict;
|
||||
use Exporter;
|
||||
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
my $xs_version = $VERSION;
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
diff --git a/Cwd.xs b/Cwd.xs
|
||||
index 8662400..223e1a6 100644
|
||||
--- a/Cwd.xs
|
||||
+++ b/Cwd.xs
|
||||
@@ -84,6 +84,9 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
|
||||
unsigned symlinks;
|
||||
int serrno;
|
||||
char remaining[MAXPATHLEN], next_token[MAXPATHLEN];
|
||||
+#ifdef PERL_IMPLICIT_SYS
|
||||
+ dTHX;
|
||||
+#endif
|
||||
|
||||
serrno = errno;
|
||||
symlinks = 0;
|
||||
@@ -119,15 +122,24 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
|
||||
|
||||
p = strchr(remaining, '/');
|
||||
s = p ? p : remaining + remaining_len;
|
||||
+
|
||||
if ((STRLEN)(s - remaining) >= (STRLEN)sizeof(next_token)) {
|
||||
errno = ENAMETOOLONG;
|
||||
return (NULL);
|
||||
}
|
||||
memcpy(next_token, remaining, s - remaining);
|
||||
next_token[s - remaining] = '\0';
|
||||
- remaining_len -= s - remaining;
|
||||
- if (p != NULL)
|
||||
- memmove(remaining, s + 1, remaining_len + 1);
|
||||
+
|
||||
+ /* shift first component off front of path, including '/' */
|
||||
+ if (p) {
|
||||
+ s++; /* skip '/' */
|
||||
+ remaining_len -= s - remaining;
|
||||
+ /* the +1 includes the trailing '\0' */
|
||||
+ memmove(remaining, s, remaining_len + 1);
|
||||
+ }
|
||||
+ else
|
||||
+ remaining_len = 0;
|
||||
+
|
||||
if (resolved[resolved_len - 1] != '/') {
|
||||
if (resolved_len + 1 >= MAXPATHLEN) {
|
||||
errno = ENAMETOOLONG;
|
||||
@@ -166,8 +178,8 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
|
||||
}
|
||||
#if defined(HAS_LSTAT) && defined(HAS_READLINK) && defined(HAS_SYMLINK)
|
||||
{
|
||||
- struct stat sb;
|
||||
- if (lstat(resolved, &sb) != 0) {
|
||||
+ Stat_t sb;
|
||||
+ if (PerlLIO_lstat(resolved, &sb) != 0) {
|
||||
if (errno == ENOENT && p == NULL) {
|
||||
errno = serrno;
|
||||
return (resolved);
|
||||
@@ -182,7 +194,7 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
|
||||
errno = ELOOP;
|
||||
return (NULL);
|
||||
}
|
||||
- slen = readlink(resolved, symlink, sizeof(symlink) - 1);
|
||||
+ slen = PerlLIO_readlink(resolved, symlink, sizeof(symlink) - 1);
|
||||
if (slen < 0)
|
||||
return (NULL);
|
||||
symlink[slen] = '\0';
|
||||
diff --git a/META.json b/META.json
|
||||
index e41b849..ad429a5 100644
|
||||
--- a/META.json
|
||||
+++ b/META.json
|
||||
@@ -50,6 +50,6 @@
|
||||
"url" : "git://perl5.git.perl.org/perl.git"
|
||||
}
|
||||
},
|
||||
- "version" : "3.75",
|
||||
+ "version" : "3.73",
|
||||
"x_serialization_backend" : "JSON::PP version 2.27400_02"
|
||||
}
|
||||
diff --git a/META.yml b/META.yml
|
||||
index c53f36e..c2adfcf 100644
|
||||
--- a/META.yml
|
||||
+++ b/META.yml
|
||||
@@ -26,5 +26,5 @@ resources:
|
||||
bugtracker: https://rt.perl.org/rt3/
|
||||
homepage: http://dev.perl.org/
|
||||
repository: git://perl5.git.perl.org/perl.git
|
||||
-version: '3.75'
|
||||
+version: '3.73'
|
||||
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
|
||||
diff --git a/lib/File/Spec.pm b/lib/File/Spec.pm
|
||||
index 7fe3272..30d883b 100644
|
||||
--- a/lib/File/Spec.pm
|
||||
+++ b/lib/File/Spec.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
my %module = (
|
||||
diff --git a/lib/File/Spec/AmigaOS.pm b/lib/File/Spec/AmigaOS.pm
|
||||
index 2b7d18a..fd9da81 100644
|
||||
--- a/lib/File/Spec/AmigaOS.pm
|
||||
+++ b/lib/File/Spec/AmigaOS.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::AmigaOS;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Cygwin.pm b/lib/File/Spec/Cygwin.pm
|
||||
index d44ced3..953c233 100644
|
||||
--- a/lib/File/Spec/Cygwin.pm
|
||||
+++ b/lib/File/Spec/Cygwin.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Cygwin;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Epoc.pm b/lib/File/Spec/Epoc.pm
|
||||
index b611cd9..fcb9e89 100644
|
||||
--- a/lib/File/Spec/Epoc.pm
|
||||
+++ b/lib/File/Spec/Epoc.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec::Epoc;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require File::Spec::Unix;
|
||||
diff --git a/lib/File/Spec/Functions.pm b/lib/File/Spec/Functions.pm
|
||||
index 3f617bd..e14ad2f 100644
|
||||
--- a/lib/File/Spec/Functions.pm
|
||||
+++ b/lib/File/Spec/Functions.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Functions;
|
||||
use File::Spec;
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require Exporter;
|
||||
diff --git a/lib/File/Spec/Mac.pm b/lib/File/Spec/Mac.pm
|
||||
index d920d2f..8026edc 100644
|
||||
--- a/lib/File/Spec/Mac.pm
|
||||
+++ b/lib/File/Spec/Mac.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/OS2.pm b/lib/File/Spec/OS2.pm
|
||||
index 603781a..3c35ba9 100644
|
||||
--- a/lib/File/Spec/OS2.pm
|
||||
+++ b/lib/File/Spec/OS2.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Unix.pm b/lib/File/Spec/Unix.pm
|
||||
index 6749e60..c06d18f 100644
|
||||
--- a/lib/File/Spec/Unix.pm
|
||||
+++ b/lib/File/Spec/Unix.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Unix;
|
||||
use strict;
|
||||
use Cwd ();
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
=head1 NAME
|
||||
diff --git a/lib/File/Spec/Win32.pm b/lib/File/Spec/Win32.pm
|
||||
index 5934010..1537442 100644
|
||||
--- a/lib/File/Spec/Win32.pm
|
||||
+++ b/lib/File/Spec/Win32.pm
|
||||
@@ -5,7 +5,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.78';
|
||||
+our $VERSION = '3.80';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
@@ -84,7 +84,7 @@ sub tmpdir {
|
||||
MSWin32 case-tolerance depends on GetVolumeInformation() $ouFsFlags == FS_CASE_SENSITIVE,
|
||||
indicating the case significance when comparing file specifications.
|
||||
Since XP FS_CASE_SENSITIVE is effectively disabled for the NT subsubsystem.
|
||||
-See http://cygwin.com/ml/cygwin/2007-07/msg00891.html
|
||||
+See L<http://cygwin.com/ml/cygwin/2007-07/msg00891.html>
|
||||
Default: 1
|
||||
|
||||
=cut
|
||||
diff --git a/t/cwd.t b/t/cwd.t
|
||||
index c056938..d155e33 100644
|
||||
--- a/t/cwd.t
|
||||
+++ b/t/cwd.t
|
||||
@@ -187,6 +187,10 @@ rmtree($test_dirs[0], 0, 0);
|
||||
SKIP: {
|
||||
skip "no symlinks on this platform", 2+$EXTRA_ABSPATH_TESTS unless $Config{d_symlink} && $^O !~ m!^(qnx|nto)!;
|
||||
|
||||
+ # on Win32 GetCurrentDirectory() includes the symlink if
|
||||
+ # you chdir() to a path including the symlink.
|
||||
+ skip "Win32 symlinks are unusual", 2+$EXTRA_ABSPATH_TESTS if $^O eq "MSWin32";
|
||||
+
|
||||
my $file = "linktest";
|
||||
mkpath([$Test_Dir], 0, 0777);
|
||||
symlink $Test_Dir, $file;
|
||||
diff --git a/t/cwd_enoent.t b/t/cwd_enoent.t
|
||||
index 510c65e..2e94bad 100644
|
||||
--- a/t/cwd_enoent.t
|
||||
+++ b/t/cwd_enoent.t
|
||||
@@ -26,6 +26,8 @@ foreach my $type (qw(regular perl)) {
|
||||
if $type eq "perl" &&
|
||||
!(($Config{prefix} =~ m/\//) && $^O ne "cygwin");
|
||||
|
||||
+ # https://github.com/Perl/perl5/issues/16525
|
||||
+ # https://bugs.dragonflybsd.org/issues/3250
|
||||
skip "getcwd() doesn't fail on non-existent directories on this platform", 4
|
||||
if $type eq 'regular' && $^O eq 'dragonfly';
|
||||
|
||||
--
|
||||
2.30.2
|
||||
|
@ -0,0 +1,371 @@
|
||||
From 29821ef8025dddc95c122e87afb09d5b3a5ef6ed Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 12 May 2022 10:53:47 +0200
|
||||
Subject: [PATCH] Upgrade to 3.84
|
||||
|
||||
---
|
||||
Changes | 30 ++++++++++++++++++++++++++
|
||||
Cwd.pm | 43 ++++++++++----------------------------
|
||||
Cwd.xs | 4 ++++
|
||||
Makefile.PL | 2 +-
|
||||
lib/File/Spec.pm | 4 ++--
|
||||
lib/File/Spec/AmigaOS.pm | 2 +-
|
||||
lib/File/Spec/Cygwin.pm | 2 +-
|
||||
lib/File/Spec/Epoc.pm | 2 +-
|
||||
lib/File/Spec/Functions.pm | 2 +-
|
||||
lib/File/Spec/Mac.pm | 2 +-
|
||||
lib/File/Spec/OS2.pm | 2 +-
|
||||
lib/File/Spec/Unix.pm | 4 ++--
|
||||
lib/File/Spec/Win32.pm | 2 +-
|
||||
t/cwd_enoent.t | 3 +++
|
||||
14 files changed, 60 insertions(+), 44 deletions(-)
|
||||
|
||||
diff --git a/Changes b/Changes
|
||||
index 7f04db2..9533c1f 100644
|
||||
--- a/Changes
|
||||
+++ b/Changes
|
||||
@@ -1,5 +1,35 @@
|
||||
Revision history for Perl distribution PathTools.
|
||||
|
||||
+3.81
|
||||
+
|
||||
+- compare inode numbers as strings (github #18788)
|
||||
+
|
||||
+3.80
|
||||
+
|
||||
+- use the PerlLIO_*() functions for lstat() and readlink() to support
|
||||
+ Win32 symlink support added to perl.
|
||||
+
|
||||
+- skip a test that assumes getcwd() doesn't return symlinks on Win32, where
|
||||
+ it can.
|
||||
+
|
||||
+3.79
|
||||
+
|
||||
+- fix an off-by-one in bsd_realpath()
|
||||
+
|
||||
+3.78
|
||||
+
|
||||
+- fallback to Internals::getcwd() for getcwd() if available (requires
|
||||
+ $Config{d_getcwd})
|
||||
+
|
||||
+3.77
|
||||
+
|
||||
+- don't translate "..." to "..\.." on Win32
|
||||
+
|
||||
+3.76
|
||||
+
|
||||
+- test t/cwd_enoent.t - also accept ESTALE for a directory that no
|
||||
+ longer exists (github #16699)
|
||||
+
|
||||
3.75
|
||||
- Fix t/abs2rel.t on 5.8.8 by changing mkpath call to be
|
||||
compatible with older File::Path
|
||||
diff --git a/Cwd.pm b/Cwd.pm
|
||||
index 6a1d2f1..0683583 100644
|
||||
--- a/Cwd.pm
|
||||
+++ b/Cwd.pm
|
||||
@@ -3,7 +3,7 @@ use strict;
|
||||
use Exporter;
|
||||
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
my $xs_version = $VERSION;
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
@@ -181,12 +181,6 @@ if ($^O =~ /android/) {
|
||||
}
|
||||
|
||||
my $found_pwd_cmd = defined($pwd_cmd);
|
||||
-unless ($pwd_cmd) {
|
||||
- # Isn't this wrong? _backtick_pwd() will fail if someone has
|
||||
- # pwd in their path but it is not /bin/pwd or /usr/bin/pwd?
|
||||
- # See [perl #16774]. --jhi
|
||||
- $pwd_cmd = 'pwd';
|
||||
-}
|
||||
|
||||
# Lazy-load Carp
|
||||
sub _carp { require Carp; Carp::carp(@_) }
|
||||
@@ -213,26 +207,13 @@ sub _backtick_pwd {
|
||||
# we take care not to override an existing definition for cwd().
|
||||
|
||||
unless ($METHOD_MAP{$^O}{cwd} or defined &cwd) {
|
||||
- # The pwd command is not available in some chroot(2)'ed environments
|
||||
- my $sep = $Config::Config{path_sep} || ':';
|
||||
- my $os = $^O; # Protect $^O from tainting
|
||||
-
|
||||
-
|
||||
- # Try again to find a pwd, this time searching the whole PATH.
|
||||
- if (defined $ENV{PATH} and $os ne 'MSWin32') { # no pwd on Windows
|
||||
- my @candidates = split($sep, $ENV{PATH});
|
||||
- while (!$found_pwd_cmd and @candidates) {
|
||||
- my $candidate = shift @candidates;
|
||||
- $found_pwd_cmd = 1 if -x "$candidate/pwd";
|
||||
- }
|
||||
- }
|
||||
-
|
||||
if( $found_pwd_cmd )
|
||||
{
|
||||
*cwd = \&_backtick_pwd;
|
||||
}
|
||||
else {
|
||||
- *cwd = \&getcwd;
|
||||
+ # getcwd() might have an empty prototype
|
||||
+ *cwd = sub { getcwd(); };
|
||||
}
|
||||
}
|
||||
|
||||
@@ -275,7 +256,7 @@ sub fastcwd_ {
|
||||
($odev, $oino) = ($cdev, $cino);
|
||||
CORE::chdir('..') || return undef;
|
||||
($cdev, $cino) = stat('.');
|
||||
- last if $odev == $cdev && $oino == $cino;
|
||||
+ last if $odev == $cdev && $oino eq $cino;
|
||||
opendir(DIR, '.') || return undef;
|
||||
for (;;) {
|
||||
$direntry = readdir(DIR);
|
||||
@@ -284,7 +265,7 @@ sub fastcwd_ {
|
||||
next if $direntry eq '..';
|
||||
|
||||
($tdev, $tino) = lstat($direntry);
|
||||
- last unless $tdev != $odev || $tino != $oino;
|
||||
+ last unless $tdev != $odev || $tino ne $oino;
|
||||
}
|
||||
closedir(DIR);
|
||||
return undef unless defined $direntry; # should never happen
|
||||
@@ -298,7 +279,7 @@ sub fastcwd_ {
|
||||
&& CORE::chdir($1) or return undef;
|
||||
($cdev, $cino) = stat('.');
|
||||
die "Unstable directory path, current directory changed unexpectedly"
|
||||
- if $cdev != $orig_cdev || $cino != $orig_cino;
|
||||
+ if $cdev != $orig_cdev || $cino ne $orig_cino;
|
||||
$path;
|
||||
}
|
||||
if (not defined &fastcwd) { *fastcwd = \&fastcwd_ }
|
||||
@@ -315,7 +296,7 @@ sub chdir_init {
|
||||
if ($ENV{'PWD'} and $^O ne 'os2' and $^O ne 'dos' and $^O ne 'MSWin32') {
|
||||
my($dd,$di) = stat('.');
|
||||
my($pd,$pi) = stat($ENV{'PWD'});
|
||||
- if (!defined $dd or !defined $pd or $di != $pi or $dd != $pd) {
|
||||
+ if (!defined $dd or !defined $pd or $di ne $pi or $dd != $pd) {
|
||||
$ENV{'PWD'} = cwd();
|
||||
}
|
||||
}
|
||||
@@ -328,7 +309,7 @@ sub chdir_init {
|
||||
if ($^O ne 'MSWin32' and $ENV{'PWD'} =~ m|(/[^/]+(/[^/]+/[^/]+))(.*)|s) {
|
||||
my($pd,$pi) = stat($2);
|
||||
my($dd,$di) = stat($1);
|
||||
- if (defined $pd and defined $dd and $di == $pi and $dd == $pd) {
|
||||
+ if (defined $pd and defined $dd and $di ne $pi and $dd == $pd) {
|
||||
$ENV{'PWD'}="$2$3";
|
||||
}
|
||||
}
|
||||
@@ -430,7 +411,7 @@ sub _perl_abs_path
|
||||
$! = $e;
|
||||
return undef;
|
||||
}
|
||||
- if ($pst[0] == $cst[0] && $pst[1] == $cst[1])
|
||||
+ if ($pst[0] == $cst[0] && $pst[1] eq $cst[1])
|
||||
{
|
||||
$dir = undef;
|
||||
}
|
||||
@@ -448,7 +429,7 @@ sub _perl_abs_path
|
||||
$tst[0] = $pst[0]+1 unless (@tst = lstat("$dotdots/$dir"))
|
||||
}
|
||||
while ($dir eq '.' || $dir eq '..' || $tst[0] != $pst[0] ||
|
||||
- $tst[1] != $pst[1]);
|
||||
+ $tst[1] ne $pst[1]);
|
||||
}
|
||||
$cwd = (defined $dir ? "$dir" : "" ) . "/$cwd" ;
|
||||
closedir(PARENT);
|
||||
@@ -820,9 +801,7 @@ C<fast_abs_path()>.
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
-Originally by the perl5-porters.
|
||||
-
|
||||
-Maintained by Ken Williams <KWILLIAMS@cpan.org>
|
||||
+Maintained by perl5-porters <F<perl5-porters@perl.org>>.
|
||||
|
||||
=head1 COPYRIGHT
|
||||
|
||||
diff --git a/Cwd.xs b/Cwd.xs
|
||||
index 223e1a6..4fda057 100644
|
||||
--- a/Cwd.xs
|
||||
+++ b/Cwd.xs
|
||||
@@ -15,6 +15,10 @@
|
||||
# include "ppport.h"
|
||||
#endif
|
||||
|
||||
+#if defined(HAS_READLINK) && !defined(PerlLIO_readlink)
|
||||
+#define PerlLIO_readlink readlink
|
||||
+#endif
|
||||
+
|
||||
#ifdef I_UNISTD
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
diff --git a/Makefile.PL b/Makefile.PL
|
||||
index 11e04af..0311708 100644
|
||||
--- a/Makefile.PL
|
||||
+++ b/Makefile.PL
|
||||
@@ -16,7 +16,7 @@ push @extra, 'LICENSE' => 'perl_5'
|
||||
push @extra, 'META_MERGE' => {
|
||||
resources => {
|
||||
repository => 'git://perl5.git.perl.org/perl.git',
|
||||
- bugtracker => 'https://rt.perl.org/rt3/',
|
||||
+ bugtracker => 'https://github.com/Perl/perl5/issues',
|
||||
homepage => "http://dev.perl.org/",
|
||||
license => [ 'http://dev.perl.org/licenses/' ],
|
||||
},
|
||||
diff --git a/lib/File/Spec.pm b/lib/File/Spec.pm
|
||||
index 30d883b..e0a49ed 100644
|
||||
--- a/lib/File/Spec.pm
|
||||
+++ b/lib/File/Spec.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
my %module = (
|
||||
@@ -316,7 +316,7 @@ L<ExtUtils::MakeMaker>
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
-Currently maintained by Ken Williams C<< <KWILLIAMS@cpan.org> >>.
|
||||
+Maintained by perl5-porters <F<perl5-porters@perl.org>>.
|
||||
|
||||
The vast majority of the code was written by
|
||||
Kenneth Albanowski C<< <kjahds@kjahds.com> >>,
|
||||
diff --git a/lib/File/Spec/AmigaOS.pm b/lib/File/Spec/AmigaOS.pm
|
||||
index fd9da81..a29617c 100644
|
||||
--- a/lib/File/Spec/AmigaOS.pm
|
||||
+++ b/lib/File/Spec/AmigaOS.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::AmigaOS;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Cygwin.pm b/lib/File/Spec/Cygwin.pm
|
||||
index 953c233..e21c0bb 100644
|
||||
--- a/lib/File/Spec/Cygwin.pm
|
||||
+++ b/lib/File/Spec/Cygwin.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Cygwin;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Epoc.pm b/lib/File/Spec/Epoc.pm
|
||||
index fcb9e89..2429bb2 100644
|
||||
--- a/lib/File/Spec/Epoc.pm
|
||||
+++ b/lib/File/Spec/Epoc.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec::Epoc;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require File::Spec::Unix;
|
||||
diff --git a/lib/File/Spec/Functions.pm b/lib/File/Spec/Functions.pm
|
||||
index e14ad2f..a09150c 100644
|
||||
--- a/lib/File/Spec/Functions.pm
|
||||
+++ b/lib/File/Spec/Functions.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Functions;
|
||||
use File::Spec;
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require Exporter;
|
||||
diff --git a/lib/File/Spec/Mac.pm b/lib/File/Spec/Mac.pm
|
||||
index 8026edc..369d1f0 100644
|
||||
--- a/lib/File/Spec/Mac.pm
|
||||
+++ b/lib/File/Spec/Mac.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/OS2.pm b/lib/File/Spec/OS2.pm
|
||||
index 3c35ba9..604e2e3 100644
|
||||
--- a/lib/File/Spec/OS2.pm
|
||||
+++ b/lib/File/Spec/OS2.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Unix.pm b/lib/File/Spec/Unix.pm
|
||||
index c06d18f..52904b4 100644
|
||||
--- a/lib/File/Spec/Unix.pm
|
||||
+++ b/lib/File/Spec/Unix.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Unix;
|
||||
use strict;
|
||||
use Cwd ();
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
=head1 NAME
|
||||
@@ -530,7 +530,7 @@ Copyright (c) 2004 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.
|
||||
|
||||
-Please submit bug reports and patches to perlbug@perl.org.
|
||||
+Please submit bug reports at L<https://github.com/Perl/perl5/issues>.
|
||||
|
||||
=head1 SEE ALSO
|
||||
|
||||
diff --git a/lib/File/Spec/Win32.pm b/lib/File/Spec/Win32.pm
|
||||
index 1537442..b05b535 100644
|
||||
--- a/lib/File/Spec/Win32.pm
|
||||
+++ b/lib/File/Spec/Win32.pm
|
||||
@@ -5,7 +5,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.80';
|
||||
+our $VERSION = '3.84';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/t/cwd_enoent.t b/t/cwd_enoent.t
|
||||
index 2e94bad..0fe3834 100644
|
||||
--- a/t/cwd_enoent.t
|
||||
+++ b/t/cwd_enoent.t
|
||||
@@ -31,6 +31,9 @@ foreach my $type (qw(regular perl)) {
|
||||
skip "getcwd() doesn't fail on non-existent directories on this platform", 4
|
||||
if $type eq 'regular' && $^O eq 'dragonfly';
|
||||
|
||||
+ skip "getcwd() doesn't fail on non-existent directories on this platform", 4
|
||||
+ if $type eq 'regular' && $^O eq 'haiku';
|
||||
+
|
||||
no warnings "redefine";
|
||||
local *Cwd::abs_path = \&Cwd::_perl_abs_path if $type eq "perl";
|
||||
local *Cwd::getcwd = \&Cwd::_perl_getcwd if $type eq "perl";
|
||||
--
|
||||
2.34.3
|
||||
|
@ -0,0 +1,345 @@
|
||||
From ebaf4e0e48c6e881818d8759470f227d4e15abca Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 18 May 2023 14:28:48 +0200
|
||||
Subject: [PATCH] Upgrade to 3.89
|
||||
|
||||
---
|
||||
Changes | 24 +++++
|
||||
Cwd.pm | 10 +-
|
||||
Cwd.xs | 18 ++--
|
||||
META.json | 2 +-
|
||||
META.yml | 2 +-
|
||||
Makefile.PL | 5 +-
|
||||
lib/File/Spec.pm | 6 +-
|
||||
lib/File/Spec/AmigaOS.pm | 2 +-
|
||||
lib/File/Spec/Cygwin.pm | 2 +-
|
||||
lib/File/Spec/Epoc.pm | 2 +-
|
||||
lib/File/Spec/Functions.pm | 2 +-
|
||||
lib/File/Spec/Mac.pm | 2 +-
|
||||
lib/File/Spec/OS2.pm | 2 +-
|
||||
lib/File/Spec/Unix.pm | 2 +-
|
||||
lib/File/Spec/Win32.pm | 2 +-
|
||||
t/Spec.t | 196 ++++++++++++++++++++++++++++++++++++-
|
||||
t/cwd_enoent.t | 4 +-
|
||||
t/tmpdir.t | 2 +-
|
||||
18 files changed, 254 insertions(+), 31 deletions(-)
|
||||
|
||||
diff --git a/Changes b/Changes
|
||||
index 9533c1f..47e172a 100644
|
||||
--- a/Changes
|
||||
+++ b/Changes
|
||||
@@ -1,5 +1,29 @@
|
||||
Revision history for Perl distribution PathTools.
|
||||
|
||||
+3.87-3.88
|
||||
+
|
||||
+- Fix handling of empty path, VMS fixes.
|
||||
+
|
||||
+3.86
|
||||
+
|
||||
+- Fix compilation warning on illumos based platforms
|
||||
+
|
||||
+3.85
|
||||
+
|
||||
+- Fix issue related to tainting empty PATH
|
||||
+
|
||||
+3.84
|
||||
+
|
||||
+- Add PerlIO_readlink backcompat defines to Cws.xs
|
||||
+
|
||||
+3.83
|
||||
+
|
||||
+- More bugtracker changes, document maintainer is the Perl-5 Porters
|
||||
+
|
||||
+3.82
|
||||
+
|
||||
+- Change to build so bugreports go to GitHub
|
||||
+
|
||||
3.81
|
||||
|
||||
- compare inode numbers as strings (github #18788)
|
||||
diff --git a/Cwd.pm b/Cwd.pm
|
||||
index 0683583..dbf08a6 100644
|
||||
--- a/Cwd.pm
|
||||
+++ b/Cwd.pm
|
||||
@@ -3,7 +3,7 @@ use strict;
|
||||
use Exporter;
|
||||
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.89';
|
||||
my $xs_version = $VERSION;
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
@@ -192,8 +192,14 @@ sub _backtick_pwd {
|
||||
# Localize %ENV entries in a way that won't create new hash keys.
|
||||
# Under AmigaOS we don't want to localize as it stops perl from
|
||||
# finding 'sh' in the PATH.
|
||||
- my @localize = grep exists $ENV{$_}, qw(PATH IFS CDPATH ENV BASH_ENV) if $^O ne "amigaos";
|
||||
+ my @localize = grep exists $ENV{$_}, qw(IFS CDPATH ENV BASH_ENV) if $^O ne "amigaos";
|
||||
local @ENV{@localize} if @localize;
|
||||
+ # empty PATH is the same as "." on *nix, so localize it to /something/
|
||||
+ # we won't *use* the path as code above turns $pwd_cmd into a specific
|
||||
+ # executable, but it will blow up anyway under taint. We could set it to
|
||||
+ # anything absolute. Perhaps "/" would be better.
|
||||
+ local $ENV{PATH}= "/usr/bin"
|
||||
+ if $^O ne "amigaos";
|
||||
|
||||
my $cwd = `$pwd_cmd`;
|
||||
# Belt-and-suspenders in case someone said "undef $/".
|
||||
diff --git a/Cwd.xs b/Cwd.xs
|
||||
index 4fda057..ca8639d 100644
|
||||
--- a/Cwd.xs
|
||||
+++ b/Cwd.xs
|
||||
@@ -7,13 +7,11 @@
|
||||
#include "EXTERN.h"
|
||||
#include "perl.h"
|
||||
#include "XSUB.h"
|
||||
-#ifndef NO_PPPORT_H
|
||||
-# define NEED_croak_xs_usage
|
||||
-# define NEED_sv_2pv_flags
|
||||
-# define NEED_my_strlcpy
|
||||
-# define NEED_my_strlcat
|
||||
-# include "ppport.h"
|
||||
-#endif
|
||||
+#define NEED_croak_xs_usage
|
||||
+#define NEED_sv_2pv_flags
|
||||
+#define NEED_my_strlcpy
|
||||
+#define NEED_my_strlcat
|
||||
+#include "ppport.h"
|
||||
|
||||
#if defined(HAS_READLINK) && !defined(PerlLIO_readlink)
|
||||
#define PerlLIO_readlink readlink
|
||||
@@ -24,8 +22,10 @@
|
||||
#endif
|
||||
|
||||
/* For special handling of os390 sysplexed systems */
|
||||
+#ifdef OS390
|
||||
#define SYSNAME "$SYSNAME"
|
||||
#define SYSNAME_LEN (sizeof(SYSNAME) - 1)
|
||||
+#endif
|
||||
|
||||
/* The realpath() implementation from OpenBSD 3.9 to 4.2 (realpath.c 1.13)
|
||||
* Renamed here to bsd_realpath() to avoid library conflicts.
|
||||
@@ -202,7 +202,7 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
|
||||
if (slen < 0)
|
||||
return (NULL);
|
||||
symlink[slen] = '\0';
|
||||
-# ifdef EBCDIC /* XXX Probably this should be only os390 */
|
||||
+# ifdef OS390
|
||||
/* Replace all instances of $SYSNAME/foo simply by /foo */
|
||||
if (slen > SYSNAME_LEN + strlen(next_token)
|
||||
&& strnEQ(symlink, SYSNAME, SYSNAME_LEN)
|
||||
@@ -245,7 +245,7 @@ bsd_realpath(const char *path, char resolved[MAXPATHLEN])
|
||||
}
|
||||
remaining_len = my_strlcpy(remaining, symlink, sizeof(remaining));
|
||||
}
|
||||
-# ifdef EBCDIC
|
||||
+# ifdef OS390
|
||||
not_symlink: ;
|
||||
# endif
|
||||
}
|
||||
diff --git a/META.json b/META.json
|
||||
index ad429a5..d810ba7 100644
|
||||
--- a/META.json
|
||||
+++ b/META.json
|
||||
@@ -50,6 +50,6 @@
|
||||
"url" : "git://perl5.git.perl.org/perl.git"
|
||||
}
|
||||
},
|
||||
- "version" : "3.73",
|
||||
+ "version" : "3.86",
|
||||
"x_serialization_backend" : "JSON::PP version 2.27400_02"
|
||||
}
|
||||
diff --git a/META.yml b/META.yml
|
||||
index c2adfcf..f5e9fe3 100644
|
||||
--- a/META.yml
|
||||
+++ b/META.yml
|
||||
@@ -26,5 +26,5 @@ resources:
|
||||
bugtracker: https://rt.perl.org/rt3/
|
||||
homepage: http://dev.perl.org/
|
||||
repository: git://perl5.git.perl.org/perl.git
|
||||
-version: '3.73'
|
||||
+version: '3.86'
|
||||
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
|
||||
diff --git a/Makefile.PL b/Makefile.PL
|
||||
index 0311708..754acbe 100644
|
||||
--- a/Makefile.PL
|
||||
+++ b/Makefile.PL
|
||||
@@ -29,10 +29,7 @@ WriteMakefile
|
||||
'VERSION_FROM' => 'Cwd.pm',
|
||||
'ABSTRACT' => 'Tools for working with directory and file names',
|
||||
'AUTHOR' => 'Perl 5 Porters',
|
||||
- 'DEFINE' => join(" ",
|
||||
- "-DDOUBLE_SLASHES_SPECIAL=@{[$^O eq q(qnx) || $^O eq q(nto) ? 1 : 0]}",
|
||||
- ((grep { $_ eq 'PERL_CORE=1' } @ARGV) ? '-DNO_PPPORT_H' : ()),
|
||||
- ),
|
||||
+ 'DEFINE' => "-DDOUBLE_SLASHES_SPECIAL=@{[$^O eq q(qnx) || $^O eq q(nto) ? 1 : 0]}",
|
||||
'PREREQ_PM' => {
|
||||
'Carp' => '0',
|
||||
'File::Basename' => '0',
|
||||
diff --git a/lib/File/Spec.pm b/lib/File/Spec.pm
|
||||
index e0a49ed..fc10c0f 100644
|
||||
--- a/lib/File/Spec.pm
|
||||
+++ b/lib/File/Spec.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
my %module = (
|
||||
@@ -33,13 +33,13 @@ File::Spec - portably perform operations on file names
|
||||
|
||||
use File::Spec;
|
||||
|
||||
- $x=File::Spec->catfile('a', 'b', 'c');
|
||||
+ my $x = File::Spec->catfile('a', 'b', 'c');
|
||||
|
||||
which returns 'a/b/c' under Unix. Or:
|
||||
|
||||
use File::Spec::Functions;
|
||||
|
||||
- $x = catfile('a', 'b', 'c');
|
||||
+ my $x = catfile('a', 'b', 'c');
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
diff --git a/lib/File/Spec/AmigaOS.pm b/lib/File/Spec/AmigaOS.pm
|
||||
index a29617c..3fc3c98 100644
|
||||
--- a/lib/File/Spec/AmigaOS.pm
|
||||
+++ b/lib/File/Spec/AmigaOS.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::AmigaOS;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Cygwin.pm b/lib/File/Spec/Cygwin.pm
|
||||
index e21c0bb..fb3eaaa 100644
|
||||
--- a/lib/File/Spec/Cygwin.pm
|
||||
+++ b/lib/File/Spec/Cygwin.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Cygwin;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Epoc.pm b/lib/File/Spec/Epoc.pm
|
||||
index 2429bb2..9391f3a 100644
|
||||
--- a/lib/File/Spec/Epoc.pm
|
||||
+++ b/lib/File/Spec/Epoc.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec::Epoc;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require File::Spec::Unix;
|
||||
diff --git a/lib/File/Spec/Functions.pm b/lib/File/Spec/Functions.pm
|
||||
index a09150c..a0d8641 100644
|
||||
--- a/lib/File/Spec/Functions.pm
|
||||
+++ b/lib/File/Spec/Functions.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Functions;
|
||||
use File::Spec;
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require Exporter;
|
||||
diff --git a/lib/File/Spec/Mac.pm b/lib/File/Spec/Mac.pm
|
||||
index 369d1f0..5f5cca9 100644
|
||||
--- a/lib/File/Spec/Mac.pm
|
||||
+++ b/lib/File/Spec/Mac.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/OS2.pm b/lib/File/Spec/OS2.pm
|
||||
index 604e2e3..eea5328 100644
|
||||
--- a/lib/File/Spec/OS2.pm
|
||||
+++ b/lib/File/Spec/OS2.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Unix.pm b/lib/File/Spec/Unix.pm
|
||||
index 52904b4..2d5af10 100644
|
||||
--- a/lib/File/Spec/Unix.pm
|
||||
+++ b/lib/File/Spec/Unix.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Unix;
|
||||
use strict;
|
||||
use Cwd ();
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
=head1 NAME
|
||||
diff --git a/lib/File/Spec/Win32.pm b/lib/File/Spec/Win32.pm
|
||||
index b05b535..292c2f8 100644
|
||||
--- a/lib/File/Spec/Win32.pm
|
||||
+++ b/lib/File/Spec/Win32.pm
|
||||
@@ -5,7 +5,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.84';
|
||||
+our $VERSION = '3.88';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/t/cwd_enoent.t b/t/cwd_enoent.t
|
||||
index 0fe3834..05b30b3 100644
|
||||
--- a/t/cwd_enoent.t
|
||||
+++ b/t/cwd_enoent.t
|
||||
@@ -28,8 +28,10 @@ foreach my $type (qw(regular perl)) {
|
||||
|
||||
# https://github.com/Perl/perl5/issues/16525
|
||||
# https://bugs.dragonflybsd.org/issues/3250
|
||||
+ my @vlist = ($Config{osvers} =~ /(\d+)/g);
|
||||
+ my $osver = sprintf("%d%03d", map { defined() ? $_ : '0' } @vlist[0,1]);
|
||||
skip "getcwd() doesn't fail on non-existent directories on this platform", 4
|
||||
- if $type eq 'regular' && $^O eq 'dragonfly';
|
||||
+ if $type eq 'regular' && $^O eq 'dragonfly' && $osver < 6002;
|
||||
|
||||
skip "getcwd() doesn't fail on non-existent directories on this platform", 4
|
||||
if $type eq 'regular' && $^O eq 'haiku';
|
||||
diff --git a/t/tmpdir.t b/t/tmpdir.t
|
||||
index 0f03dc5..aeff4fc 100644
|
||||
--- a/t/tmpdir.t
|
||||
+++ b/t/tmpdir.t
|
||||
@@ -43,7 +43,7 @@ for ('File::Spec', "File::Spec::Win32") {
|
||||
-d $ENV{TMPDIR} && -w _
|
||||
or skip "Can't create usable TMPDIR env var", 1;
|
||||
my $tmpdir2 = $_->tmpdir;
|
||||
- isn't $tmpdir2, $tmpdir1, "$_->tmpdir works with changing env";
|
||||
+ isnt $tmpdir2, $tmpdir1, "$_->tmpdir works with changing env";
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.40.1
|
||||
|
@ -0,0 +1,193 @@
|
||||
From 0c5f0ea37e3c4d50f47c531bb32e184fa9c38980 Mon Sep 17 00:00:00 2001
|
||||
From: Jitka Plesnikova <jplesnik@redhat.com>
|
||||
Date: Thu, 9 May 2024 15:42:26 +0200
|
||||
Subject: [PATCH] Upgrade to 3.91
|
||||
|
||||
---
|
||||
Cwd.pm | 2 +-
|
||||
Cwd.xs | 4 -
|
||||
lib/File/Spec.pm | 2 +-
|
||||
lib/File/Spec/AmigaOS.pm | 2 +-
|
||||
lib/File/Spec/Cygwin.pm | 2 +-
|
||||
lib/File/Spec/Epoc.pm | 2 +-
|
||||
lib/File/Spec/Functions.pm | 4 +-
|
||||
lib/File/Spec/Mac.pm | 2 +-
|
||||
lib/File/Spec/OS2.pm | 2 +-
|
||||
lib/File/Spec/Unix.pm | 2 +-
|
||||
lib/File/Spec/Win32.pm | 4 +-
|
||||
t/Spec.t | 196 ++++++++++++++++++++++++++++++++++++-
|
||||
12 files changed, 207 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/Cwd.pm b/Cwd.pm
|
||||
index dbf08a6..90013c9 100644
|
||||
--- a/Cwd.pm
|
||||
+++ b/Cwd.pm
|
||||
@@ -3,7 +3,7 @@ use strict;
|
||||
use Exporter;
|
||||
|
||||
|
||||
-our $VERSION = '3.89';
|
||||
+our $VERSION = '3.90';
|
||||
my $xs_version = $VERSION;
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
diff --git a/Cwd.xs b/Cwd.xs
|
||||
index ca8639d..bca575c 100644
|
||||
--- a/Cwd.xs
|
||||
+++ b/Cwd.xs
|
||||
@@ -292,7 +292,6 @@ return FALSE
|
||||
#define getcwd_sv(a) Perl_getcwd_sv(aTHX_ a)
|
||||
int Perl_getcwd_sv(pTHX_ SV *sv)
|
||||
{
|
||||
-#ifndef PERL_MICRO
|
||||
|
||||
SvTAINTED_on(sv);
|
||||
|
||||
@@ -430,9 +429,6 @@ int Perl_getcwd_sv(pTHX_ SV *sv)
|
||||
}
|
||||
#endif
|
||||
|
||||
-#else
|
||||
- return FALSE;
|
||||
-#endif
|
||||
}
|
||||
|
||||
#endif
|
||||
diff --git a/lib/File/Spec.pm b/lib/File/Spec.pm
|
||||
index fc10c0f..b2349be 100644
|
||||
--- a/lib/File/Spec.pm
|
||||
+++ b/lib/File/Spec.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.90';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
my %module = (
|
||||
diff --git a/lib/File/Spec/AmigaOS.pm b/lib/File/Spec/AmigaOS.pm
|
||||
index 3fc3c98..c500d23 100644
|
||||
--- a/lib/File/Spec/AmigaOS.pm
|
||||
+++ b/lib/File/Spec/AmigaOS.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::AmigaOS;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Cygwin.pm b/lib/File/Spec/Cygwin.pm
|
||||
index fb3eaaa..ef1c9ec 100644
|
||||
--- a/lib/File/Spec/Cygwin.pm
|
||||
+++ b/lib/File/Spec/Cygwin.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Cygwin;
|
||||
use strict;
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Epoc.pm b/lib/File/Spec/Epoc.pm
|
||||
index 9391f3a..1bc81f6 100644
|
||||
--- a/lib/File/Spec/Epoc.pm
|
||||
+++ b/lib/File/Spec/Epoc.pm
|
||||
@@ -2,7 +2,7 @@ package File::Spec::Epoc;
|
||||
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require File::Spec::Unix;
|
||||
diff --git a/lib/File/Spec/Functions.pm b/lib/File/Spec/Functions.pm
|
||||
index a0d8641..6068506 100644
|
||||
--- a/lib/File/Spec/Functions.pm
|
||||
+++ b/lib/File/Spec/Functions.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Functions;
|
||||
use File::Spec;
|
||||
use strict;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
require Exporter;
|
||||
@@ -72,7 +72,7 @@ File::Spec::Functions - portably perform operations on file names
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use File::Spec::Functions;
|
||||
- $x = catfile('a','b');
|
||||
+ my $x = catfile('a', 'b');
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
diff --git a/lib/File/Spec/Mac.pm b/lib/File/Spec/Mac.pm
|
||||
index 5f5cca9..08d7fdb 100644
|
||||
--- a/lib/File/Spec/Mac.pm
|
||||
+++ b/lib/File/Spec/Mac.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/OS2.pm b/lib/File/Spec/OS2.pm
|
||||
index eea5328..d8533c0 100644
|
||||
--- a/lib/File/Spec/OS2.pm
|
||||
+++ b/lib/File/Spec/OS2.pm
|
||||
@@ -4,7 +4,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
diff --git a/lib/File/Spec/Unix.pm b/lib/File/Spec/Unix.pm
|
||||
index 2d5af10..dbe36fb 100644
|
||||
--- a/lib/File/Spec/Unix.pm
|
||||
+++ b/lib/File/Spec/Unix.pm
|
||||
@@ -3,7 +3,7 @@ package File::Spec::Unix;
|
||||
use strict;
|
||||
use Cwd ();
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
=head1 NAME
|
||||
diff --git a/lib/File/Spec/Win32.pm b/lib/File/Spec/Win32.pm
|
||||
index 292c2f8..f9225e6 100644
|
||||
--- a/lib/File/Spec/Win32.pm
|
||||
+++ b/lib/File/Spec/Win32.pm
|
||||
@@ -5,7 +5,7 @@ use strict;
|
||||
use Cwd ();
|
||||
require File::Spec::Unix;
|
||||
|
||||
-our $VERSION = '3.88';
|
||||
+our $VERSION = '3.91';
|
||||
$VERSION =~ tr/_//d;
|
||||
|
||||
our @ISA = qw(File::Spec::Unix);
|
||||
@@ -249,7 +249,7 @@ Unlike just splitting the directories on the separator, leading empty and
|
||||
trailing directory entries can be returned, because these are significant
|
||||
on some OSs. So,
|
||||
|
||||
- File::Spec->splitdir( "/a/b/c" );
|
||||
+ File::Spec->splitdir( "/a/b//c/" );
|
||||
|
||||
Yields:
|
||||
|
||||
--
|
||||
2.45.0
|
||||
|
@ -0,0 +1,332 @@
|
||||
%global base_version 3.75
|
||||
|
||||
Name: perl-PathTools
|
||||
Version: 3.91
|
||||
Release: 510%{?dist}
|
||||
Summary: PathTools Perl module (Cwd, File::Spec)
|
||||
# Cwd.xs: BSD-3-Clause
|
||||
# other files: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
License: ( GPL-1.0-or-later OR Artistic-1.0-Perl ) AND BSD-3-Clause
|
||||
URL: https://metacpan.org/release/PathTools
|
||||
Source0: https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX/PathTools-%{base_version}.tar.gz
|
||||
# Disable VMS tests (bug #973713)
|
||||
Patch0: PathTools-3.74-Disable-VMS-tests.patch
|
||||
# Unbundled from perl 5.29.10
|
||||
Patch1: PathTools-3.75-Upgrade-to-3.78.patch
|
||||
# Unbundled from perl 5.34.0
|
||||
Patch2: PathTools-3.78-Upgrade-to-3.80.patch
|
||||
# Unbundled from perl 5.35.11
|
||||
Patch3: PathTools-3.80-Upgrade-to-3.84.patch
|
||||
# Unbundled from perl 5.37.11
|
||||
Patch4: PathTools-3.84-Upgrade-to-3.89.patch
|
||||
# Unbundled from perl 5.40.0-RC1
|
||||
Patch5: PathTools-3.89-Upgrade-to-3.91.patch
|
||||
BuildRequires: coreutils
|
||||
BuildRequires: findutils
|
||||
BuildRequires: gcc
|
||||
BuildRequires: make
|
||||
BuildRequires: perl-devel
|
||||
BuildRequires: perl-generators
|
||||
BuildRequires: perl-interpreter
|
||||
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
|
||||
# Run-time:
|
||||
BuildRequires: perl(Carp)
|
||||
BuildRequires: perl(constant)
|
||||
BuildRequires: perl(Errno)
|
||||
BuildRequires: perl(Exporter)
|
||||
# File::Basename not needed because of removed File::Spec::VMS
|
||||
BuildRequires: perl(Scalar::Util)
|
||||
BuildRequires: perl(strict)
|
||||
# Optional run-time:
|
||||
BuildRequires: perl(XSLoader)
|
||||
# Tests:
|
||||
BuildRequires: perl(Carp::Heavy)
|
||||
BuildRequires: perl(Config)
|
||||
BuildRequires: perl(File::Path)
|
||||
BuildRequires: perl(File::Temp)
|
||||
BuildRequires: perl(lib)
|
||||
BuildRequires: perl(Test::More) >= 0.88
|
||||
BuildRequires: perl(warnings)
|
||||
Requires: perl(Carp)
|
||||
Requires: perl(Errno)
|
||||
Requires: perl(Scalar::Util)
|
||||
# XSLoader is optional only because miniperl does not support XS. With perl we
|
||||
# almost certainly want it.
|
||||
Recommends: perl(XSLoader)
|
||||
|
||||
%{?perl_default_filter}
|
||||
|
||||
%description
|
||||
This is the combined distribution for the File::Spec and Cwd modules.
|
||||
|
||||
%package tests
|
||||
Summary: Tests for %{name}
|
||||
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires: perl-Test-Harness
|
||||
|
||||
%description tests
|
||||
Tests from %{name}. Execute them
|
||||
with "%{_libexecdir}/%{name}/test".
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n PathTools-%{base_version}
|
||||
|
||||
# Do not distribute File::Spec::VMS as it works on VMS only (bug #973713)
|
||||
rm lib/File/Spec/VMS.pm
|
||||
#perl -i -ne 'print $_ unless m{^\Qlib/File/Spec/VMS.pm\E}' MANIFEST
|
||||
|
||||
# Help generators to recognize Perl scripts
|
||||
for F in t/*.t; do
|
||||
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!.*perl\b}{$Config{startperl}}' "$F"
|
||||
chmod +x "$F"
|
||||
done
|
||||
|
||||
%build
|
||||
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 OPTIMIZE="%{optflags}"
|
||||
%{make_build}
|
||||
|
||||
%install
|
||||
%{make_install}
|
||||
find %{buildroot} -type f -name '*.bs' -size 0 -delete
|
||||
%{_fixperms} %{buildroot}/*
|
||||
|
||||
# Install tests
|
||||
mkdir -p %{buildroot}%{_libexecdir}/%{name}
|
||||
cp -a t %{buildroot}%{_libexecdir}/%{name}
|
||||
perl -i -pe "s#qr{blib}#qr{%{perl_vendorarch}}#" %{buildroot}%{_libexecdir}/%{name}/t/cwd.t
|
||||
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
|
||||
#!/bin/bash
|
||||
set -e
|
||||
DIR=$(mktemp -d)
|
||||
pushd "$DIR"
|
||||
cp -a %{_libexecdir}/%{name}/* ./
|
||||
prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
|
||||
popd
|
||||
rm -rf "$DIR"
|
||||
EOF
|
||||
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
|
||||
|
||||
%check
|
||||
make test
|
||||
|
||||
%files
|
||||
%doc Changes
|
||||
%{perl_vendorarch}/auto/*
|
||||
%{perl_vendorarch}/Cwd.pm
|
||||
%{perl_vendorarch}/File/
|
||||
%{_mandir}/man3/Cwd*
|
||||
%{_mandir}/man3/File::Spec*
|
||||
|
||||
%files tests
|
||||
%{_libexecdir}/%{name}
|
||||
|
||||
%changelog
|
||||
* Fri Oct 25 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 3.91-510
|
||||
- Rebuilt for MSVSphere 10
|
||||
|
||||
* Thu Jul 18 2024 Jitka Plesnikova <jplesnik@redhat.com> - 3.91-510
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Thu Jul 18 2024 Jitka Plesnikova <jplesnik@redhat.com> - 3.91-503
|
||||
- Upgrade to 3.91 as provided in 5.40.0-RC1
|
||||
|
||||
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 3.89-503
|
||||
- Bump release for June 2024 mass rebuild
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.89-502
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.89-501
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.89-500
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Tue Jul 11 2023 Jitka Plesnikova <jplesnik@redhat.com> - 3.89-499
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Thu May 18 2023 Jitka Plesnikova <jplesnik@redhat.com> - 3.89-1
|
||||
- Upgrade to 3.89 as provided in perl-5.37.11
|
||||
- Package tests
|
||||
|
||||
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.84-490
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.84-489
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Mon May 30 2022 Jitka Plesnikova <jplesnik@redhat.com> - 3.84-488
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Thu May 12 2022 Jitka Plesnikova <jplesnik@redhat.com> - 3.84-1
|
||||
- Upgrade to 3.84 as provided in perl-5.35.11
|
||||
|
||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.80-479
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.80-478
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Thu May 06 2021 Jitka Plesnikova <jplesnik@redhat.com> - 3.80-477
|
||||
- Upgrade to 3.80 as provided in perl-5.34.0
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.78-459
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Thu Nov 05 2020 Petr Pisar <ppisar@redhat.com> - 3.78-458
|
||||
- Fix an off-by-one in bsd_realpath()
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.78-457
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Mon Jun 22 2020 Jitka Plesnikova <jplesnik@redhat.com> - 3.78-456
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Thu Feb 06 2020 Tom Stellard <tstellar@redhat.com> - 3.78-441
|
||||
- Spec file cleanups: Use make_build and make_install macros
|
||||
- https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make
|
||||
- https://fedoraproject.org/wiki/Perl/Tips#ExtUtils::MakeMake
|
||||
|
||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.78-440
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.78-439
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Thu May 30 2019 Jitka Plesnikova <jplesnik@redhat.com> - 3.78-438
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Thu Apr 25 2019 Jitka Plesnikova <jplesnik@redhat.com> - 3.78-1
|
||||
- Upgrade to 3.78 as provided in perl-5.29.10
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.75-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Thu Aug 30 2018 Petr Pisar <ppisar@redhat.com> - 3.75-1
|
||||
- 3.75 bump
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.74-417
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Wed Jun 27 2018 Jitka Plesnikova <jplesnik@redhat.com> - 3.74-416
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Mon Feb 19 2018 Petr Pisar <ppisar@redhat.com> - 3.74-1
|
||||
- 3.74 bump
|
||||
|
||||
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.67-396
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.67-395
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.67-394
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Sat Jun 03 2017 Jitka Plesnikova <jplesnik@redhat.com> - 3.67-393
|
||||
- Perl 5.26 rebuild
|
||||
|
||||
* Thu May 11 2017 Petr Pisar <ppisar@redhat.com> - 3.67-1
|
||||
- Upgrade to 3.67 as provided in perl-5.25.12
|
||||
|
||||
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.63-367
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Wed Aug 03 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.63-366
|
||||
- Avoid loading optional modules from default . (CVE-2016-1238)
|
||||
|
||||
* Sat May 14 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.63-365
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Wed May 11 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.63-1
|
||||
- 3.63 bump in order to dual-live with perl 5.24
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.62-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Tue Jan 12 2016 Petr Pisar <ppisar@redhat.com> - 3.62-1
|
||||
- 3.62 bump
|
||||
|
||||
* Mon Jan 11 2016 Petr Pisar <ppisar@redhat.com> - 3.60-2
|
||||
- Fix CVE-2015-8607 (File::Spec::canonpath() loses tain) (bug #1297455)
|
||||
|
||||
* Thu Nov 19 2015 Petr Pisar <ppisar@redhat.com> - 3.60-1
|
||||
- 3.60 bump
|
||||
|
||||
* Mon Nov 16 2015 Petr Pisar <ppisar@redhat.com> - 3.59-1
|
||||
- 3.59 bump
|
||||
|
||||
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.56-346
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Thu Jun 04 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.56-345
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Wed Jun 03 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.56-2
|
||||
- Perl 5.22 rebuild
|
||||
|
||||
* Mon Apr 27 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.56-1
|
||||
- 3.56 bump in order to dual-live with Perl 5.22
|
||||
|
||||
* Tue Jan 13 2015 Petr Pisar <ppisar@redhat.com> - 3.47-311
|
||||
- Require constant module
|
||||
|
||||
* Wed Sep 03 2014 Jitka Plesnikova <jplesnik@redhat.com> - 3.47-310
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Tue Aug 26 2014 Jitka Plesnikova <jplesnik@redhat.com> - 3.47-4
|
||||
- Perl 5.20 rebuild
|
||||
|
||||
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.47-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.47-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Tue May 27 2014 Jitka Plesnikova <jplesnik@redhat.com> - 3.47-1
|
||||
- 3.47 bump
|
||||
|
||||
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.40-291
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Mon Jul 15 2013 Petr Pisar <ppisar@redhat.com> - 3.40-290
|
||||
- Increase release to favour standalone package
|
||||
|
||||
* Fri Jul 12 2013 Petr Pisar <ppisar@redhat.com> - 3.40-4
|
||||
- Link minimal build-root packages against libperl.so explicitly
|
||||
|
||||
* Fri Jul 12 2013 Petr Pisar <ppisar@redhat.com> - 3.40-3
|
||||
- Disable VMS test (bug #973713)
|
||||
|
||||
* Fri Jun 14 2013 Petr Pisar <ppisar@redhat.com> - 3.40-2
|
||||
- Do not distribute File::Spec::VMS (bug #973713)
|
||||
|
||||
* Mon Feb 04 2013 Petr Pisar <ppisar@redhat.com> - 3.40-1
|
||||
- 3.40 bump
|
||||
|
||||
* Tue Sep 18 2012 Petr Pisar <ppisar@redhat.com> - 3.39.01-1
|
||||
- 3.39_01 bump
|
||||
|
||||
* Wed Aug 15 2012 Petr Pisar <ppisar@redhat.com> - 3.33-8
|
||||
- Specify all dependencies
|
||||
|
||||
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.33-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Wed Jun 06 2012 Petr Pisar <ppisar@redhat.com> - 3.33-6
|
||||
- Perl 5.16 rebuild
|
||||
|
||||
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.33-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Mon Jul 25 2011 Petr Pisar <ppisar@redhat.com> - 3.33-4
|
||||
- RPM 4.9 dependency filtering added
|
||||
|
||||
* Mon Jun 20 2011 Marcela Mašláňová <mmaslano@redhat.com> - 3.33-3
|
||||
- Perl mass rebuild
|
||||
|
||||
* Sun May 29 2011 Ville Skyttä <ville.skytta@iki.fi> - 3.33-2
|
||||
- Own the %%{perl_vendorarch}/File dir.
|
||||
|
||||
* Mon Feb 28 2011 Marcela Mašláňová <mmaslano@redhat.com> 3.33-1
|
||||
- Specfile autogenerated by cpanspec 1.79.
|
Loading…
Reference in new issue