csjewell ([personal profile] csjewell) wrote2011-06-22 06:49 am
Entry tags:

Problems with case...

One of the problems I've been facing lately is because of Windows' combination of case-preservation and case-insensitivity in file names, specifically dealing with the 'version' and 'Version::Requirements' modules which are both required for ExtUtils::MakeMaker nowadays.

You end up with perl/lib/version/Requirements.pm as a filename, or perl/lib/Version/vpp.pm and vxs.pm - usually the first one.

(in retrospect, Version::Requirements was a bad name for that module for exactly this reason - but if you come from a Unix background, it's not something you think of when naming your modules!)

I need to use the development version in order to get MYMETA files, which I plan to start using soon, so don't say 'The current release version doesn't use Version::Requirements, so you could use it!' That's just delaying the problem.

The fact is that an MSI will throw warnings when creating an installer that would install two files with names that would be the same, given Windows' file name semantics - and rightfully so. So creating builds that install the correct filename is now becoming a problem that I have to solve. And yes, this is delaying 5.12.4 and 5.14.x builds. I'm working on this as quickly as I can, given the other demands on my time. I think I have it solved now, and am running a test 5.12.4 x64 build right now. Then I'll start in on 5.14.1.

I have had a few people contact me in response to my request for help last week on FLOSS Weekly. If I haven't contacted you back yet, don't assume I've forgotten about you - I haven't. The same reasons for needing the help are the reasons I haven't contacted you back yet (that and I need to get a little more infrastructure written and in place!) I'll get to you soon!

frustrating :(

[identity profile] rjbs.manxome.org 2011-06-22 09:30 pm (UTC)(link)
This came up on p5p, and we discussed the potential conflict, and it was agreed at the time that the only real conflict was x.pm and X.pm, not that directory names on the way there would matter on a case-insensitive FS. I guess no Win32 savvy people kicked in -- then or during much of 5.13. This would have been much easier to sort out *before* 5.14.0 was released.

Is there a way to help get this kind of problem found automatically?