[Distutils] RFC : PEP 376 - egg.info
Tarek Ziadé
ziade.tarek at gmail.com
Thu Apr 30 16:48:32 CEST 2009
On Thu, Apr 30, 2009 at 4:34 PM, David Lyon <david.lyon at preisshare.net> wrote:
> Hi Tarek,
>
> On Thu, 30 Apr 2009 15:50:19 +0200, Tarek Ziadé <ziade.tarek at gmail.com>
> wrote:
>>> But during package installation, this information will be written
>>> into a .PTH file somewhere along the python path...
>>
>> No, you just have a list of relative paths to installed package there
>> that's it.
>
> It means the same thing.
>
No, you don't have the exaustive list of the files installed.
>> You don't even know what packages were installed for your project
>> unless you digg into the source distribution.
>
> Yes I do...
>
> I have the following code:
>
> --code-------
>
> import pkg_resources
>
> ws = pkg_resources.WorkingSet()
>
> for i in ws:
> s = str(i)
> print s
>
> --end code---
That doesn't give you a list of installed package for your *project*.
Remember that a Distutils project (one setup.py file) can install
several packages in your python, and depending on the way you install(ed)
it, you might not be abe to get back your packages.
Try it yourself, here's such a package:
create a dir with a setup.py file :
"""
from distutils.core import setup
setup(name='ok', packages=['one', 'two'])
"""
now create a "one" subdirectory with a __init__ file in it, same for "two"
next, run :
$ python setup.py install
Now tell me how you know, looking at your Python installation
(site-packages), that "ok" installed "one" and "two"'... ;)
Tarek
--
Tarek Ziadé | http://ziade.org
More information about the Distutils-SIG
mailing list