Re: [Distutils] setuptools dependencies failure and wildcards
At 09:16 PM 3/14/2010 +1100, Nicholas Bower wrote:
I have the following simple dependencies using setuptools;
install_requires=['shapely==1.0.14','sqlalchemy==0.5.8'],
Two questions;
1) Shapely will not work. The available packages are;
Shapely-1.0.14.win32.py24.exe (md5). Shapely-1.0.14.win32.py25.exe (md5). Shapely-1.0.14.win32.py26.exe (md5).
but python version is not being appended as below. Is shapely thus incompatible with setuptools?
No; the problem is that there's a broken link on the Shapely home page at http://trac.gispython.org/lab/wiki/Shapely - it links to a non-existent .exe file in this line: "Windows users should use the executable <http://pypi.python.org/packages/2.5/S/Shapely/Shapely-1.0.14.win32.exe#md5=9...> installer, which contains the required GEOS DLL" easy_install is seeing this link and thinks it's preferable, due to the way it sorts candidate URLs, and it isn't smart enough (yet) to backtrack on broken links. You can work around this by adding 'dependency_links=[]' to your setup(), replacing the [] with a list of specific links to the individual .exe files; this will keep easy_install from ever reading the PyPI page or wiki page with the broken link. Of course, you should also suggest the shapely maintainers fix the broken link, since it is broken for humans as well as for easy_install. ;-)
2) How does one say "the latest release of sqlalchemy 0.5.x". Unfortunately <0.6 picks up 0.6beta and I can see no way to do wildcards in the docs and just say "give me the latest 0.5 series".
<0.6dev will do the trick.
Thanks but why would easy install go to pypi, ignore the obvious download urls and proceed to an external wiki to text search for a (as you point out broken) URL. Ie why not satisfy the dependency from the pypi page alone? Clearly I'm new to setup tools so if this is answered elsewhere appologies. On 15/03/2010, at 3:18 AM, "P.J. Eby" <pje@telecommunity.com> wrote:
At 09:16 PM 3/14/2010 +1100, Nicholas Bower wrote:
I have the following simple dependencies using setuptools;
install_requires=['shapely==1.0.14','sqlalchemy==0.5.8'],
Two questions;
1) Shapely will not work. The available packages are;
Shapely-1.0.14.win32.py24.exe (md5). Shapely-1.0.14.win32.py25.exe (md5). Shapely-1.0.14.win32.py26.exe (md5).
but python version is not being appended as below. Is shapely thus incompatible with setuptools?
No; the problem is that there's a broken link on the Shapely home page at http://trac.gispython.org/lab/wiki/Shapely - it links to a non-existent .exe file in this line:
"Windows users should use the executable <http://pypi.python.org/packages/2.5/S/Shapely/Shapely-1.0.14.win32.exe#md5=9...
installer, which contains the required GEOS DLL"
easy_install is seeing this link and thinks it's preferable, due to the way it sorts candidate URLs, and it isn't smart enough (yet) to backtrack on broken links.
You can work around this by adding 'dependency_links=[]' to your setup(), replacing the [] with a list of specific links to the individual .exe files; this will keep easy_install from ever reading the PyPI page or wiki page with the broken link.
Of course, you should also suggest the shapely maintainers fix the broken link, since it is broken for humans as well as for easy_install. ;-)
2) How does one say "the latest release of sqlalchemy 0.5.x". Unfortunately <0.6 picks up 0.6beta and I can see no way to do wildcards in the docs and just say "give me the latest 0.5 series".
<0.6dev will do the trick.
At 08:49 AM 3/15/2010 +1100, Nick Bower wrote:
Thanks but why would easy install go to pypi, ignore the obvious download urls
It doesn't ignore them; it loads them, along with any found on "home page" or "download" links from there. It just doesn't choose one to use until it's seen all of them, in order to make sure it gets the best match, rather than just the first match.
and proceed to an external wiki to text search for a (as you point out broken) URL. Ie why not satisfy the dependency from the pypi page alone?
As I said below, it has to do with the sort order for URLs that are otherwise equally usable:
On 15/03/2010, at 3:18 AM, "P.J. Eby" <pje@telecommunity.com> wrote:
easy_install is seeing this link and thinks it's preferable, due to the way it sorts candidate URLs, and it isn't smart enough (yet) to backtrack on broken links.
P.J. Eby wrote:
As I said below, it has to do with the sort order for URLs that are otherwise equally usable:
Does easy_install have a way to prevent spidering off anywhere other than PyPI? I know buildout has this feature, even though it is implemented rather loudly, but I don't know if it's implemented in buildout or inherited from setuptools... Chris -- Simplistix - Content Management, Batch Processing & Python Consulting - http://www.simplistix.co.uk
At 08:29 AM 3/16/2010 +0000, Chris Withers wrote:
P.J. Eby wrote:
As I said below, it has to do with the sort order for URLs that are otherwise equally usable:
Does easy_install have a way to prevent spidering off anywhere other than PyPI?
--allow-hosts=pypi.python.org would probably do it.
P.J. Eby wrote:
At 08:29 AM 3/16/2010 +0000, Chris Withers wrote:
P.J. Eby wrote:
As I said below, it has to do with the sort order for URLs that are otherwise equally usable:
Does easy_install have a way to prevent spidering off anywhere other than PyPI?
--allow-hosts=pypi.python.org would probably do it.
Yep, thanks. Chris -- Simplistix - Content Management, Batch Processing & Python Consulting - http://www.simplistix.co.uk
participants (3)
-
Chris Withers
-
Nick Bower
-
P.J. Eby