PMXBOT Log file Viewer

Help | Karma | Search:

#pypa logs for Monday the 13th of January, 2020

(Back to #pypa overview) (Back to channel listing) (Animate logs)
[10:52:03] <sokan> ty nedbat ^^
[15:17:11] <exarkun> is this for real? ERROR: Package 'setuptools' requires a different Python: 2.7.12 not in '>=3.5'
[15:20:27] <ngoldbaum> exarkun: is your pip older than pip 9? that’s the earliest version that supports python_requires
[15:20:42] <ngoldbaum> but yeah setuptools dropped 2.7 support in the latest release
[15:20:57] <ngoldbaum> github.com/pypa/setuptools/issues/1964
[15:26:38] <exarkun> Hm
[15:27:10] <exarkun> Ok. I'll see if I can get pip >=9 and see if that helps. Thanks for the pointer.
[17:53:12] <aclark> Anyone here that can reset my 2FA in exchange for a promise to save my recovery codes this time? :-) github.com/python-pillow/Pillow/issues/1535#issuecomment-572511689
[18:45:59] <ngoldbaum> aclark: when i did that i had to e-mail ewdurbin github.com/pypa/warehouse/issues/6676#issuecomment-534091479
[19:13:16] <exarkun> I upgraded to pip 19.3.1 but I still get setuptools errors
[19:13:22] <exarkun> Here's an example, circleci.com/gh/tahoe-lafs/tahoe-lafs/15825
[19:14:22] <exarkun> I guess virtualenv installs setuptools first and pip won't *downgrade* because of python_requires?
[19:16:56] <ngoldbaum> exarkun: can you upgrade pip then install setuptools, in two different steps?
[19:17:39] <exarkun> ngoldbaum: That's already what I'm doing
[19:17:41] <ngoldbaum> oh huh looks like you're doing that
[19:17:42] <ngoldbaum> github.com/tahoe-lafs/tahoe-lafs/pull/676/files#diff-0f71e70ef4b209a629272d82f034745cR41
[19:17:44] <ngoldbaum> dunno
[19:18:02] <exarkun> I don't expect `pip install -U setuptools` to install setuptools 44 if setuptools 45 is already installed. What do you think?
[19:18:13] <exarkun> And I think *virtualenv* installs setuptools 45 as part of virtualenv creation?
[19:18:15] <ngoldbaum> oh wait
[19:18:20] <ngoldbaum> it's because you're using --upgrade
[19:18:28] <ngoldbaum> --upgrade upgrades all dependencies too
[19:19:03] <ngoldbaum> so on the second invocation of pip, don't pass --upgrade
[19:19:08] <ngoldbaum> the one for wheel and setuptools
[19:19:36] <ngoldbaum> i think there's also an argument to tell pip to only upgrade what you explicitly asked it to
[19:19:39] <exarkun> What does `pip install setuptools` do if setuptools is already installed?
[19:20:02] <ngoldbaum> nothing, i think?, but pip install setuptools==44.0.0 or whatever will install that version if it's not there
[19:20:16] <exarkun> I'm trying `pip install setuptools==44.0.0` now
[19:23:10] <exarkun> seems to be helping
[19:57:25] <aclark> ngoldbaum: thx
[22:28:18] <toad_polo> exarkun: Ideally don't pin unconditionally.
[22:28:38] <toad_polo> We may revert the 2.7 drop, we're in data gathering mode.
[22:28:50] <exarkun> What do you suggest?
[22:28:57] <exarkun> (Here's some data: you broke Tahoe-LAFS CI)
[22:29:45] <toad_polo> I didn't break anything.
[22:30:07] <exarkun> sorry, "you" is "the setuptools 45 release"
[22:30:28] <exarkun> you said "we" so it seemed okay to say use the inverse pronoun
[22:30:37] <toad_polo> I meant more pin on 2.7 only anyway.
[22:30:53] <exarkun> tahoe only runs on 2.7 so it's kind of academic
[22:30:59] <exarkun> can't really talk now anyway, kids etc
[22:31:34] <toad_polo> Well we are gathering data, but I'm trying to be diplomatic because I didn't exactly agree with the breaking change, but I think it was more due to miscommunication than anything else.
[22:32:25] <ngoldbaum> it's too bad that python_requires was added to pip relatively recently
[22:32:36] <ngoldbaum> in that there's still plenty of old pips in the wild that don't behave correctly
[22:32:56] <toad_polo> So for me it's like letting a fire you didn't mean did start burn a while to see if your fire containment stuff works well.
[22:33:48] <ngoldbaum> github.com/pypa/setuptools/issues/1964#issuecomment-573847801 ah that's fun too
[22:33:53] <toad_polo> ngoldbaum: Yeah. For a while I've been saying it's going to be a problem.
[22:35:00] <toad_polo> Against many people's wishes, I continue to test dateutil on Python 3.3, because I prefer to have `python_requires` accurately reflect what *will* work, not what is supported.
[22:35:21] <toad_polo> And that is constantly breaking because of various problems with `python_requires`. That and Python 3.4
[22:35:50] <toad_polo> 3.3 breaks because it can't get a recent enough `pip`. Python 3.4 breaks because people don't set `python_requires` or set it incorrectly.
[22:36:12] <toad_polo> And I have relatively few dependencies.
[22:36:36] <toad_polo> When I was at Bloomberg we also had a problem where `python_requires` wasn't supported on the version of Artifactory we were using.
[22:36:45] <ngoldbaum> admirable, my impression is that most people test what they can easily install on CI platforms, which is sort of a self-fulfilling prophecy
[22:37:01] <ngoldbaum> (also guilty of that)
[22:37:06] <toad_polo> I think they eventually started supporting it, but we were stuck on some old version anyway.
[22:37:26] <toad_polo> ngoldbaum: I suspect I'll get back into line when we drop 2.7 compatibility.
[22:37:52] <toad_polo> With 2.7 backwards compat, 3.3 and 3.4 compat basically come for free.
[22:38:23] <toad_polo> Once I drop 2.7, if I decide 3.6 is the minimum supported version, I'll be using f-strings, so that will kill a bunch of old versions anyway.
[22:38:47] <ngoldbaum> also pathlib
[22:38:54] <toad_polo> Yep.
[22:39:09] <toad_polo> Anyway, Artifactory and a bunch of other mirrors for custom code fuck up the metadata, so you see stuff breaking from that.
[22:39:33] <toad_polo> I've been saying for quite some time that it will be a tough adjustment period when we start heavily relying on `python_requires`.
[22:41:44] <toad_polo> I am thinking we will probably want to revert the change because honestly it was a bit premature. Unfortunately a bunch of people will pin `setuptools` and then stop thinking about it by then.
[22:57:44] <techalchemy> toad_polo, did you release a major version that doesn't support python 2?
[23:53:59] <toad_polo> techalchemy: setuptools did, more or less.
[23:57:21] <techalchemy> toad_polo, more or less meaning what?