PMXBOT Log file Viewer

Help | Karma | Search:

#pypa-dev logs for Sunday the 4th of October, 2015

(Back to #pypa-dev overview) (Back to channel listing) (Animate logs)
[16:43:36] <sigmavirus24> So I was able to successfully upload a signed package to testpypi, (twine 1.6.2) so I'm going to release 1.6.3 on Monday to fix this 500 error problem /cc dstufft
[18:46:49] <lifeless> dstufft: this is my current ugh thing - https://github.com/testing-cabal/mock/issues/316#issuecomment-145344935
[18:57:16] <dstufft> lifeless: the real solution is that going forward packaging formats should have version numbers so pip can know if it knows how to install it or not
[19:01:22] <lifeless> dstufft: yeah, I filed a bug on pip about this
[19:01:25] <lifeless> dstufft: dunno if you saw it
[19:01:33] <dstufft> I don't recall it
[19:01:40] <dstufft> but I might have and I'm just not remembering
[19:01:47] <dstufft> was it the thing where pip exposes it's version number?
[19:01:55] <dstufft> I don't think that's the right way to do it if so
[19:02:14] <lifeless> https://github.com/pypa/pip/issues/3111
[19:02:28] <lifeless> its one possible approach I was spitballing
[19:02:36] <lifeless> 'silent failure with markers and pip < 6' is the title, and I think thats valid :0
[19:03:51] <dstufft> I don't like the exporting of pip version thing because it smells like user-agent detection in web app land which was super painful for a long time
[19:04:18] <lifeless> sure
[19:04:30] <lifeless> I separated out symptoms and ideas-I'd-had-about-fixing-it
[19:04:36] <dstufft> are you using the setup.py extras require syntax for markers
[19:04:49] <lifeless> yes
[19:05:01] <lifeless> (via pbr etc, but it all reflects into regular setup kwargs)
[19:05:18] <dstufft> Are you sure the problem is wheels and not sdists? pip < 6 didn't support those
[19:05:56] <dstufft> I think every version of pip that supported wheels supported markers inside of wheels
[19:06:15] <lifeless> the only thing I'm sure of is the title
[19:06:47] <dstufft> I'd bet that's it
[19:07:18] <lifeless> https://github.com/testing-cabal/mock/issues/316 (linked now) is one of the upstream reports
[19:07:58] <dstufft> I bet you won't see the problem with pip 1.5 much (if at all)
[19:08:08] <dstufft> because pip 1.5 will select the wheels by default and support them properly
[19:08:33] <lifeless> yeah - so we see 1.4.1 failing
[19:08:33] <dstufft> but pip 1.4 won't, and will use the sdist, which is relying on the setup.py support of markers which didn't exist in pip < 6
[19:08:41] <lifeless> and 1.5.4 working
[19:09:12] <dstufft> I bet if those people with pip 1.4 did pip install --use-wheel it'd work as well
[19:09:21] <lifeless> huh, I didn't realise that marker support came in unevenly
[19:09:54] <dstufft> well, setuptools added support for it but didn't really announce it or document it
[19:10:09] <lifeless> (I meant w/in pip)
[19:10:11] <dstufft> it was a little item in the changelog that said there was experimental support for it
[19:10:41] <dstufft> I think when wheel was implemented, nobody erally noticed setuptools had support for it in setup.py
[19:11:47] <dstufft> one way of fixing this, is to have pbr fake the marker support (by dynamically adding to install_requires when the marker matches) in a sdist, but overriding wheel so that it gets the correct metadata
[19:12:46] <lifeless> I'd want to be very careful with that
[19:12:59] <lifeless> to not export unconditional deps to the wheel
[19:13:41] <lifeless> I wonder if egg_info is always (internally) called enough to make that work
[19:13:45] <lifeless> I'll file a bug on pbr
[19:14:01] <dstufft> lifeless: outside of pbr you can already do this fwiw
[19:14:04] <dstufft> not sure how to translate it into pbr
[19:14:09] <dstufft> but it might be worth looking at
[19:14:36] <dstufft> when building a wheel, it will take a setup.cfg metadata section over the install_requires
[19:14:54] <dstufft> which lets you do https://github.com/pypa/twine/blob/master/setup.cfg#L9-L15 for wheels, and https://github.com/pypa/twine/blob/master/setup.py#L28-L31 for setup.py
[19:14:59] <lifeless> the static entry in setup.cfg - yeah, but very much don't want double-entry: we have too many devs to educate
[19:15:09] <lifeless> (also the key in setup.cfg is fugly)
[19:15:20] <dstufft> oh right, but i mean you can do a similar thing I think
[19:15:42] <dstufft> pass the dependencies through unmodified when bdist_wheel is being called
[19:16:03] <dstufft> (it migh tnot work though, Idk)
[19:21:59] <lifeless> https://bugs.launchpad.net/pbr/+bug/1502692
[21:32:45] <lifeless> Nakato: tchaypo: give me a ping when you guys are up :)
[21:33:17] <tchaypo> That'll be tomorrow, most likely
[21:33:28] <tchaypo> Labour day over here
[21:35:16] <tchaypo> I may be around later, I'm not sure
[22:56:53] <lifeless> tchaypo: ah, ok