[Python-Dev] Case sensitive import.

Tim Peters tim.one@home.com
Fri, 2 Feb 2001 22:38:42 -0500


[Steven D. Majewski]
> HFS+ filesystem on MacOSX is case preserving but case insensitive,

Same as Windows.

> which means that open("File") succeeds for any of:
> "file","File","FILE" ...

Ditto.

> The dirent functions verifies that there is in fact a "File" in
> that directory, and if not continues the search.

Which is what Jeremy said Guido is "strongly opposed to":

    His explanation is that imports ought to work whether all
    the there are multiple directories on sys.path or all the
    files are copied into a single directory.  Obviously on
    file systems like HFS+, it would be impossible to have
    FCNTL.py and fcntl.py be in the same directory.

In effect, you wrote your own check_case under a different name that--
unlike all other versions of check_case --ignores case mismatches.

As I said before, I don't care for the current rules (and find_module has
become such an #ifdef'ed minefield I'm not sure it's possible to tell what
it does *anywhere* anymore), but there's no difference here between Windows
filesystems and HFS+, so for the sake of basic sanity they must work the
same way.

So a retroactive -1 on this last-second patch -- and a waaaaay
retroactive -1 on Python's behavior on Windows too.