On Oct 3, 2007, at 5:20 PM, Phillip J. Eby wrote:

>     del sys.modules['pkg_resources']
>
> after upgrading setuptools, as long as it wasn't there to start with.

There's something about this that I don't understand.  How is  
deleting the name from sys.modules different from reloading it, which  
as you already explained [1] is not going to work?

I can think of two approaches that will work for python >= 2.3:

1.  Import setuptools to get a copy of its __version__ attribute,  
import pkg_resources to use its parse_version() function, then del  
them from sys.modules.  (As above, I don't understand how deleting  
them from sys.modules and then importing them is different from  
reloading them.)

2.  Use os.system() instead of subprocess() to get the version of the  
installed setuptools, include a copy of the parse_version() function  
from pkg_resources.

The second approach seems clean and robust to me, and I would be  
happy to submit a patch that does it if you are interested in seeing  
one.

Regards,

Zooko

[1] http://mail.python.org/pipermail/distutils-sig/2007-September/ 
008309.html


_______________________________________________
Distutils-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to