|Subject:||Add kwalitee metric for archive file ordering|
Most CPAN distribution archives will ultimately be extracted with the Archive::Extract module. This module, for complex reasons, has a bug whereby it can get confused when the first file contained in the archive is NOT in the lowest common root directory. For example, Archive::Extract expects an ordering like the following. foo/bar/Makefile.PL <--- Expected to be first foo/bar/baz/b.txt foo/bar/tro/c.txt This will allow it to say that the archive was extracted at foo/bar because it naively assumes the first file is at the root. If the ordering looks like this... foo/bar/baz/b.txt foo/bar/Makefile.PL foo/bar/tro/c.txt Then Archive::Extract gets somewhat confused, and considers the root directory to be foo/bar/baz, incorrectly. Fixing this is apparently trickier than it may appear, and in any case won't be fixed for default installations on older Perls. As a result, I suggest a kwalitee point that checks that the first file in the list of file names returned for the archive is in the lowest-common-subdirectory for the archive.