Wednesday, 2024-05-01

gouthamrhi tc-members: any more objections in unblocking this for the freezer team: https://review.opendev.org/c/openstack/governance/+/914911 ?01:02
opendevreviewBrian Haley proposed openstack/project-team-guide master: Improve terminology in project-team-guide tree  https://review.opendev.org/c/openstack/project-team-guide/+/91786416:17
tkajinamgmann, (I could not find the appropriate channel) I don't know if we really have to enforce min bump for all versions to drop old exclude because min version bump has tradeoff. Since some projects already bare cleanup IMO the decisions would be dependent on project.17:20
tkajinamI'm happy to update these in case min bump sounds better for a specific project but I'm hesitant to update all of theses if a specific project team is happy with bare removal17:21
gmanntkajinam: requirements.txt is the best effort to keep min and working version up to dated. As you know, those are not tested also. we should not remove the info of what broken versions we have so that people can avoid installing them17:21
tkajinamso do you want me to submit 30 follow-ups to bump mins in all repos which already merged the cleanup ?17:22
gmanntkajinam: I do not think it is project wise choice it is matter of how close they are correct17:22
tkajinamI can do it technically but I don't know if bumping min to exclude 2+ years old version is really worth paying effort17:22
gmannwe should not have removed the known breaking version at first place itself17:22
tkajinamthe requirement files in each project hasn't been sync really these days. for example core global-requirements contains more know broken versions but these are not actually synced17:23
gmannI am sure someone will come and say your doc requirements.txt say sphinx 2.1.0 can bt used but it does not work17:23
tkajinam2.1.0 was released in Jun 2, 2019. Should we really care people trying to use such ancient versions ?17:24
gmanntkajinam: yeah but we should not make it more worst. as those are not tested, we should be more clear here than less clear. if that is being tested and verified one that it could be fine17:24
JayFYou're both kinda right? I'd posit that getting those conversations to happen and getting those excludes in the global requirements would be a benefit of this effort, yes?17:24
gmanntkajinam: why not, if we say min version we support is 2.0.0 then we cannot say do not try 2.1.0. that is why bupming it to >2.1.0 is right one17:25
gmannand as lower constraints testing has been gone, we should have known working version info in requirements.txt otherwise I do not see any value of having min version there at all17:26
tkajinamI'm very skeptical that 2.1.0 works now. yes it may loose our old old knowledge but I don't know keeping it is really useful nowadays17:27
tkajinamgiven the tradeoff we have to pay to update min properly17:27
gmannwhen we removed the lower constraint testing, we had debate on keeping these min version in requirements.txt file and we did note remove it from there to have a correct upto dated info. otherwise we can have this file same as g-r17:28
tkajinamI ended up opening 20+ pypi pages to find the "next version to the known bad version". I could do it for a few repos but doing it to all repos is a bit of work, you know17:28
JayFtkajinam: with my Ironic hat on; I trusted our CI to validate that none of the bad versions were getting installed for our testing ... I think that's a reasonable approach 17:28
gmanntkajinam: we have those breaking changes excluded in that file so that info about breaking changes are gone if we do not bump min vesion to the one which exclude the breaking one17:29
tkajinamJayF, now that's guaranteed by upper-constraints17:29
JayFInformation is never lost in git, though. It's in the repo even if not on HEAD.17:29
gmannI will prefer we keep those as it is if not excluding the breaking one in min version17:29
JayFtkajinam: that was the assumption I worked under generally :)17:29
gmannwe do not test min version anywhere17:29
gmannI am ok to have that g-r change but requirements.txt file should not remove the known breaking version exclusion we already have17:30
tkajinammaybe we should stop comparing excludes if these are not maintained in g-r17:31
tkajinamthat's the easiest approach than updating requirement files in each repos17:31
tkajinamfor every cleanup17:31
tkajinamfrickler, ^^^17:31
tkajinamunless we care a smart tool to bump min properly.17:32
gmannI am not sure but that is project best effort that if they know any breaking version then it is documented in requirements.txt17:32
gmanng-r is one thing but requirement file with extra info on min version and excluding breaking versions on project side is another info for package maintainers 17:33
tkajinamin the past bad versions were kept in global req and was synced to each repos. since that sync was stopped, know bad versions are maintained per project and we really don't have very good reason to force consistency of excludes IMO17:37
tkajinamif we want to apply different policy about maintaining bad versions/min in g-r and individual repo17:37
gmannIMO, we should otherwise our requirements.txt files will be confusing things for them. which tell them wrong info about min version17:38
tkajinammin version itself works. the problem is that there are a few versions newer than min which may not work17:38
clarkbis the problem that distro packagers have to now scan all requirements.txt to make sure the distro version doesn't conflict with any known bad version?17:38
clarkbI wonder if we can just try to keep that info in global requirements as much as possible even if it isn't synced. I guess this would always run the risk of being incomplete17:39
gmanntkajinam: I thnik min versions means any version above this version works fine until the upper constraints17:39
gmanni am not sure distro packagers scan all but from debian we receive feedback that they wanted to keep min version info in requirements.txt even though they wanted to test those also.17:40
gmannmy main point here is do not remove the already known breaking version info from there. if we do not improve those or keep up to dates it is fine but do not remove existing known breaking versions. that is why bumping min should be careful so that we do not lose that info17:42
tkajinamhttps://review.opendev.org/c/openstack/requirements/+/91786917:44
tkajinammaybe this is the right step given these feedbacks then.17:45
tkajinamclarkb, IIUC excludes in g-r and ones in individual repos are not fully synced but the excludes in individual repos should be listed in g-r17:47
tkajinamclarkb, so g-r was the place where all excludes were maintained. projects can pick up some of these and add them to their own requirements17:47
tkajinamthat's also the reason why we are facing the broken requirements-check job now17:48
gmannwe can still remove the excludes if we bump the min version higher than the excludes one right? that fix the things and does not require g-r revert17:48
tkajinamwe can do but I don't know how much gain we may have after I learned how much effort we may need to react on clean up.17:49
gmannok but that is same as existing proposed changes we just need to update the min version making sure they are higher than excluded one17:51
tkajinamI don't know if that is same17:55
tkajinamnow we have two options basically 17:55
tkajinam1. revert that g-r cleanup then no change is needed in req files in each repo17:56
tkajinam2. keep that g-r cleanup and remove old versions and bump min version to exclude the bad versions17:56
tkajinammy point is 2 requires really large effort while it does not really provide much benefit. I could accept the tradeoff if we don't care about min bump but if we need it then it really requires non-automated effort (unless someone develops a tool)17:58
tkajinamwhich I don't think really worth paying effort for17:58
tkajinamok tonyb approved that revert17:59
fricklerIMHO listing broken versions in requirements would only be worthwhile if we made an attempt for these to be complete, which given the rate of u-c updates we decidedly don't do currently18:01
tonybtkajinam: We can for sure fixup the tooling.  But as you point out there is effort there and the quick revert is IMO the best near term fix18:01
fricklerso I am very much in favor of removing old excludes. we could discuss whether 2 years is not enough and bump to 3 or 5 years if poeple prefer18:01
fricklerand I also don't think enforcing projects to bump minor constraints is helpful. if nova wants to do it, let them, if designate doesn't, fine too18:02
tonybfrickler: I think we need as a minumum to ensure that removing them from g-r doesn't break the requirements-check jobs of $lots of repos but yes I think removing the old list is a good idea18:02
gmannwhatever way we prefer but we should have correct information about min version. not excluding the breaking one in min version is not right as it tells that the breaking version can work. that is why my concern on those changes.18:04
fricklerwell I do think that the reqs-check job enforcing the drop of old excludes to be mirrored by projects is a good idea actually18:04
gmannexisting info may not be up to dated but at least correct 18:05
fricklergmann: we do not have correct information about min versions anyway, we don't test it18:05
fricklergmann: with your reasoning, we should only allow versions in u-c and exclude everything else18:05
gmannyeah but that is best effort by project team to keep them up to dated/correct. current proposed one is making it more wrong 18:05
fricklerI don't agree, it does expect on what information you expect to see in a projects reqs.txt18:06
gmannfrickler: no, I am saying best effort to keep min version as correct. at least do not update them to incorrect info18:06
fricklerdropping min version completely isn't more wrong than having some untested guess of what could be a min version18:07
fungii doubt distro packagers care about the excludes in our reqs/constraints. but you could always ask them18:07
fungitheir primary purpose has always been to temporarily fix our upstream testing until newer versions of deps get released18:08
gmannFor example, in this change, does not it say sphinx 2.1.0 will work where we had info about this version was broken ? https://review.opendev.org/c/openstack/designate/+/917579/1/doc/requirements.txt#b118:08
frickleriiuc zigo already responded yesterday stating they're ok with the latest cleanup18:08
fungidistro packagers are going to generally be backporting fixes to the versions they ship regardless, and so aren't going to ship a "broken" dependency in that sense18:08
gmannI am ok to remove the min version itself form requirements.txt which we tried earlier also but could not do as distro packagers need them18:09
fricklerI don't think anyway needs min versions that are 5 years old. we do need them when projects actually require some recent versions, like < 2y old18:10
gmannor keep them as it is and keep updating them to correct one. but making them more wrong is my concern. 18:10
fricklers/anyway/anyone/18:10
gmannsure, I am ok to bump those my concern only is to bump them to excluding the broken versions we know already18:11
tkajinamI still prefer we leave it to project's decision as we don't really have strict policy about low-req since we made it best-effort18:13
gmannnot sure why "sphinx>=2.1.1" is not the right way than "sphinx>=2.0.0" where we know 2.1.0 is broken version. former one make sure we remove excludes and also bump min version so that info about broken version are correct18:13
tkajinamgmann, I don't disagree with the idea but I'm saying that's not an easy update atm18:13
tkajinambecause you have to find that sphinx 2.1.1 is the next version of 2.1.0 to make that update correctly18:14
JayFI think I agree about the ideal case, gmann, but I also agree with tkajinam not wanting to do *even more* than is already being done across so many repos... 18:14
JayFthis is why I'm OK with a solution that might push a little more effort down on distro packagers (even though I'm not convinced this will), and if it's too onerous they cna push back18:15
JayFbut at some point we run out of hours in the day or other things suffer from trying to cover all the edges18:15
gmannI think doing it in-progress one should be doable and we can leave the one already merged. most of the deps are common in many projects for example sphinx, oslo lib etc18:16
gmanntkajinam: do you see many different deps across projects to determine their min version ? If so I can help you for those in  gerrit comment and you can update. If you want to at least fix the not merged one18:18
gmannbut up to you if you want to spend more time on those and as revert is also approved18:18
tkajinamgmann, some of these are common but not totally same. I saw different excludes for the same library 18:18
gmannok18:19
tkajinamgmann, it's technically doable, yes, if some one will pay effort for it. that's my main point.18:21
tkajinamI'm leaving now. the remaining patches may not be merged with -1. we can resume discussion later when we revert the revert18:23
gmanntkajinam: ack, yeah let's discuss if revert-revert is happening. it might be late for you, take rest.18:26
fungijust to be clear, the origin of this discussion was cleaning something up in openstack/requirements broke requirements sync jobs for some projects? if so, i thought we had declared that those were no longer necessary to run and could be removed19:00
fricklerfungi: no, the cleanup broke the reqs-check job which complains if a project has an exclude that isn't recorded in g-r19:31
fricklerwe could though consider to relax that part of the check19:31
fricklerbut maybe that would really be an issue for distros then19:32
fungigot it, there were versions in some projects that weren't allowed but were going to be allowed according to the changed global-requirements.txt19:34
fungii was worried that some individual projects were still running the job that used to check that the versions they specified in requirements.txt matched verbatim what's in global-requirements.txt, which hopefully they've not been doing for years now19:36
opendevreviewMerged openstack/governance master: Add frrouting route under OpenStack-Ansible governance  https://review.opendev.org/c/openstack/governance/+/91001922:07
opendevreviewMerged openstack/governance master: Transition Freezer project to DPL  https://review.opendev.org/c/openstack/governance/+/91491123:05
opendevreviewMerged openstack/governance master: Add openstack-helm-plugin git repository  https://review.opendev.org/c/openstack/governance/+/91600923:37

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!