Skip Menu |

This queue is for tickets about the Class-Throwable CPAN distribution.

Report information
The Basics
Id: 36835
Status: resolved
Priority: 0/
Queue: Class-Throwable

People
Owner: Nobody in particular
Requestors: wdhawes [...] gmail.com (daily)
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.10
Fixed in: (no value)



Subject: Follow up to "fails on Win32" (http://rt.cpan.org/Ticket/Display.html?id=28020)
As the author of http://rt.cpan.org/Ticket/Display.html?id=28020 reported, tests fail on Win32 wrt the path separator. Having investigated this a bit further, the path separator check based on $^O eq 'MSWin32' is not the problem. When running under prove, all tests pass. The cause appears to be some weirdness is going on when running under nmake/dmake (verified with both), and therefore the cpan shell too. Under these conditions the "expected" path separator magically changes back to "/", causing the tests to fail. If we can avoid setting the separator when running under a make binary on Win32, the tests should pass. Not sure how to go about reliably detecting this. One possibility might be $seperator = "\\" if $^O eq 'MSWin32' && ! exists $ENV{MAKEFLAGS}; as MAKEFLAGS seems to be the only difference in %ENV. I don't know if you could depend on that though. Another possibility is using the value in $0, as it contains a path complete with separator that changes depending whether you are running under a make binary ("/") or via prove ("\"). This could be a more workable solution IMO. HTH, Will
solved in 0.11 -- kmx