summaryrefslogtreecommitdiff
path: root/dist/Cwd/lib
Commit message (Collapse)AuthorAgeFilesLines
* File::Spec::Unix: Fix pod linkFather Chrysostomos2012-05-261-1/+2
|
* Increase $File::Spec::Unix::VERSION to 3.39_03Father Chrysostomos2012-05-261-1/+1
|
* [perl #111510] File::Spec::UNIX->abs2rel() gets it wrong with ".." componentsVolker Schatz2012-05-261-23/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | File::Spec::UNIX->abs2rel() returns wrong results in a few cases, most of which involve ".." path components. To reproduce, paste the following test cases into: perl -MFile::Spec::Unix -n -e 'print File::Spec::Unix->abs2rel(split),"\n";' ../foo bar/bat bar/bat ../foo foo bar/../bat . . / / Correct results when run at /home/me and no symlinks in base path: ../../../foo ../me/bar/bat ../foo . . Results for File::Spec::Unix from PathTols 3.33: ../../foo ../bar/bat ../../../foo / / The error in the first test case is due to an optimisation applied when both arguments are relative paths, which prepends "/" instead of the current directory. "/../" is then converted to "/" by canonpath(). I have replaced this optimisation by a single call to _cwd() in the following patch. This also fixes the fourth test case. Besides, I have moved checks which make sense only for absolute path arguments to the first branch of the if. (hunk @@ -366,28 +367,32 @@) The error in the last test case arises because a root dir $base is treated specially, and catdir() does not work well for fewer than two path components. The first added line in the following patch catches that. As regards the second and third test case, they can be solved without consulting the filesystem only if no symlinks are involved. Whereever $path contains .. components, the corresponding directory has to be descended into. The following patch does this. (hunk @@ -395,19 +400,39 @@) It can be impossible for abs2rel() to work correctly without looking at the filesystem if $base contains symlinks. I understand from the documentation that the File::Spec modules are not meant to consult the filesystem. Even though the docs state that abs2rel() does not consult the filesystem, the implications could perhaps be made clearer, for example like this: (hunk @@ -352,9 +352,10 @@)
* Bump Cwd, File::Spec version.Craig A. Berry2012-02-179-9/+9
|
* Rethink EFS in File::Spec::VMS.Craig A. Berry2012-02-171-550/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ae5a807c7dcf made extensive changes to File::Spec on VMS, nominally to support Extended Filename Syntax (EFS). The idea behind the changes was that with EFS in effect, the File::Spec functions can guess at whether incoming file specifications are in Unix format or VMS format and provide output in the same format as the input. This principle is in some ways desireable in that round-trip conversions do have the potential to lose information and it sounds like a nice bit of DWIMmery. However, in practice it leads to its being a crap shoot what format you'll get back, and in some really important cases (such as MakeMaker's assembly of paths for external build utilities) you really have to know which syntax you have and you may really have to have native syntax, which has always been the default. It's also impossible to guess in some of the more common use cases, such as a splitdir followed by catdir, where catdir has no way of knowing what delimiters were discarded by splitdir, and thus no hints about what syntax the original path was in. Plus there were numerous problems with the implementation, which broke the build when EFS was in effect and didn't pass very many of its own tests (which it had inadvertently disabled, since fixed in 06ecd9c7d6f). Plus EFS isn't primarily about Unix syntax versus VMS syntax but about allowing additional characters, such as multiple dots in filenames or any dots in directory names. The only real difference for the File::Spec functions should be that they now need to avoid splitting on traditional delimiters if those characters are escaped with the caret (^) character. So revert most of ae5a807c7dcf, and sprinkle negative look-behind assertions liberally so that we correctly recognize when traditional delimiters have been escaped and are not being used as delimiters. The partial support for Unix reporting mode (where we explicitly request that output file specifications are in Unix format regardless of input format) is left in place. It's somewhat less partial than it was, but still incomplete.
* Use tr/_// instead of eval $VERSIONSteffen Mueller2011-12-209-18/+18
| | | | | | Also bumps the version of all contained modules to 3.39_01, which is the version of a new PathTools CPAN release (and the code is in sync with this commit).
* [rt.cpan.org #45885] File::Spec: Don’t use tainted tmpdir in 5.6Father Chrysostomos2011-12-161-2/+5
| | | | | | Perl 5.6 doesn’t have ${^TAINT}, so the taint check in File::Spec::Unix->_tmpdir was skipped. This commit adds a taint check using eval { eval $safe_substring } for 5.6.
* Keep verbatim pod in File::VMS/Win32 within 80 colsFather Chrysostomos2011-08-092-4/+6
|
* Keep verbatim pod in File::Mac/Unix within 80 colsFather Chrysostomos2011-08-092-12/+18
|
* Keep verbatim pod in File::Spec within 80 colsFather Chrysostomos2011-08-091-3/+5
|
* dist/Cwd/lib/File/Spec/Win32.pm: Fix broken linkKarl Williamson2011-05-181-2/+2
|
* Bumped Cwd and File::Spec versions for release per cmpVERSION.plJesse Vincent2011-01-202-2/+2
|
* Fix typos (spelling errors) in dist/*Peter J. Acklam) (via RT2011-01-072-7/+7
| | | | | | | | | # New Ticket Created by (Peter J. Acklam) # Please include the string: [perl #81888] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=81888 > Signed-off-by: Abigail <abigail@abigail.be>
* Upgrade PathTools to 3.33Steffen Mueller2010-09-209-9/+9
| | | | | This is just a version bump to make the versions in blead and CPAN match.
* Upgrade PathTools from version 3.31_02 to 3.32Florian Ragwitz2010-09-209-10/+11
|
* Move PathTools from cpan/ to dist/Florian Ragwitz2010-07-249-0/+3841