[Distutils] Package install failures in 2.6.3 - setuptools vs Distribute
Ned Deily
nad at acm.org
Sat Oct 3 23:17:50 CEST 2009
In article
<94bdd2610910031309w61d72dcdo8faab4964bf67551 at mail.gmail.com>,
Tarek Ziadé <ziade.tarek at gmail.com> wrote:
> On Sat, Oct 3, 2009 at 7:00 PM, Ned Deily <nad at acm.org> wrote:
> > This is not a good experience for users. Unless I'm missing something
> > (and I hope I am), this issue really can't be hand-waved away.
> Make sure to understand that the way setuptools patches distutils
> makes it very sensible to any change made in distutils, even backward
> compatibles ones like in the 2.6 branch.
>
> But I won't freeze distutils work because of that, and distutils
> is not to be blamed if setuptools is broken, neither Python.
I understand very well the issues that lead to the establishment of the
Distribute project and I think it is great that you have taken on this -
at times - pretty thankless effort. So thank you for doing so. I'm not
trying to point fingers here; if I were, I'd start with me not
recognizing this issue before 2.6.3 went out the door. I'm simply
trying to put myself in the place of the "naive user", the target
audience of easy_install. And users, naive or otherwise, don't know or
care who is to blame, they'll just know that something about using
Python 2.6.3 is broken.
> So it's not a good experience for the users that's true, and we can
> try to enhance
> the Distribute documentation to help them as you suggested, and we are
> already helping
> because we've forked to try to provide some solutions.
>
> But there's nothing else I can think of to help people. My advice would be
> that
> the projects that use setuptools just switch asap on distribute, which
> is actively
> maintained.
That's fine but they're not going to know about Distribute unless they
stumble across discussions like this. And it's not their usage of
setuptools that is the problem here. I think most of them would view
this (rightly or wrongly) as: "Without warning, my package broke on a
bug fix release of Python because of changes in Python." One solution
*is* for the maintainers of affected packages to change their packaging
and documentation to explicitly require Distribute. That's not going to
happen overnight, of course.
So is it possible to get a better idea of what the impact of this
problem is going to be? I've already identified one real-world use
case: (1) OS X users who install 2.6.3 from python.org and who need to
install certain packages (lxml, appscript, zope-interfaces, others?).
On what other platforms is this likely to be a problem? Windows *?
Linuxes? If that can be identified, if necessary the distributors of
Python installers can be informed so they can inform their users (note,
that python.org is itself a distributor of Python installers). I don't
have the expertise to make an assessment of that.
Is it possible to get a better idea of what packages might be affected,
i.e. what is it that these apps are using in their setup.py, or
elsewhere, that causes the problem to appear? If so, it would be easier
to warn the affected developers and users.
Certainly some kind of warning could be added to the python.org 2.6.3
download pages and sent out of the various news lists. Perhaps a note
about 2.6.3 and 3.x could be added to the original setuptools /
easy_install PyPi page.
I guess the bottom line question is: Is there anything more pro-active
that should be done?
--
Ned Deily,
nad at acm.org
More information about the Distutils-SIG
mailing list