Friday, 2021-09-10

yoctozeptoclarkb: thanks; I am unsure if I get to it today though06:17
*** jpena|off is now known as jpena06:52
opendevreviewMerged openstack/tempest master: Use the master constraint in tox.ini again  https://review.opendev.org/c/openstack/tempest/+/80803310:58
*** dviroel|afk is now known as dviroel11:09
*** jpena is now known as jpena|lunch11:26
opendevreviewMerged openstack/devstack-plugin-ceph stable/stein: Fix the setup of the stable/stein branch  https://review.opendev.org/c/openstack/devstack-plugin-ceph/+/80777312:14
*** jpena|lunch is now known as jpena12:19
amodiartom_: hi, https://review.opendev.org/c/openstack/whitebox-tempest-plugin/+/786979/24/.zuul.yaml#211 since this passed now, do i need to enable the job in gate/jobs also or just being in check is okay?14:00
artom_amodi, maybe hold off for now, let's get some review in there, and when it's ready to merge we can do the job config properly14:02
amodiartom_: sure! will wait for lyarwood once he gets back14:04
*** artom_ is now known as artom14:06
opendevreviewRadosław Piliszek proposed openstack/devstack master: [WIP] Test running on Debian Bullseye  https://review.opendev.org/c/openstack/devstack/+/78908314:57
kopecmartingmann: regarding releases, only 4 branched projects and patrole remain .. is it time to proceed with devstack? 15:18
kopecmartingmann: because i'm a little confused by "Devstack and Grenade only have branches, which need to be cut when other projects get stable/* branches during a release"15:18
toskykopecmartin: iirc those are branched after the "service" projects are branched, which hasn't happened yet for xena15:19
kopecmartinah, i see15:19
kopecmartintosky: thansk 15:19
*** jpena is now known as jpena|off15:47
gmannkopecmartin: devstack and grenade needs to be done after all projects branches are created. I think during sept 20 or so. I will check and let you know15:51
gmannkopecmartin: for patrole, I will fix image one and see if i can fix volume test too if not then I will go with skip and then release patrole15:52
gmanngive me about 2-3 hr or so. you are around by that time ?15:52
kopecmartingmann: not really, can it wait till Monday?15:58
gmannkopecmartin: ok, yeah monday is deadline so should be ok. or let me see what all changes if less then i can merge and push release patch. and on monday you can check15:59
kopecmartingmann: i can check some reviews during the weekend as well, i can check emails and messages whenever i'll be near my pc, so no problem, just a direct communication is problematic16:01
gmannkopecmartin: no issue, it is fine. do nto want to ruin your weekend. 16:02
spotzAnyone seeing issues when running stack.sh on Focal with master devstack exiting with 16:10
spotzFound existing installation: simplejson 3.16.016:10
spotzERROR: Cannot uninstall 'simplejson'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.16:10
kopecmartinspotz: i've hit that too (thought it's a random issue) - I used a workaround mentioned here - https://stackoverflow.com/questions/60635962/while-installing-openstack-on-ubuntu-18-04-i-am-stuck-at-error-cannot-uninstal16:12
clarkbspotz: I'm not aware of specific issues with simplejson but that is a known general type of problem. Basically it implies you have python-simplejson or python3-simplejson installed on the system and pip cannot uninstall it16:12
clarkbThe workaround is to manually remove the package with apt first assuming it doesn't remove anything else important to you16:12
clarkbif it does remove something else important then you may need to consider using a different installation16:12
spotzIt;s a fresh build to make the master for Grace Hopper Conference so nothing important. I knoow I didn't run into it when I built in May/June foor the July GHC16:13
spotzkopecmartin clarkb - I'll remove it and see what heppens16:14
clarkbspotz: then ubuntu may have added packages to their images16:14
clarkbthis is one reason we build our own images to avoid that16:14
spotzUnable to locate package simplejson16:15
spotzThis will be fun:)16:15
clarkbspotz: it is probably python-simplejson and/or python3-simplejson16:15
clarkbdebuntu prefix all the python packages with those prefixes16:16
spotzpython3:) And I'm so not used to my debian/ubuntu coommands anymore it doesn't help:)16:16
spotzIn hindsight I should have saved the base image from the last GHC but I try too be a good guest on borrowed infrastructure16:18
clarkbalso zigo ^ fixing that in debuntu would be really helpful. The python packages should stop using distutils and use setuptools16:18
spotzpyasn1-module too.16:29
spotzpython3-pyasn1-modules actually:) 16:32
clarkbspotz: do you know what is pulling those in on the image? those are both serialization format systems16:36
spotzclarkb: It might be from how City Network does their installs? 16:37
spotzSoo if they get a base that has it from Ubuntu vs installing from an ISO16:38
clarkbya it could be something the cloud adds to the images too16:38
spotzAt least I get too play Sysadmin a few times a year:)16:40
spotzOk looks like just those 2 packages16:52
spotzkopecmartin: Do you want me to put a woorkaround docs patch up?16:54
kopecmartinspotz: you mean to include the workaround from stackoverflow in the doc?17:10
clarkbhttps://zuul.opendev.org/t/openstack/build/a34a9cc3662a46b7aaf84342cf20ec0a is another gate reset due to pcp package install failures17:38
clarkbthats at least one gate reset the last 3 days17:38
spotzkopecmartin: Well to remove the 2 packages if you run into an issue18:10
clarkbspotz: the problem isn't specific to those two packages18:11
spotzclarkb: Bleh ok18:11
clarkbit is a generic problem with distro packaging and pip and can hit any distro and any package as long as the distro packages use distutils instead of setuptools to build and they are installed from distro packages when you want to install them via pip18:11
clarkbthis is why i mentioned to zigo it would be useful if debian stopped using distutils completely in their python packaging18:12
clarkbbut similar problems exist on red hat distros too (though maybe they are replacing distutils more quickly I'm not sure)18:12
spotzI can't say for certain as my last Ubuntu install didn't have the issue and neither did my RHEL or CentOS ones so unclear comparisons18:20
clarkbya it dpeneds on the packages that are installed. I'm fairly certain neither of those packages were installed on your previous ubuntu image for one reason or another18:20
clarkbbut when they are it breaks18:20
clarkbTo fix this on the devstack side of things we would need to move all of devstack's installation into a virtualenv. I started work on this back when this issue first happened. But there didn't seem to be general interest in going that route in part because it is a huge uplift and particularly tricky with grenade18:27
zigoclarkb: What are we suppose to replace "python3 setup.py install" with?19:20
opendevreviewGhanshyam proposed openstack/patrole master: Fix gate: fix the failing network, image test  https://review.opendev.org/c/openstack/patrole/+/80254920:07
clarkbzigo: you don't replace setup.py install. You replace distutils with setuptools20:25
clarkbzigo: distutils does not produce the necessary metadata to allow pip to work but setuptools does. WIth distutils produced packages like pyasn1 and simplejson you get these errors20:25
clarkbzigo: https://salsa.debian.org/python-team/packages/simplejson/-/blob/master/setup.py#L6-9 I'm guessing that setuptools import is failing20:28
clarkbhttps://salsa.debian.org/python-team/packages/pyasn1/-/blob/debian/master/setup.py#L56-68 same thing with pyasn120:28
clarkbzigo: pyasn1 lists setuptools as a build depends but simplejson does not. Maybe the pyasn1 issue has since been fixed but simplejson hasn't?20:33
zigoclarkb: I'm not sure why Piotr Ożarowski removed setuptools, though that was back in 2011...20:37
zigoclarkb: If you think that's a bug, please file it.20:38
clarkbAnyway all python packages should be built with setuptools instead of distutils if you don't want pip to explode when trying to install them20:38
zigook, that's what I do ... :)20:38
clarkbzigo: you are listed as a maintainer on simplejson and it does not do this :)20:38
zigoclarkb: The only thing I did on this package is removing Python 2 support... :)20:39
zigoEverything else was done by Piotr.20:39
zigoclarkb: Can you join #debian-python and ask him?20:39
clarkbok20:40
zigoHe's normally very responsive (with the usual "irc is asynchronous" stuff... :) )20:40
* zigo love the fact that both Debian and OpenStack are on OFTC now ! :)20:40
clarkbI'm not that interested. Its a problem across all distros and I don't have the time to track this down for every package on every distro. Instead as I mentioned before I gave it an honest effort to install everything in virtualenvs and gave up when consensus was that no one wanted to mvoe forward with that20:40
clarkbI'm just calling it out so that python packagers are generally aware of it and can improve things over time. Because ya I don't have time to drive this acorss all the packages in all the distros20:41
zigoThanks for the info.20:41
zigoIt could be a good idea to send a quick mail explaining this (better than I would) to debian-python@lists.debian.org20:42
zigoDo you think you could do that?20:42
zigoI don't really understand why using distutils is bad ...20:42
zigo(even if I trust you when you say it...)20:42
clarkbzigo: distutils does not add necessary metadata to the resulting package build that pip needs to uninstall the package when updating it globally on the system20:42
clarkbsetuptools does add that metadata20:43
zigoLike what metadata for example ?20:43
clarkbI'm trying to f ind those details again20:43
clarkbit was pip 10 that changed20:43
zigoThanks !20:44
zigobrb20:44
clarkbhttps://github.com/pypa/pip/issues/4805 is the main upstream issue in pip. Looks like ianw and fungi were quite active on it at the time. Unfortunately it doesn't seem to specify which files are necessary either. Though I'm still reading through it20:48
fungizigo: it's already been discussed on the debian-python ml i think, it's part of the recent talks with python upstream on distro packaging pain points20:51
clarkblooks like distutils does not write out any indication of what files were installed in the egg info20:53
clarkbsetuptools/pip do this in the RECORD and top_level.txt files20:53
clarkbfungi: do you happen to have a link to the archives for that discussion/20:55
clarkbI'm curious if the assertion on both sides seems to be indifference (though using setuptools to install should have no impact and is even the packages preference based on the import attempts)20:55
fungiyeah, the general recommendation from the upstream python packaging community could be summarized as "make sure your distro packages install python package metadata" (they're not generally going to recommend setuptools either since they seem to be in a hurry to kill it off too)20:55
clarkbya but 99% of all packages out there continue to use setuptools :P20:56
fungii'll have to dig it up after i finish cooking dinner, but there's been a bit covered recently on the debian-python ml and much more on the packaging topic on the python discourse20:56
clarkbthat is independent of the distros choice20:56
clarkbfungi: also the default of the pyproject toml stuff is to use setuptools if you don't specify otherwise iirc20:56
fungiright, that's a "legacy fallback" in their minds20:57
clarkbare they actually killing it off? I'm not even sure what the alternatives at this point are as those seem to be theoretical at this point still20:57
clarkbfungi: fwiw in the case of simplejson they appear to be using distutils and not setuptools so isn't even a case of nesuring the right files are in the package :/20:58
fungithey won't kill it off any time soon, it's there to cover all that outdated/abandoned software which hasn't jumped on the pyproject.toml/poetry/flit/etc newness20:58
clarkbfungi: aiui pyproject.tom poetry etc all still need some tool to make the package and that is setuptools by default20:58
clarkbnone of them provide the package building bits if I undersatnd correctly. They just know how to bootstrap the environment for the package building bits20:58
clarkband people can build alternatives to setuptools now, but I'm not sure that has been done20:59
clarkbits a reasonable way to approach replacing setuptools should someone step up and do that, but I haven't really seen that happen yet21:00
clarkbhttps://lists.debian.org/debian-python/2021/05/msg00027.html is that the thread?21:01
clarkbThat one lists the issue but the discussion doesn't seem to dig into it much. I'm guessing the conversation was largely on the python side then21:04
clarkbI'm having a much harder time digging in discourse though :(21:06
fungiyeah, check the packaging topic on discuss.p.o21:07
clarkbhttps://discuss.python.org/t/pep-632-deprecate-distutils-module/5134 seems related as there is discussion on forcing setuptools21:08
opendevreviewMerged openstack/tempest master: object_storage: retry object creation on Conflict  https://review.opendev.org/c/openstack/tempest/+/80790921:09
clarkbI'll have to defer to fungi for better discourse urls as I need to pop out for a bit now21:12
clarkbhttps://discuss.python.org/t/which-tools-can-uninstall-an-installed-project-and-how/4988 mgiht give background info on uninstall processes and requirements21:14
opendevreviewGhanshyam proposed openstack/patrole master: Fix gate: fix the failing network, image test  https://review.opendev.org/c/openstack/patrole/+/80254921:26
*** dviroel is now known as dviroel|out21:40
fungiclarkb: zigo: it's the pep-668 discussion https://discuss.python.org/t/graceful-cooperation-between-external-and-python-package-managers-pep-668/10302 and also this earlier one https://discuss.python.org/t/playing-nice-with-external-package-managers/196821:45
fungibut yeah, a lot of it was really follow-up to things which apparently happened at pycon21:47
opendevreviewGhanshyam proposed openstack/patrole master: Fix gate: fix the failing network, image, volume RBAC test  https://review.opendev.org/c/openstack/patrole/+/80254922:02
clarkbfungi: thanks22:04
fungiand if you want to skip wading through the historical debates, you can just check out the current draft of pep-668: https://www.python.org/dev/peps/pep-0668/22:07
clarkb#3 is interesting at https://discuss.python.org/t/graceful-cooperation-between-external-and-python-package-managers-pep-668/10302/10#what-problems-do-we-face-2 because the bug listed there originates from this very issue above in fedora. But also I don't think it has anything to do with using /usr/local and everything to do with not creating valid packages in the first place22:10
clarkbit seems the distro has intentionally decided to break us how helpful22:11
clarkbhttps://review.opendev.org/c/openstack/devstack/+/558930 is the devsatck virtualenv work if anyone wants to take a look a resurrect it btw22:15
clarkbit might be slightly simpler now as you don't need to support python222:16
clarkbfungi: skimming the pep it seems to address the underlying issue here which is that we don't need pip to uninstall anything as long as pip installs to a higher priority path (which it does on debuntu and fedora)22:20
fungiyeah, this should eventually get better as a result22:21
clarkblooking back on the virtualenv work I think I got devstack working pretty reliably. Ironic did some weird command stuff that needed to learn about the virtualenvs and grenade made this difficult for reasons I don't fully remember. It is possible to switch but it would require that we actually decide to do that as a whole (openstack wide) and get it done. ianw mentions this in22:22
clarkbhis review of the above change too22:22
clarkbreally the biggest barrier is probably buy in22:22
clarkbthough there are some coordination issues to sort through as well between various projects22:22
clarkbit is good to see that pypa and the distros no longer expect that all problems belong to the other and are working together now too22:25
clarkbits really frustrating that one asserts you should never do a thing. The other asserts you should never do something different. And the users basically get left wondering what the hell they can do22:26
fungiwell, there was also the frustration that pip had a concept of system-wide installation, but eventually both the pip maintainers and the distro package maintainers both said that was something you should never do, *after* we had a very large project heavily dependent on doing just that with a lot of inertia making it hard to turn around22:54
clarkbfungi: and now we're seeing similar use return with containers23:07
opendevreviewGhanshyam proposed openstack/patrole master: Fix gate: fix the failing network, image, volume RBAC test  https://review.opendev.org/c/openstack/patrole/+/80254923:23

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