[Distutils] The problem with Setuptools on Python 3.
Lennart Regebro
regebro at gmail.com
Mon Apr 20 19:13:41 CEST 2009
On Mon, Apr 20, 2009 at 19:02, P.J. Eby <pje at telecommunity.com> wrote:
> I thought you couldn't import setuptools in setup3.py, for all the reasons
> you just described?
Yes? And then you draw some sort of conclusion of this that totally escapes me.
>> Why do I need setup.py?
>
> To define the core entry points, basically. These are really bootstrapped
> from the existing entry_points.txt (which is why it's in SVN), but they need
> to be regenerated at egg_info/bdist_egg/install time to match the current
> Python version.
OK. And why are they needed to install and test setuptools?
> Apart from that, I believe setuptools only uses itself for finding its own
> packages (including data) and manifest building (i.e. finding files that are
> under SVN control).
Sure, but that's easily avoided.
> So I suppose that if you dropped the use of find_packages(), you could make
> a setup.py that would let you run distutils commands on the code base, I
> just don't see how you'd get any setuptools-level commands to work properly
> without setuptools being imported first.
They won't work. The question is why they need to work.
> None of this makes setuptools any less reliant on itself for testing and
> building, though, since the core entry points have to exist in order for
> commands to be found, options to be verified, etc.
Which still doesn't really answer the question: Why setuptools need to
rely on setuptools.
> Because distutils doesn't have an egg_info command
I've already mentioned that getting rid of the setuptools dependency
on itself means you can't build setuptools eggs. But I've also pointed
out that I don't understand why they would be needed. For all other
packages it's recommended that only source distributions are done
unless you have c-extensions. Why is setuptools an exception?
> or SVN-based manifest building (for making sdists).
Well, we can survive without that, as far as I can see.
--
Lennart Regebro: Python, Zope, Plone, Grok
http://regebro.wordpress.com/
+33 661 58 14 64
More information about the Distutils-SIG
mailing list