Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the PathTools CPAN distribution.

Report information
The Basics

Nobody in particular
SREZIC [...]

(no value)
Broken in:
Fixed in:
(no value)

Subject: realpath: different behavior on non-existent directory between Unix and Windows
The following test script behaves differently on Windows and Unix (e.g. Linux, FreeBSD): #!/usr/bin/perl -w use strict; use Test::More tests => 2; use Cwd 'realpath'; ok defined realpath '.'; ok defined realpath 'thispathdoesnotexist'; __END__ On Unix the test script passes. On Windows it fails with: thispathdoesnotexist: No such file or directory at t/cwd.t line 9. I would expect that this behaves the same on both systems. The 2nd best solution would be some documentation on the different behavior.
I also just ran into this issue and have some more observations. On *nix: ~# perl -e 'use Cwd; print Cwd::realpath("notexist")."\n"' /root/notexist ~# perl -e 'use Cwd; print Cwd::realpath("/notexist")."\n"' /notexist On Windows: C:\Users\Mithaldu>perl -e "use Cwd;Cwd::realpath('c:\\notexist')" c:\notexist: No such file or directory at -e line 1. C:\Users\Mithaldu>perl -e "use Cwd;Cwd::realpath('notexist')" notexist: No such file or directory at -e line 1. Thoughts regarding which way to resolve this: 1. The documentation does not say anything about exceptions. 2. It does however mention fast_abs_path as being a "potentially more dangerous" version of abs_path, and claims realpath is a synonym for abs_path. So possibly abs_path and realpath may be considered candidates for exceptions. 3. Adding an exception to the linux version would break a lot of code. 4. I did however find this difference because the exception triggered on windows correctly pointed out a bug that went ignored on *nix.
Another data point from mst: The docs only say that symlinks, '.' and '..' are resolved, but in a nonexistant file neither are present, so nothing has to be resolved and thus nothing done.
This problem has also been reported in the Perl 5 bug queue:

This service runs on Request Tracker, is sponsored by The Perl Foundation, and maintained by Best Practical Solutions.

Please report any issues with to