openstackgerrit | Tony Breeds proposed openstack/requirements stable/ocata: Use the new opendev path for requirements-check https://review.opendev.org/658122 | 00:10 |
---|---|---|
openstackgerrit | Tony Breeds proposed openstack/requirements stable/ocata: Add upper-constraints enforcement for local reqs https://review.opendev.org/658748 | 00:11 |
*** samueldmq has quit IRC | 00:12 | |
openstackgerrit | Tony Breeds proposed openstack/requirements stable/stein: Fix where we use constraints https://review.opendev.org/661144 | 00:26 |
openstackgerrit | Tony Breeds proposed openstack/requirements stable/rocky: Fix where we use constraints https://review.opendev.org/661145 | 00:26 |
openstackgerrit | Tony Breeds proposed openstack/requirements stable/queens: Fix where we use constraints https://review.opendev.org/661146 | 00:27 |
openstackgerrit | Tony Breeds proposed openstack/requirements stable/pike: Fix where we use constraints https://review.opendev.org/661147 | 00:27 |
openstackgerrit | Tony Breeds proposed openstack/requirements stable/ocata: Fix where we use constraints https://review.opendev.org/661148 | 00:27 |
tonyb | prometheanfire: So I looked at https://etherpad.openstack.org/p/reqs-py2-caps and I don't think we shoudl send it | 00:50 |
tonyb | prometheanfire: we staill have a lot of unknowns and we haven't actually added anything testing or process wise that will stop it from happening again | 00:51 |
prometheanfire | ya, info is not actionable | 00:52 |
tonyb | prometheanfire: true we may not end up with a "bandit", style issue *and* a gate issue at the same time but we still a) don't detect when a library adds a braking chnage like this ; and b) don't forcefully push an update into a project when it's needed | 00:52 |
tonyb | we have some hard thinking to do | 00:52 |
prometheanfire | indeed | 00:53 |
* tonyb really wishes he had more headspace | 01:03 | |
*** altlogbot_1 has quit IRC | 02:12 | |
*** altlogbot_0 has joined #openstack-requirements | 02:13 | |
openstackgerrit | Trinh Nguyen proposed openstack/requirements master: Ignore python 3.4 and 3.5 for sphinx https://review.opendev.org/661149 | 02:37 |
openstackgerrit | Merged openstack/requirements stable/ocata: Cap keyring and scikit-learn on python2 https://review.opendev.org/660860 | 05:19 |
openstackgerrit | Merged openstack/requirements master: Add cinder extras infinisdk https://review.opendev.org/658086 | 05:27 |
openstackgerrit | OpenStack Proposal Bot proposed openstack/requirements master: Updated from generate-constraints https://review.opendev.org/661189 | 06:20 |
*** hberaud|gone is now known as hberaud | 07:03 | |
openstackgerrit | Merged openstack/requirements master: update constraint for osprofiler to new release 2.8.0 https://review.opendev.org/660464 | 07:10 |
openstackgerrit | Merged openstack/requirements stable/ocata: Use the new opendev path for requirements-check https://review.opendev.org/658122 | 07:10 |
*** dtantsur|afk is now known as dtantsur | 07:30 | |
*** mnaser has quit IRC | 07:35 | |
*** jungleboyj has quit IRC | 07:40 | |
*** jungleboyj has joined #openstack-requirements | 07:43 | |
*** mnaser has joined #openstack-requirements | 07:43 | |
*** e0ne has joined #openstack-requirements | 07:51 | |
*** mnaser has quit IRC | 08:02 | |
*** jungleboyj has quit IRC | 08:04 | |
*** mnaser has joined #openstack-requirements | 08:05 | |
*** jungleboyj has joined #openstack-requirements | 08:07 | |
*** rm_work has quit IRC | 08:09 | |
*** rm_work has joined #openstack-requirements | 08:10 | |
*** tosky has joined #openstack-requirements | 08:10 | |
*** zbr has joined #openstack-requirements | 08:19 | |
*** AJaeger has joined #openstack-requirements | 08:38 | |
openstackgerrit | Andreas Jaeger proposed openstack/requirements master: Remove projects.txt and friends https://review.opendev.org/619089 | 08:38 |
AJaeger | tonyb: you wanted to followup last year on the patch above - I just rebased and removed merge conflicts. ^ | 08:39 |
AJaeger | tonyb: do you still want to take this over - or have an advice on how to handle this? | 08:39 |
*** ccamacho has joined #openstack-requirements | 08:56 | |
*** hberaud is now known as hberaud|school-r | 09:55 | |
*** hberaud|school-r is now known as hberaud|lunch | 10:05 | |
*** aspiers has joined #openstack-requirements | 10:11 | |
aspiers | any requirements experts awake, e.g. dirk? got a context about using contextlib2 safely on py2 without breaking py3 | 10:12 |
*** hberaud|lunch is now known as hberaud | 11:20 | |
aspiers | this is what I've done: https://review.opendev.org/#/c/660500/ | 11:48 |
dirk | aspiers: you can add specifiers on the python version.. | 11:48 |
aspiers | see https://review.opendev.org/#/c/660500/7/nova/test.py@69 | 11:48 |
aspiers | I see lower-constraints.txt already sets the specifier on Python 2 | 11:48 |
*** adriant has quit IRC | 11:48 | |
aspiers | sorry | 11:49 |
dirk | e.g. simply add contextlib2;python_version<'3.0' | 11:49 |
aspiers | that's not what I meant | 11:49 |
dirk | to your requirements/test-requirements | 11:49 |
aspiers | yeah | 11:49 |
aspiers | hrm, I saw the specifier somewhere | 11:49 |
aspiers | ah, maybe in global upper constraints | 11:49 |
aspiers | or global lower | 11:49 |
*** adriant has joined #openstack-requirements | 11:49 | |
aspiers | yeah, global upper | 11:50 |
aspiers | contextlib2===0.5.5;python_version=='2.7' | 11:50 |
dirk | yeah, you need to add it to lower-constraints and to the projects *requirements.txt file | 11:50 |
aspiers | OK | 11:50 |
aspiers | actually it's only needed for test-requirements.txt I think | 11:50 |
dirk | right | 11:50 |
aspiers | the interesting thing is that contextlib2 was already in my testenv | 11:50 |
aspiers | I don't know why | 11:51 |
dirk | so add it to test-requirements with the line matching the specifiers in global-requirements.txt and to lower-constraints.txt as a copy of the gr's upper-constraints entry and then you're done | 11:51 |
dirk | yes, it is most likely already pulled in by some other dependency | 11:51 |
dirk | but its good to be explicit if the code explicitly imports it | 11:51 |
aspiers | how would I find out which one? | 11:51 |
aspiers | out of curiosity | 11:51 |
aspiers | Gemfile.lock makes this easy in Ruby | 11:51 |
dirk | I usually grep the egg files in the .tox directory | 11:51 |
aspiers | hah OK | 11:51 |
dirk | somewhere you can find a textual reference | 11:51 |
aspiers | cmd2 | 11:52 |
aspiers | and futurist | 11:53 |
aspiers | taskflow | 11:53 |
aspiers | traceback2 | 11:53 |
aspiers | OK | 11:53 |
aspiers | I will add it explicitly as you suggested | 11:53 |
aspiers | thanks! | 11:53 |
aspiers | OK, except === is undocumented | 11:55 |
aspiers | https://pip.pypa.io/en/stable/reference/pip_install/#requirement-specifiers | 11:55 |
aspiers | awesome | 11:55 |
aspiers | dirk: is === some weird openstack-requirements thing? | 11:56 |
*** dims has left #openstack-requirements | 12:20 | |
*** e0ne has quit IRC | 12:52 | |
*** e0ne has joined #openstack-requirements | 13:01 | |
*** bnemec is now known as beekneemech | 14:14 | |
*** stephenfin is now known as finucannot | 14:14 | |
*** hberaud is now known as hberaud|school-r | 14:27 | |
*** hberaud|school-r is now known as hberaud | 14:32 | |
*** markmcclain has joined #openstack-requirements | 15:07 | |
*** e0ne has quit IRC | 15:08 | |
*** e0ne has joined #openstack-requirements | 15:11 | |
aspiers | dirk: https://review.opendev.org/#/c/660500/9 is failing on requirements-check and I don't understand why | 15:13 |
*** e0ne has quit IRC | 15:14 | |
*** e0ne has joined #openstack-requirements | 15:15 | |
aspiers | "Requirement for package contextlib2 has no lower bound" when validating test-requirements on Python 3.6.5, even if I add ==0.5.5 to the contextlib2 line in test-requirements | 15:15 |
aspiers | all mentions of contextlib2 are filtered by python_version | 15:16 |
aspiers | so on Python 3 I wouldn't even expect it to think about contextlib2 at all | 15:16 |
AJaeger | aspiers: you have "contextlib2" as requirement, change to "contextlib2>=1.2.3" or whatever is the version you want | 15:18 |
aspiers | AJaeger: that's what I did | 15:19 |
AJaeger | No, let me comment... | 15:19 |
aspiers | but all mentions of contextlib2 are filtered to only apply to Python 2 | 15:19 |
aspiers | AJaeger: OK thanks | 15:19 |
aspiers | AJaeger: I mean, that's what I tried locally and it didn't make any difference | 15:20 |
aspiers | I didn't push to Gerrit | 15:20 |
aspiers | There's also a weird sphinx error | 15:20 |
aspiers | Requirement(package=u'sphinx', location='', specifiers='!=1.6.6,!=1.6.7,<2.0.0,>=1.6.2', markers=u"python_version=='2.7'", comment=u'# BSD', extras=frozenset([])) 'markers': u"python_version=='2.7'" does not match "python_version>='3.4'" | 15:20 |
AJaeger | aspiers: commented... | 15:20 |
AJaeger | sphinx is weird - might be a followup from the other... | 15:21 |
finucannot | aspiers: Ignore that warning | 15:21 |
aspiers | AJaeger: like I said, that's what I already tried locally and it doesn't change anything | 15:21 |
finucannot | It's just a warning, not an error. It's trying to match each requirement one by one. The version markers don't match because there's another entry in global-requirements that specifies the 2.7 marker | 15:22 |
aspiers | ah, now I've got it working | 15:22 |
finucannot | We should probably collect those warnings and only issue if no matches can be found whatsoever | 15:22 |
aspiers | yes | 15:23 |
aspiers | but also, what the hell is === ? | 15:23 |
aspiers | in global upper-constraints.txt | 15:23 |
finucannot | um, what? | 15:25 |
finucannot | Oh, I'm not sure. Didn't spot that before | 15:25 |
aspiers | finucannot: https://opendev.org/openstack/requirements/src/branch/master/upper-constraints.txt | 15:25 |
finucannot | aspiers: TIL https://stackoverflow.com/questions/34434133/what-are-triple-equal-signs-and-ubuntu2-in-python-pip-freeze | 15:25 |
aspiers | apparently you are better at google than me | 15:26 |
finucannot | Loads more here https://www.google.com/search?q=requirements.txt+three+equals+signs | 15:26 |
aspiers | Also, "Use of this operator is heavily discouraged and tooling MAY display a warning when it is used." | 15:26 |
finucannot | Yeah, _why_ we use it is beyond my paygrade | 15:26 |
*** zul has quit IRC | 15:49 | |
*** dtantsur is now known as dtantsur|afk | 16:01 | |
*** e0ne has quit IRC | 16:04 | |
openstackgerrit | Matthew Thode proposed openstack/requirements master: Updated from generate-constraints https://review.opendev.org/661189 | 16:27 |
*** ccamacho has quit IRC | 16:30 | |
openstackgerrit | Merged openstack/requirements stable/stein: Fix where we use constraints https://review.opendev.org/661144 | 16:50 |
openstackgerrit | Merged openstack/requirements stable/rocky: Fix where we use constraints https://review.opendev.org/661145 | 16:50 |
*** hberaud is now known as hberaud|gone | 17:03 | |
openstackgerrit | Merged openstack/requirements stable/pike: Fix where we use constraints https://review.opendev.org/661147 | 17:29 |
*** e0ne has joined #openstack-requirements | 17:54 | |
*** finucannot is now known as stephenfin | 18:05 | |
*** e0ne has quit IRC | 18:26 | |
*** e0ne has joined #openstack-requirements | 18:31 | |
*** tosky has quit IRC | 19:16 | |
*** aspiers has quit IRC | 20:38 | |
*** aspiers has joined #openstack-requirements | 20:47 | |
tonyb[m] | If we have ==1.2.3 and a project creates 1.2.3.1 it is a candidate with === it isn't | 20:51 |
openstackgerrit | Matthew Thode proposed openstack/requirements master: Updated from generate-constraints https://review.opendev.org/661189 | 20:52 |
tonyb[m] | aspiers: I'll red the scroll back and see if I have a specific answer | 20:55 |
*** e0ne has quit IRC | 21:40 | |
openstackgerrit | Merged openstack/requirements stable/queens: Fix where we use constraints https://review.opendev.org/661146 | 22:24 |
prometheanfire | stupid rh :( | 22:52 |
prometheanfire | 2019-05-24 21:06:58.590007 | ubuntu-bionic | ContextualVersionConflict: (urllib3 1.25.3 (/home/zuul/src/opendev.org/openstack/requirements/.tox/py27-check-uc/lib/python2.7/site-packages), Requirement.parse('urllib3<1.25'), set(['openshift'])) | 22:52 |
prometheanfire | they are capping kubernetes as well | 22:52 |
prometheanfire | and their upstream isn't that responsive | 22:52 |
tonyb | AJaeger: I replied on that review but the TL;DR: Yes we want to get that done and yes I'm keen to help | 23:02 |
prometheanfire | tonyb: not sure if you can poke anyone re ^ | 23:04 |
tonyb | prometheanfire: Not really perhaps amcrae can but he isn't here. | 23:06 |
tonyb | aspiers: Looks like you're all fixed. | 23:08 |
aspiers | tonyb: maybe | 23:08 |
* tonyb think that === is the right thing to use for a constraint as it's *explicitly literal* whereas '==' is too flexible. | 23:08 | |
aspiers | tonyb: I don't really understand everything I did fully, but I think it's probably working | 23:09 |
* tonyb is displeaseed to see 'Use of this operator is heavily discouraged' | 23:09 | |
aspiers | Yeah I understand === now | 23:09 |
tonyb | aspiers: You said "use the library on py 2.7* and constrain it to excatly this version in the l-c jobs" | 23:10 |
aspiers | I guess I need to read https://docs.openstack.org/project-team-guide/dependency-management.html | 23:10 |
tonyb | aspiers: please do and ask questions, as is common (I think) with docs they're written by people that know the topic which means they often have base assumptions that aren't gererally known | 23:11 |
aspiers | one thing I didn't understand is why the lower-constraints check would care about lines specifying python 2, if it's running the check on python 3 | 23:11 |
tonyb | so seeing where you struggle for understanding would be helpful | 23:12 |
prometheanfire | tonyb: well, if you can bug them when you see them that'd be nice, it's annoying to have them cap the rest of openstack | 23:12 |
tonyb | aspiers: I *think* that's just an aspet of our tooling being dumb/taking shortcuts | 23:12 |
prometheanfire | especially urllib now | 23:13 |
tonyb | prometheanfire: You could just open an issue on GH (if you haven't already) | 23:13 |
aspiers | also upper-constraints has contextlib2===0.5.5;python_version=='2.7' but global-requirements has contextlib2;python_version<'3.0' | 23:13 |
aspiers | why not use the same python version specifier? | 23:14 |
tonyb | aspiers: So that's a slightly sore point as I really want them to match so I think that <='3.0' shoudl always be written as =='2.7' but .... | 23:15 |
tonyb | the reason we don't emit <'3.0' in u-c is because they way we generate the u-c file basically installs g-r in multiple python versions so it knows that it's in 3.4 ... 3.6 (we don't do 3.7 yet IIRC) | 23:16 |
tonyb | we could add logic to emit that as <'3.4' but currently we just don't attempt to do that and instead write one entry for each python_version | 23:17 |
tonyb | so basically we wrote the simple tool and then introduced inconsistencies because g-r is (kinda0) for people and u-c is for computers | 23:18 |
tonyb | aspiers: is that any clearer? | 23:18 |
aspiers | possibly, my brain's a bit too frazzled at this time of night/week | 23:18 |
tonyb | s/<=/</ but you get the point | 23:18 |
aspiers | I'll have to come back to it when I'm fresher | 23:18 |
tonyb | aspiers: all good It's friday (for you) | 23:19 |
tonyb | aspiers: you should knock off ;P | 23:19 |
aspiers | yeah, and you should be enjoying your weekend :) | 23:19 |
tonyb | pfft | 23:19 |
tonyb | Kids are building lego I'm shopping online it's all good | 23:20 |
aspiers | :) | 23:20 |
prometheanfire | tonyb: I did, not much is being done about it (a couple of weeks ago for kubernetes, just let them know about urllib3) | 23:20 |
tonyb | prometheanfire: okay. | 23:23 |
prometheanfire | https://github.com/openshift/openshift-restclient-python/issues/289 | 23:23 |
* tonyb subscribes but I doubt we'll get much traction | 23:24 | |
prometheanfire | ya | 23:25 |
prometheanfire | upstreams that cap bother me on a deeper level than is probably warranted | 23:25 |
tonyb | prometheanfire: which is kinda funny as we (OpenStack would defensivly cap as openshift is doing) until juno | 23:26 |
prometheanfire | yep, that was fixed :P | 23:29 |
* tonyb goes to build some lego | 23:35 | |
prometheanfire | the lego saturn 5 was awesome | 23:47 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!