[11:12:20] <arch_> jezdez: do the official docs explain the builtin pip and venv usage somewhere? Seems there's a passing reference in the installation and packaging tutorial but nothing specific. Not sure if there should be
[11:30:09] <nanonyme> Uargh. Is Debian/Ubuntu intending to break virtualenv or am I misinterpreting that Launchpad bug?
[11:59:46] <nanonyme> I've never taken a look at what eggs have eaten to be honest
[12:00:14] <nanonyme> mitsuhiko, did they use to be able to bundle their deps?
[12:00:42] <mitsuhiko> not within the egg but they could just load other eggs
[12:01:06] <nanonyme> Yeah, not what I'm thinking of then
[12:01:31] <nanonyme> What I'm thinking of is you'd self-host all your deps inside the zip file, then give that to someone and they only have to have system Python to run it
[12:02:08] <mitsuhiko> well. people were against eggs
[12:02:12] <mitsuhiko> maybe the time is right now
[12:02:16] <mitsuhiko> but i doubt there will be support
[12:02:26] <nanonyme> I thought it was because they were full of black magic and undocumented bits
[12:02:36] <nanonyme> Or that's the impresion I got from what people were talking
[12:03:36] <mitsuhiko> that's the same with pip, setuptools and wheel
[12:03:45] <mitsuhiko> everything of eggs besides the format was kept anyways
[12:04:03] <nanonyme> Weeeell, I actually have been told the opposite of wheel
[12:04:17] <nanonyme> Ie that it was well documented while it was designed
[12:05:11] <nanonyme> Of course all this could have been objective :)
[12:06:37] <nanonyme> Also I think the task of wheel and what I was thinking of are distinct anyway. If egg was trying to do both, it already had unnecessarily complexity. Just do one thing and do it well
[12:07:02] <mitsuhiko> what was the unnecessary complexity?
[12:07:19] <mitsuhiko> all the complexity in egg is and was necessary to achieve the task of eggs
[12:07:25] <mitsuhiko> and to be honest, there is very little complexity in eggs
[12:07:48] <nanonyme> Dependency-based package installation is one thing, executable self-hosted package is another
[12:07:49] <mitsuhiko> eggs had two problems: unstable python bytecode, so they were version dependent and lack of stable python abi on linux
[12:08:04] <mitsuhiko> nanonyme: eggs had nothing to do with dependency based package installation
[12:08:33] <mitsuhiko> nanonyme: the vast majority of criticism against eggs was from people that did not even try to use it
[12:08:50] <mitsuhiko> and just complained that people dared to have binary distributions
[12:09:20] <nanonyme> Well, *I* do think binary distributions are an unavoidable thing on certain platforms
[12:09:56] <nanonyme> Basically the *only* thing I did not like about eggs was that they did not work with pip
[12:10:22] <nanonyme> When I started complaining loudly, I was told some superior format called wheel was about to replace them anyway so I stopped caring
[12:11:26] <mitsuhiko> nanonyme: i wonder why they did not work with pi
[12:11:33] <mitsuhiko> oh well, because pip intentionally broke support
[12:11:40] <mitsuhiko> and then when it took off, it was reinvented as wheels
[12:12:01] <mitsuhiko> (yes i am still bitter about eggs being killed off and recreated with nearly exactly the same design but more restrictions)
[12:12:18] <mitsuhiko> we could have had a honest discussion about eggs 4 years ago and be further today
[12:22:19] <nanonyme> That sounds not much before I moved from Perl to Python
[12:25:21] <nanonyme> Erm, rather roughly at same time
[12:25:22] <nanonyme> Anyway, I guess my point is that I personally haven't probably been competent for a real packaging conversation until about two years
[12:40:52] <nanonyme> mitsuhiko, the only thing I'm bitter about is that pip has been unusable for a lot of Windows users until very recently (1.5.x) so when I've tried to advocate it instead of easy_install, I've repeatedly had to go with "oh, it doesn't work. oh, I guess just use easy_install like before then)
[12:41:42] <mitsuhiko> nanonyme: i am very well aware of that, and that is been mostly the removal of eggs
[12:41:48] <nanonyme> And the fact that easy_install is bundled with Windows Python2 and pip is not hasn't helped much
[12:41:49] <mitsuhiko> eggs worked really well on windows
[12:42:03] <mitsuhiko> pip intentionally broke it "because we do not need them"
[12:42:41] <nanonyme> Might as well done it properly and killed all support for C extension modules on all platforms
[12:43:02] <nanonyme> With *that* pip with source packages only would have worked fine
[12:43:35] <jezdez> dstufft may know more as he was actively involved in that discussion
[12:43:42] <nanonyme> (nothing to compile, everything Just Works)
[12:43:53] <nanonyme> (of course, that would also have killed pip :p)
[12:45:01] <nanonyme> mitsuhiko, btw, came into other thoughts during this train trip. Maybe we *should* have platform-specific hooks so OS could recommend installing some distro package instead in interactive mode?
[12:45:27] <nanonyme> And have it done in a standard way
[12:46:38] <nanonyme> Ie so that if this integration is missing, pip would work normally. It would possibly prevent Linux distros from mutilating setuptools/pip/virtualenv from arbitrary locations in the future
[12:48:05] <nanonyme> (and packages would still be installable even with the integration, it would just notify end-user
[14:58:32] <mitsuhiko> nanonyme: that hook thing was discussed before :)
[15:19:59] <dstufft> mitsuhiko: eggs, like much of what came out of setuptools, are reasonable ideas and terrible execution
[15:22:45] <dstufft> (The restrictions that Wheel placed that Eggs didn't have were important restrictions)
[15:33:33] <Alex_Gaynor> mitsuhiko: in what ways do wheels not work on windows? We've shipped 10s of thousands of 'no compiler needed' installs with them
[15:34:05] <mitsuhiko> Alex_Gaynor: where did i say that wheels do not work on windows?
[15:34:26] <Alex_Gaynor> Perhaps I misread, sounded like you were saying eggs worked better than wheels on windows
[15:34:48] <mitsuhiko> easy_install + eggs worked better than pip without wheels
[15:34:53] <mitsuhiko> wheels are very, very recent
[16:57:02] <nanonyme> IOW it's not that uncommon that you get eggs installed with easy_install into virtualenvs on Windows still. Sometimes it works, sometimes it doesn't
[17:09:11] <nanonyme> Will just have to remember to tell colleagues at work to update their pip and then start using that only when I get back to from Summer holiday