[IPython-dev] Distribution via "Easy Install"?

Robert Kern robert.kern at gmail.com
Thu Dec 22 21:09:23 CST 2005


Fernando Perez wrote:
> Robert Kern wrote:
> 
>>Fernando Perez wrote:
> 
>>>Robert Kern wrote:
> 
>>>Should I distribute the .egg in this 
>>>manner as well at ipython/dist?  I'm perfectly happy installing setuptools and 
>>>adding the above to my release script, but I don't know if that's the 
>>>preferred mechanism.
>>
>>Since ipython is pure Python, yes, providing an egg in addition to the source
>>tarball would be great. It won't have the documentation, though, unless if it is
>>included as package_data.
> 
> Mmh, this would force me to jump to py2.4, it seems:
> 
> abdul[distutils]> grep package_data /usr/lib/python2.3/distutils/*.py
> abdul[distutils]> grep package_data /usr/lib/python2.4/distutils/*.py
> /usr/lib/python2.4/distutils/dist.py:        self.package_data = {}
> 
> otherwise the package_data keyword will bork 2.2-2.3 installs.  I guess I can 
> build the dict of options dynamically, and then call
> 
> setup(**args)
> 
> instead.  Ugly, but it will do the job.  Is it worth it?  What else does it 
> buy us?

setuptools backports package_data to 2.3 as well. Since eggs and setuptools only
work with 2.3+, you would only be building eggs for 2.3 and 2.4 in any case.

Actually, all package_data is is a convenient shortcut for what you do with
UserConfig/ already. You could just do that if you really want to package the
documentation inside the egg.

>>A link to http://ipython.scipy.org/dist/ is sufficient. easy_install can
>>screenscrape that page just fine. In fact, this works right now:
>>
>>[src]$ easy_install -f http://ipython.scipy.org/dist ipython
> 
> [...]
> 
> nice.  How is that link provided to setuptools?  Is it just a matter of 
> passing in the download_url keyword to the normal setup() call, or does 
> setuptools need the info elsewhere?
> 
> I guess what I'm asking is: given that easy_install in your example already 
> works, how much exactly should I do to provide 'good citizen' egg support? 
> Would the following be enough?
> 
> 1. Adding download_url='http://ipython.scipy.org/dist' to setup.py.
> 
> 2. Installing setuptools on my system, so that I can build an egg and put it 
> up at /dist/ when new releases are made.

Yes. Anything else might be slightly more convenient, but probably not worth
your time.

-- 
Robert Kern
robert.kern at gmail.com

"In the fields of hell where the grass grows high
 Are the graves of dreams allowed to die."
  -- Richard Harter




More information about the IPython-dev mailing list