Adding optional setuptools to setup.py

Hi,

I just sent a similar e-mail to the ipython-def mailing list:
I am not a big proponent of setuptools, but I must admit they have really
nice feature for developpers: "python setup.py develop", which does the
Python equivalent of a symlink during the install so that it uses the
source code from the check out to run.

I would like to add these lines to the setup.py:

"""
try:
    from setuptools import setup, find_packages
except ImportError:
    pass
"""

I cannot see waht harm this can do, and I can see the benefit: I install
an svn checkout of MPL with:

"""
sudo python setup.py develop --prefix /usr/local
"""

and then maintain this check out by doing "svn up", and this even in
windows.

What do you think?

Ga�l

If we're going to use setuptools (actually already required for Python 2.3), I think we need to do it completely and not optionally -- otherwise users will start to depend on its features, which simply won't be there in some cases. In particular, I suspect they will make use of the dependency resolution mechanisms. As I suggested on the ipython-dev list this will do what you want without requiring a change to setup.py:

python -c "import setuptools; execfile('setup.py')" develop

Gael Varoquaux wrote:

···

Hi,

I just sent a similar e-mail to the ipython-def mailing list:
I am not a big proponent of setuptools, but I must admit they have really
nice feature for developpers: "python setup.py develop", which does the
Python equivalent of a symlink during the install so that it uses the
source code from the check out to run.

I would like to add these lines to the setup.py:

"""
try:
    from setuptools import setup, find_packages
except ImportError:
    pass
"""

I cannot see waht harm this can do, and I can see the benefit: I install
an svn checkout of MPL with:

"""
sudo python setup.py develop --prefix /usr/local
"""

and then maintain this check out by doing "svn up", and this even in
windows.

What do you think?

Gaël

-------------------------------------------------------------------------
SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

OK, I'll settle for this.

Ga�l

···

On Wed, Dec 12, 2007 at 09:32:04AM -0800, Andrew Straw wrote:

If we're going to use setuptools (actually already required for Python
2.3), I think we need to do it completely and not optionally --
otherwise users will start to depend on its features, which simply won't
be there in some cases. In particular, I suspect they will make use of
the dependency resolution mechanisms. As I suggested on the ipython-dev
list this will do what you want without requiring a change to setup.py:

python -c "import setuptools; execfile('setup.py')" develop

We added "setupegg.py" a long time ago which does exactly this. The
line below would then be:

python setupegg.py develop

···

On Dec 12, 2007 12:35 PM, Gael Varoquaux <gael.varoquaux@...427...> wrote:

On Wed, Dec 12, 2007 at 09:32:04AM -0800, Andrew Straw wrote:
> If we're going to use setuptools (actually already required for Python
> 2.3), I think we need to do it completely and not optionally --
> otherwise users will start to depend on its features, which simply won't
> be there in some cases. In particular, I suspect they will make use of
> the dependency resolution mechanisms. As I suggested on the ipython-dev
> list this will do what you want without requiring a change to setup.py:

> python -c "import setuptools; execfile('setup.py')" develop

OK, I'll settle for this.

Gaël

-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace

_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Sorry. I am being really brain dead today.

Thanks,

Ga�l

···

On Wed, Dec 12, 2007 at 01:40:38PM -0500, Charlie Moad wrote:

We added "setupegg.py" a long time ago which does exactly this. The
line below would then be:

python setupegg.py develop