How to force installing setuptools instead of distribute ?
Hi, Ubuntu Lucid uses distribute instead of setuptools, and I cannot manage to use setuptools with virtualenv because of this. I upgraded to the last version of virtualenv, which claims to install setuptools by default, but I still get distribute instead, and I would guess this is because of Ubuntu using distribute, but who knows.... Is there a simple way to force virtualenv to install setuptools (the PJE version, *not* the distribute fork) ? cheers, David
Hello,
Ubuntu Lucid uses distribute instead of setuptools, and I cannot manage to use setuptools with virtualenv because of this. I upgraded to the last version of virtualenv, which claims to install setuptools by default, but I still get distribute instead, and I would guess this is because of Ubuntu using distribute, but who knows....
Is there a simple way to force virtualenv to install setuptools (the PJE version, *not* the distribute fork) ?
There are two reasons I'd recommend you to use virtualenv over distribute :- 1. Setuptools is no longer being maintained. 2. Distribute is Py3k compatible while setuptools is not. On the event that virtualenv gets ported to Py3k, it will be using distribute and not setuptools. Is there any particular reason you wish to use setuptools? Zubin
On Thu, Jul 1, 2010 at 1:15 PM, Zubin Mithra
Is there any particular reason you wish to use setuptools?
Distribute broke basic features of easy_install, which makes it useless for my case (see for example #142). Those are fixed in setuptools. Also, as a rule, I like to be in control of what I use as a programmer if I wish so, and the whole business of distribute claiming to be setuptools is really obnoxious. I can't understand how the community "allowed" distribute to take over setuptools like it does. David
Distribute broke basic features of easy_install, which makes it useless for my case (see for example #142). Is that http://bitbucket.org/tarek/distribute/issue/142 ? IIUC, distribute wanted to be a superset of setuptools, so bug fixes in setuptools are supposed to go into distribute too. I’m not sure distribute will still have the same momentum though, since we’re in the
Also, as a rule, I like to be in control of what I use as a programmer if I wish so, and the whole business of distribute claiming to be setuptools is really obnoxious. You’re perfectly entitled to do that. distribute does provide setuptools, so it seems normal that it would say so. (Had Python a
Hello [David] process of taking good ideas out of it and adding them to distutils2 to make a cleaner base for distribution (package) management in Python: see http://tarekziade.wordpress.com/2010/03/03/the-fate-of-distutils-pycon-summi... package manager, distribute would “provide” the setuptools package while still allowing people to choose between the two implementations. I think it was not feasible.)
I can't understand how the community "allowed" distribute to take over setuptools like it does. Well, probably because they wanted to use a version with more bugs fixed and new features (e.g. 3.x support).
Kind regards
On Thu, Jul 1, 2010 at 2:55 PM, Éric Araujo
Hello
Distribute broke basic features of easy_install, which makes it useless for my case (see for example #142). Is that http://bitbucket.org/tarek/distribute/issue/142 ? IIUC, distribute wanted to be a superset of setuptools, so bug fixes in setuptools are supposed to go into distribute too. I’m not sure distribute will still have the same momentum though, since we’re in the
[David] process of taking good ideas out of it and adding them to distutils2 to make a cleaner base for distribution (package) management in Python: see http://tarekziade.wordpress.com/2010/03/03/the-fate-of-distutils-pycon-summi...
Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
Also, as a rule, I like to be in control of what I use as a programmer if I wish so, and the whole business of distribute claiming to be setuptools is really obnoxious. You’re perfectly entitled to do that. distribute does provide setuptools, so it seems normal that it would say so. (Had Python a package manager, distribute would “provide” the setuptools package while still allowing people to choose between the two implementations. I think it was not feasible.)
If distribute were called distribute, it would have enabled people who want to use it to use it. But what's done is done :)
Well, probably because they wanted to use a version with more bugs fixed and new features (e.g. 3.x support).
Sure, it had to be done since so many packages depend on setuptools. I just hope that more care were taken in the whole situation, because those tools are so pervasive that even developers who don't use them have to support them (through virtualenv, easy_install, etc...). Setuptools already caused me a lot of trouble as a numpy/scipy maintainer, and distribute makes it even worse at the moment. David
On Thu, Jul 1, 2010 at 9:12 AM, David Cournapeau
Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
It's precisely because Ubuntu is a good distribution that they decided to switch to distribute to get the most active project in it. If a bugfix didn't make it in Distribute, that's not an issue with Ubuntu but a regression in Distribute we need to fix. So as I told you many time, if you want to help, add an issue in the tracker, or help us fixing this bug by providing a patch :)
Also, as a rule, I like to be in control of what I use as a programmer if I wish so, and the whole business of distribute claiming to be setuptools is really obnoxious.
And the whole business of setuptools claiming to be distutils in some places is really obnoxious too. And the fact that setuptools didn't evolve for two years, and was locked for maintenance was really obnoxious too. It's not an ideal situation but it helped.
If distribute were called distribute, it would have enabled people who want to use it to use it. But what's done is done :)
Not at all, using the same namespace was the only way to fix the bugs we had.
I just hope that more care were taken in the whole situation, because those tools are so pervasive that even developers who don't use them have to support them (through virtualenv, easy_install, etc...). Setuptools already caused me a lot of trouble as a numpy/scipy maintainer, and distribute makes it even worse at the moment.
We are trying to do our best, and again, I am inviting you to help us. Maybe we will be more responsible and take better care of things if we had you around :) Regards Tarek -- Tarek Ziadé | http://ziade.org
On Thu, Jul 1, 2010 at 10:50 AM, Tarek Ziadé
So as I told you many time, if you want to help, add an issue in the tracker, or help us fixing this bug by providing a patch :)
I am sorry about this, I didn't see that you did provide a patch for #142. I am lacking of time at this point, so I have added you in the bitbucket, so please could you push your fix ? We can ship a new release soon with this bug fix, and any other pending ones if there are some. Regards Tarek
On Thu, Jul 1, 2010 at 6:10 PM, Tarek Ziadé
On Thu, Jul 1, 2010 at 10:50 AM, Tarek Ziadé
wrote: [..] So as I told you many time, if you want to help, add an issue in the tracker, or help us fixing this bug by providing a patch :)
I am sorry about this, I didn't see that you did provide a patch for #142.
I am lacking of time at this point, so I have added you in the bitbucket, so please could you push your fix ?
I could, but I would rather not without someone reviewing it. I really don't know this code, I just copied from setuptools code. The pkg_resources code is so convoluted that I don't have any idea on how my patch works within the whole thing. David
On Thu, Jul 1, 2010 at 11:56 AM, David Cournapeau
On Thu, Jul 1, 2010 at 6:10 PM, Tarek Ziadé
wrote: On Thu, Jul 1, 2010 at 10:50 AM, Tarek Ziadé
wrote: [..] So as I told you many time, if you want to help, add an issue in the tracker, or help us fixing this bug by providing a patch :)
I am sorry about this, I didn't see that you did provide a patch for #142.
I am lacking of time at this point, so I have added you in the bitbucket, so please could you push your fix ?
I could, but I would rather not without someone reviewing it. I really don't know this code, I just copied from setuptools code. The pkg_resources code is so convoluted that I don't have any idea on how my patch works within the whole thing.
This bug should be pretty simple to reproduce in the test suite. If you can add a test that's great. In any case I'll have a look before I cut a release.
On Thu, Jul 1, 2010 at 5:50 PM, Tarek Ziadé
On Thu, Jul 1, 2010 at 9:12 AM, David Cournapeau
wrote: [..] Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
It's precisely because Ubuntu is a good distribution that they decided to switch to distribute to get the most active project in it.
If a bugfix didn't make it in Distribute, that's not an issue with Ubuntu but a regression in Distribute we need to fix.
So as I told you many time, if you want to help, add an issue in the tracker, or help us fixing this bug by providing a patch :)
Also, as a rule, I like to be in control of what I use as a programmer if I wish so, and the whole business of distribute claiming to be setuptools is really obnoxious.
And the whole business of setuptools claiming to be distutils in some places is really obnoxious too. And the fact that setuptools didn't evolve for two years, and was locked for maintenance was really obnoxious too.
It's not an ideal situation but it helped.
If distribute were called distribute, it would have enabled people who want to use it to use it. But what's done is done :)
Not at all, using the same namespace was the only way to fix the bugs we had.
This is obviously wrong: you could have kept the name distribute, and people who wanted to use distribute would do import distribute instead of import setuptools. Instead, everybody is forced against their will to use distribute instead of setuptools. The fact that setuptools started this awful trend is no justification for perpetuating it. David
On Jul 01, 2010, at 04:12 PM, David Cournapeau wrote:
Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
Please submit a bug report here: https://bugs.edge.launchpad.net/ubuntu/+source/python-virtualenv Feel free to assign it to me (barry) or just send me the bug # and I'll take a look at it. -Barry
On Fri, Jul 2, 2010 at 12:23 AM, Barry Warsaw
On Jul 01, 2010, at 04:12 PM, David Cournapeau wrote:
Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
Please submit a bug report here:
https://bugs.edge.launchpad.net/ubuntu/+source/python-virtualenv
Feel free to assign it to me (barry) or just send me the bug # and I'll take a look at it.
This is issue 142 on bitbucket (distribute fork on Tarek account), and there was a similar bug on setuptools issue tracker (submitted by Zooko as well), but cannot find it ATM. thanks for looking into this, David
On Jul 02, 2010, at 12:53 AM, David Cournapeau wrote:
On Fri, Jul 2, 2010 at 12:23 AM, Barry Warsaw
wrote: On Jul 01, 2010, at 04:12 PM, David Cournapeau wrote:
Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
Please submit a bug report here:
https://bugs.edge.launchpad.net/ubuntu/+source/python-virtualenv
Feel free to assign it to me (barry) or just send me the bug # and I'll take a look at it.
This is issue 142 on bitbucket (distribute fork on Tarek account), and there was a similar bug on setuptools issue tracker (submitted by Zooko as well), but cannot find it ATM.
thanks for looking into this,
Maybe it's just me, but I'm having a hard time understanding and reproducing this bug report on Ubuntu. Do you have a reproducible test case that I can use to see the problem? Substituting pywin32 for something actually installable on Ubuntu doesn't seem to exhibit the bug. -Barry
On Fri, Jul 2, 2010 at 3:30 AM, Barry Warsaw
On Jul 02, 2010, at 12:53 AM, David Cournapeau wrote:
On Fri, Jul 2, 2010 at 12:23 AM, Barry Warsaw
wrote: On Jul 01, 2010, at 04:12 PM, David Cournapeau wrote:
Hm, that's a bit different from my understanding, but that's a bit irresponsible of Ubuntu to provide distribute if it does not get at least the bug fixes which go into setuptools. Maybe there is a miscommunication here, dunno. I thought the point of distribute was to get bug fixes that setuptools maintainers did not take care of.
Please submit a bug report here:
https://bugs.edge.launchpad.net/ubuntu/+source/python-virtualenv
Feel free to assign it to me (barry) or just send me the bug # and I'll take a look at it.
This is issue 142 on bitbucket (distribute fork on Tarek account), and there was a similar bug on setuptools issue tracker (submitted by Zooko as well), but cannot find it ATM.
thanks for looking into this,
Maybe it's just me, but I'm having a hard time understanding and reproducing this bug report on Ubuntu. Do you have a reproducible test case that I can use to see the problem?
Sure. Create a dummy setup.py: from setuptools import setup setup(name="foo", install_requires=["somepkg"]) with "somepkg" any package already installed on ubuntu, and then: virtualenv tmp source tmp/bin/activate python setup.py install You will see that somepkg is downloaded and installed even though it is already there. It happened for me for any value of somepkg, including twisted, django, simplejson. As for using setuptools instead of distribute in virtualenv, I cannot see the option on my current machine (with lucid virtualenv), which is weird because I clearly remember having seen it at work. I will check there to see what's different, David
On Jul 01, 2010, at 11:10 AM, David Cournapeau wrote:
Ubuntu Lucid uses distribute instead of setuptools, and I cannot manage to use setuptools with virtualenv because of this. I upgraded to the last version of virtualenv, which claims to install setuptools by default, but I still get distribute instead, and I would guess this is because of Ubuntu using distribute, but who knows....
Is there a simple way to force virtualenv to install setuptools (the PJE version, *not* the distribute fork) ?
Yes. For Lucid, I modified our version of virtualenv to accept a --setuptools option to use traditional setuptools. % virtualenv --version 1.4.5 % virtualenv --help Usage: virtualenv [OPTIONS] DEST_DIR Options: --version show program's version number and exit -h, --help show this help message and exit -v, --verbose Increase verbosity -q, --quiet Decrease verbosity -p PYTHON_EXE, --python=PYTHON_EXE The Python interpreter to use, e.g., --python=python2.5 will use the python2.5 interpreter to create the new environment. The default is the interpreter that virtualenv was installed with (/usr/bin/python) --clear Clear out the non-root install and start from scratch --no-site-packages Don't give access to the global site-packages dir to the virtual environment --unzip-setuptools Unzip Setuptools or Distribute when installing it --relocatable Make an EXISTING virtualenv environment relocatable. This fixes up scripts and makes all .pth files relative --distribute Ignored. Distribute is used by default. See --setuptools to use Setuptools instead of Distribute. --setuptools Use Setuptools instead of Distribute. Set environ variable VIRTUALENV_USE_SETUPTOOLS to make it the default. -Barry
participants (5)
-
Barry Warsaw
-
David Cournapeau
-
Tarek Ziadé
-
Zubin Mithra
-
Éric Araujo