Subject: | fix for Archive::Zip related test failures due to symlinks |
Many of the current CPAN test failures have this error text (links below):
error: Could not extract /tmp/par4D_mq/blib/META.yml safely: /tmp is an existing symbolic link
One simple fix is to ensure _unzip_to_tmpdir (or perhaps _unzip) uses a path with symlinks resolved.
For example in _unzip_to_tmpdir:
...
my $path = $tmpdir;
$path = File::Spec->catdir($tmpdir, $args{subdir}) if defined $args{subdir};
### add these two lines
require Cwd;
$path = Cwd::realpath($path);
_unzip(dist => $dist, path => $path);
...
Tested on macos 10.15.
Let me know if you'd prefer a patch file, and whether it should be in _unzip_to_tmpdir or more localised within _unzip.
Shawn.
CPAN testers links:
https://www.cpantesters.org/cpan/report/07bf1b62-1c64-11e9-98a9-a7ab3e5edb37
https://www.cpantesters.org/cpan/report/b9d7c082-7a9d-11e9-81af-f28ed51e9e84
https://www.cpantesters.org/cpan/report/9f5989e4-817c-11e9-b3ce-75fdc00df68b