[18:51:50] <dstufft> qwcode: because not doing it violates the Wheel spec, and it means that pip 1.5 will possibly break in weierd ways if Wheel 2.0 does something backwards incompat
[18:53:20] <qwcode> dstufft, ok, you working on wheel 2.0? and have stronger confidence that it's coming soonish?
[18:54:08] <tomprince> pip versions live in the wild for a *long* time.
[18:54:08] <dstufft> qwcode: I have a Wheel 2.0 spec started yes, but even if it doesn't come soon we don't want old pips to do the wrong thing even if it comes 10 years from now
[18:54:37] <dstufft> a loud error is way better than ilently doing the wrong thing
[18:56:08] <dstufft> I'd prefer it if the Wheel is incompatible it falls back to sdist, but that's more than I feel comfortable putting into a patch release
[18:56:13] <dstufft> i'd like to do that in 1.6 tho
[19:00:11] <qwcode> wheel 2.0, and not wheel 1.1? big changes?
[19:00:36] <dstufft> the changes aren't massive, but they are techincally backwards incompatible
[19:04:14] <qwcode> dstufft, thoughts on whether 'pip wheel --rebuild' (i.e no rebuild by default) qualifies for 1.5.3? I know it's annoying
[19:05:07] <tomprince> Huh. I assumed it didn't rebuild by default, since my wheel dir is also in my index path.
[19:05:19] <dstufft> qwcode: I'm on the fence, on one hand I think not rebuilding by default is saner, but it's also a new feature
[19:06:21] <qwcode> tomprince, yes, that's true in that case, but not true otherwise.
[19:07:17] <qwcode> dstufft, don't know if you saw my comments, but it's semi-hard to fix, because we're not in charge of the filename
[19:09:53] <dstufft> qwcode: if it's hard to fix then I say we wait to 1.6
[19:10:15] <dstufft> hard to fix means more likely to have wierd edge cases and breakage
[19:11:43] <qwcode> dstufft, the diff would likely by small, but it involves using distutils command classes, so it's awkward, and I'm not quite sure how to do it yet.
[19:12:53] <dstufft> Ok, well I think it probably makes sense to wait. It's not going to break anything to rebuild, it'll just do extra work then is needed right?
[19:13:16] <qwcode> dstufft, it might be better to make a change in bdist_wheel to have it own the logic, and surface flags for pip
[19:15:32] <qwcode> yes, it's the behavior now to always rebuild. I can mention adding your wheel dir to your index path, to prevent rebuilding as a "trick" I guess in the docs
[19:18:23] <qwcode> dstufft, not sure how familiar you are with 'pip wheel', but fundamentally, it's just like 'pip install', but calls 'bdist_wheel' instead of 'install'
[19:18:48] <dstufft> I understand it's concept and such
[19:19:01] <dstufft> I kinda want to refactor to seperate things out cleaner
[19:20:04] <tomprince> I use it all the time, for building dependencies locally, or for a homogenous deployment environment.
[19:21:17] <qwcode> dstufft, pip install and pip wheel share the massive 'prepare_files' step. that seems correct to me. the big refactor that's needed in IMO involves properly breaking up 'prepare_files' and all that entails
[19:33:12] <dstufft> qwcode: no worries, just don't want y'all to think i'm ignoring things :)
[19:34:11] <qwcode> dstufft, no worries, just know that I intentionally avoided adding more logic to big methods like prepare_files. really, it wasn't that big of a change. we had all the pieces basically already.
[19:43:06] <qwcode> dstufft, wow, the bandersnatch security hole is fixed now. that was quick
[19:44:24] <dstufft> qwcode: that is thank to EWDurbin
[19:44:49] <qwcode> yea, I saw, that guy is everywhere now
[23:10:10] <dstufft> I mean if we really wanted xz, we could use a ZIP_STORED instead of ZIP_DEFLATE so that zip files don't do any compression, and just put an xz file as a payload inside of a Wheel container
[23:10:24] <dstufft> and have the metadata still in the zip container