Martin v. Löwis <mar...@v.loewis.de> added the comment:

> First, I don't understand why we need to check both "foo.so" and
> "foomodule.so".

Because we always did, i.e. changing it now may break backwards compatibility. 
Now, as for why we always had *module.so also: it may be that calling an 
extension module foo.so might not be feasible if it needs to link with a system 
library called foo.so (rather than libfoo.so). 

I don't know how serious this problem is in practice - we may consider 
deprecating-then-removing *module.so from the import machinery.

As for checking both "foo.so" and "foo.cpython-32m.so": that's for backwards 
compatibility also. Existing build processes may produce foo.so, as they did in 
previous Python versions (in particular, if they are not based on distutils, 
but, say, make). Unfortunately, PEP 3149 did not specify a deprecation 
scheduling. You could ask Barry - I suppose that was an oversight, and not 
actually deliberate.

Of course, with .cpython-32m.so being present, removing *module.so would be 
easy enough, except again for breaking existing projects which might use that 
name.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue11051>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to