PMXBOT Log file Viewer

Help | Karma | Search:

#pypa logs for Friday the 5th of September, 2014

(Back to #pypa overview) (Back to channel listing) (Animate logs)
[04:09:22] <james4k> what does it mean if pip does not resolve all dependencies (and silently)
[04:09:51] <james4k> sorry for the broad question.. trying to troubleshoot a python application i am trying to use
[04:15:07] <tomprince> There aren't enough details in your question to give you an answer.
[04:20:02] <The-Compiler> Heyho! Where should I report PyPI bugs (download counts being totally wrong)?
[04:20:02] <james4k> i get a DistributionNotFound exception for the 'six' module
[04:20:29] <Alex_Gaynor> The-Compiler: wrong how?
[04:20:42] <james4k> i am installing 'wal-e'; two of its dependencies require 'six': python-keystoneclient and python-swiftclient
[04:21:05] <james4k> both dependencies are installed, and six does get installed but not recent enough version
[04:21:08] <The-Compiler> Alex_Gaynor: obviously way too big. e.g. my project https://pypi.python.org/pypi/journalwatch/0.1.1 had dozens of downloads in the first few minutes after uploading, and now has 26 per day, without me knowing about a single user (except me)
[04:21:38] <Alex_Gaynor> james4k: you can solve that by just doing `pip install -U six` to get the latest six (which both work with)_
[04:21:54] <james4k> that is fine, yes, but why does it not get resolved on the first go?
[04:21:55] <Alex_Gaynor> The-Compiler: there are a bunch of folks who mirror all of PyPI, and those downloads are included in that count
[04:21:59] <james4k> i am trying to make this reproducible
[04:22:12] <Alex_Gaynor> james4k: great question, this happens with the version of wal-e on pypi?
[04:22:16] <james4k> yes
[04:22:19] <The-Compiler> Alex_Gaynor: but still, 26 downloads per day without doing any update on my side?
[04:23:14] <The-Compiler> or even 37 per day looking at the last month
[04:23:31] <The-Compiler> so either many very inefficient mirroring bots, or something is off
[04:23:33] <Alex_Gaynor> james4k: hmm, so `pip install wal-e` installed six 1.7.3 (latest) for me; is there anything interseting about your setup?
[04:24:03] <james4k> Alex_Gaynor: maybe; i install pip via the python-pip apt package in ubuntu
[04:24:05] <Alex_Gaynor> The-Compiler: inefficient mirrors doesn't surprise me in the least; the download counts are done by processing logs from our CDN, so it requiers a real HTTP request to hit it :/
[04:24:10] <Alex_Gaynor> james4k: which version of pip is that?
[04:24:11] <james4k> as well as python-all-dev
[04:24:25] <Alex_Gaynor> (pip --version to find out)
[04:24:28] <The-Compiler> Alex_Gaynor: hmm, okay
[04:24:42] <james4k> 1.5.4
[04:24:50] <Alex_Gaynor> The-Compiler: basically, download counts really should be treated as a pure vanity thing, they don't really represent the number of users in any real way
[04:25:02] <Alex_Gaynor> james4k: let me see if I can reproduce with that version
[04:25:47] <Alex_Gaynor> Hmm, still seem to work for me.
[04:25:56] <Alex_Gaynor> james4k: are you able to reproduce this?
[04:26:07] <james4k> yes
[04:26:23] <james4k> https://gist.github.com/james4k/6c70ab17b8bfec3221ff
[04:26:58] <james4k> ansible task.. let me narrow this down to a shell script
[04:27:31] <Alex_Gaynor> oh, hmm, are you putting wal-e in a virtualenv or installing globally?
[04:27:35] <james4k> ubuntu 14.04 if it matters
[04:27:45] <james4k> globally
[04:28:12] <Alex_Gaynor> Does python-six get installed by apt?
[04:29:17] <james4k> hmm, i believe so
[04:29:37] <Alex_Gaynor> I bet that's the problem, pip doesn't want to override apt or something /cc dstufft
[04:29:52] <Alex_Gaynor> I thought swiftclient and keystoneclient specified minimum versions though...
[04:29:59] <dstufft> so
[04:30:04] <Alex_Gaynor> james4k: if you put wal-e ina virtualenv I believe this problem will go away
[04:30:16] <dstufft> pip doesn't handle multiple things declaring a dependency on a single thing very well
[04:30:21] <james4k> i see, thanks
[04:30:26] <dstufft> it'll just silently use the first thing it finds
[04:30:34] <dstufft> so if the first thing it finds is "six"
[04:30:36] <james4k> im a python noob, so.. /me learns virtualenv
[04:30:40] <dstufft> a dependency on "six" I mean
[04:30:56] <dstufft> and later on something depends on "six>=whatever"
[04:31:01] <dstufft> pip won't see that later on thing
[04:31:20] <dstufft> this can cause problems if you have an older copy of six (for instance) already installed
[04:31:29] <dstufft> older than six>=whatever specifies
[04:31:32] <Alex_Gaynor> dstufft: so just `pip install wal-e` works, it has something to do with what apt installs
[04:31:40] <Alex_Gaynor> james4k: what version of six does get installed?
[04:32:24] <dstufft> DistributionNotFound comes from console scripts
[04:32:38] <Alex_Gaynor> dstufft: wal-e runs as a console script
[04:32:41] <dstufft> yes
[04:32:46] <dstufft> sorry I'm explaiing this poorly
[04:33:34] <james4k> 1.5.2.. i think. would have to reprovision this to know for sure
[04:34:32] <Alex_Gaynor> hmmm, python-keystoneclient seems to specify six>=1.7.0 :/
[04:34:35] <Alex_Gaynor> I'm so confused
[04:34:53] <Alex_Gaynor> swiftclient wants six>=1.5.2
[04:35:20] <dstufft> so problably
[04:35:21] <dstufft> it's this
[04:35:36] <Alex_Gaynor> james4k: the fastest workaround would be to just put `- pip: name=six version=1.7.3 state=present` before wal-e
[04:35:46] <Alex_Gaynor> I'm still confused about how this happens exactly
[04:36:09] <dstufft> pip install wal-e, finds ["six>=1.5.2", "six>=1.7.0"], because pip isn't the greatest it only considers ["six>=1.5.2"]. sees that's already satisified, and doesn't do anything
[04:36:11] <dstufft> HOWEVER
[04:36:20] <dstufft> when you install a console script, setuptools considers all of them
[04:36:32] <dstufft> and bakes that into the console script, so that it'll bomb out if everything isn't satisified
[04:37:20] <dstufft> does that make sense?
[04:38:23] <dstufft> maybe I'll try to get that fixed before 1.6
[04:38:57] <james4k> can you assume that if wal-e runs successfully, all dependencies are good?
[04:39:20] <dstufft> if the command line runs successfully, yes
[04:40:50] <james4k> hmm.. ok that's bad news for me in other ways, haha. having problems with wal-e itself as well
[04:41:08] <james4k> but thanks guys, you've been a great help
[04:41:45] <Alex_Gaynor> sorry that wal-e is causing you trouble (I also work on wal-e from time to time)
[04:44:15] <james4k> Alex_Gaynor: if you're interested https://github.com/wal-e/wal-e/issues/133
[04:45:10] <dstufft> Alex_Gaynor: it's really pip's fault
[04:45:15] <dstufft> wal-e is incidental
[04:45:29] <Alex_Gaynor> dstufft: well, nonetheless :-( Paritcularly given which deps trigger this :/
[06:31:41] <gshmu> $ alias 'pip install'='pip install --download-cache ~/.pip/cache' $ bash: alias: `pip install': invalid alias name
[06:31:58] <gshmu> I want always using cache...
[06:36:56] <ronny> gshmu: so set it in your pip.conf?
[06:37:27] <gshmu> I don't find it, touch it at ~/.pip
[06:42:02] <gshmu> ronny: thanks, got it.
[17:14:40] <respawn> hello