[Python-Dev] ImportError on no permission

"Martin v. Löwis" martin at v.loewis.de
Sun May 6 20:39:45 CEST 2007


> Now, why don't we change the semantics as follows: if a file with matching name
> exists (in import.c::find_module), but opening fails, ImportError is raised
> immediately with the concrete error message, and without trying the rest of
> sys.path. That shouldn't cause any working and sane setup to break, or did I
> overlook something obvious here?

I wonder how this would behave if a directory on sys.path was
unreadable. You might get an ImportError on *any* import, as
it tries the unreadable directory first, gets a permission error,
and immediately aborts.

Now, I think it is quite possible that you have inaccessible
directories on sys.path, e.g. when you inherit PYTHONPATH from
a parent process.

So I would rather let importing proceed, and add a note to the
error message that some files could not be read.

Regards,
Martin


More information about the Python-Dev mailing list