Skip Menu |

This queue is for tickets about the File-Path CPAN distribution.

Report information
The Basics
Id: 121248
Status: open
Priority: 0/
Queue: File-Path

People
Owner: Nobody in particular
Requestors: jkeenan [...] cpan.org
Cc: jd [...] cpanel.net
AdminCc:

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



CC: jd [...] cpanel.net
Subject: Cygwin: Many test failures since File-Path 2.12
In the course of a conversation with John Lightsey today, my attention was called to the state of File-Path on Cygwin. The news was not good. ##### CPANtesters results for File-Path on Cygwin # v2.11: Jul 17 2015 http://matrix.cpantesters.org/?dist=File-Path%202.11 # v2.11: Note PASS on cygwin http://matrix.cpantesters.org/?dist=File-Path%202.11;os=cygwin;perl=5.22.0;reports=1 # v2.12: Oct 09 2015 http://matrix.cpantesters.org/?dist=File-Path%202.12 # V2.12: mostly FAIL on cygwin http://matrix.cpantesters.org/?dist=File-Path%202.12;os=cygwin;reports=1 # diff -w between v2.11 and v2.12 http://search.cpan.org/diff?from=File-Path-2.11&to=File-Path-2.12&w=1 # Note: Almost all the Cygwin FAILs are from one tester: pjacklam at online. However, almost all the PASSes are from the very same tester! The PASSes appear to be from an earlier period, mostly 2015-10-15 thru 2016-05-28. The FAILs are from a later period, mostly 2016-11-27 thru 2017-03-08. # Failures on perl-5.24.1 http://www.cpantesters.org/cpan/report/df05e5be-6ea2-1014-8b61-675bb79256ca # cygwin http://www.cpantesters.org/cpan/report/c26c7b8a-6ea2-1014-8b61-675bb79256ca # cygwin-thread http://www.cpantesters.org/cpan/report/85886b46-6e47-1014-8d94-874cb79256ca # cygwin-thread-multi http://www.cpantesters.org/cpan/report/b990fe57-6e46-1014-973b-df44b79256ca # cygwin-multi # v2.12_002: Mar 12 2017 # We have exactly 1 report on Cygwin for v2.12_002, a PASS http://matrix.cpantesters.org/?dist=File-Path%202.12_002;os=cygwin;perl=5.22.2;reports=1 ##### We will need to investigate the proliferation of test failures on this platform between these two versions. We will have to ask questions like: * Are the additional tests we wrote for 2.12 *appropriate* for Cygwin? * If not appropriate, what would be better tests? * If appropriate, are we exposing defects in the source code that were there all along -- or regressions introduced between 2.11 and 2.13. Thank you very much. Jim Keenan
From: lightsey [...] cpan.org
These cygwin failures seem to flap based on the underlying filesystem. With NTFS filesystems, cygwin passes, with VFAT filesystems, cygwin fails. An easy way to reproduce this problem is to just format a USB stick in VFAT and run the tests from there.
On Thu Apr 20 12:36:08 2017, lightsey@cpan.org wrote: Show quoted text
> These cygwin failures seem to flap based on the underlying filesystem. > With NTFS filesystems, cygwin passes, with VFAT filesystems, cygwin > fails. > > An easy way to reproduce this problem is to just format a USB stick in > VFAT and run the tests from there.
Where in the smoke test report do you see the filesystem? Do you have any idea as to the scope of this problem? For instance, ... * Would it apply to *any* operating system -- not just Cygwin -- on a VFAT filesystem? * Would it apply to Perl code (other than File::Path) -- e.g., the core distribution -- on Cygwin on a VFAT filesystem? * Would it apply to Perl code (other than File::Path) -- e.g., the core distribution -- on any OS on a VFAT filesystem? Cygwin, it appears, is not getting too much love in the Perl world right now. We have only one person submitting smoke tests of the core distribution -- and those reports are consistently showing large numbers of test failures. See, e.g., http://perl.develop-help.com/raw/?id=198800. (I haven't used Cygwin in at least 15 years, so I don't have much to add.) Thank you very much. Jim Keenan
From: lightsey [...] cpan.org
On Thu Apr 20 18:15:15 2017, JKEENAN wrote: Show quoted text
> On Thu Apr 20 12:36:08 2017, lightsey@cpan.org wrote:
> > These cygwin failures seem to flap based on the underlying > > filesystem. > > With NTFS filesystems, cygwin passes, with VFAT filesystems, cygwin > > fails. > > > > An easy way to reproduce this problem is to just format a USB stick > > in > > VFAT and run the tests from there.
> > Where in the smoke test report do you see the filesystem?
The only indication in the smoke test is the Windows version. The failures are simple to reproduce as I described though. Show quoted text
> > Do you have any idea as to the scope of this problem? For instance, > ... > > * Would it apply to *any* operating system -- not just Cygwin -- on a > VFAT filesystem?
Likely, but the same is probably true of all the special code for VMS filesystems. When you mount them under Linux the probably behave strangely as well. I don't think there's any reason to code defensively for a VFAT filesystem outside of a Win32 machine. I don't think I've ever seen a Perl unit test that attempted to factor that in. Show quoted text
> > * Would it apply to Perl code (other than File::Path) -- e.g., the > core distribution -- on Cygwin on a VFAT filesystem?
likely so. Core Perl already has support for detecting this and some of the unit tests factor in the behavior. Show quoted text
> > * Would it apply to Perl code (other than File::Path) -- e.g., the > core distribution -- on any OS on a VFAT filesystem?
Likely, but as I mentioned, it seems silly to try and protect against this on non-windows systems. I'll push a patch for this on github.