21:00:49 <timburke> #startmeeting swift 21:00:49 <opendevmeet> Meeting started Wed Sep 27 21:00:49 2023 UTC and is due to finish in 60 minutes. The chair is timburke. Information about MeetBot at http://wiki.debian.org/MeetBot. 21:00:49 <opendevmeet> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 21:00:49 <opendevmeet> The meeting name has been set to 'swift' 21:00:57 <timburke> who's here for the swift team meeting? 21:01:11 <acoles> o/ 21:01:22 <zaitcev> o/ 21:02:42 <timburke> as usual, the agenda's at 21:02:45 <timburke> #link https://wiki.openstack.org/wiki/Meetings/Swift 21:02:53 <timburke> (though i forgot to update the date) 21:03:00 <timburke> first up 21:03:03 <timburke> #topic vPTG 21:03:14 <timburke> only a month away now! 21:03:45 <timburke> please vote on meeting times; i'll plan on selecting and scheduling them this coming week 21:03:52 <timburke> #link https://framadate.org/liKzqQw5lZQW8Pvf 21:04:31 <timburke> and please add topics to the etherpad -- i haven't yet, either, but i know we have interesting topics to discuss! 21:04:37 <timburke> #link https://etherpad.opendev.org/p/swift-ptg-caracal 21:05:05 <timburke> any questions/comments/ideas around the ptg? 21:06:31 <zaitcev> Well, it's a vPTG. How about that. 21:08:46 <timburke> all right, next up 21:08:55 <timburke> #topic py312 21:09:11 <timburke> python keeps moving forward! and it keeps removing things :P 21:10:03 <zaitcev> Le sigh. 21:10:38 <timburke> 3.12.0 will be coming out next week, and i wanted to try to stay ahead of things a little, so i started testing out the latest rc 21:11:13 <timburke> dependencies look like they'll be a little interesting... 21:11:49 <timburke> greenlet seems on top of it -- they've got their own rc out that seems to work on py312 21:12:34 <timburke> eventlet still doesn't technically support py310... though it seems to work well enough on py310 and py311 for our purposes 21:13:14 <timburke> (and least, for a development environment -- there may well be some issues lurking that you'd notice in prod) 21:14:43 <timburke> master eventlet on py312, though, doesn't work -- there are some ssl helpers that got removed, some changes to _thread that need to get mirrored in eventlet.green.thread... 21:15:49 <timburke> and keystonemiddleware (at least) is using pkg_resources, which has been removed 21:17:21 <timburke> coming back to code in swift: distutils has also been removed 21:17:27 <zaitcev> Next step, port Swift from eventlet to Gunicorn. 21:17:37 <zaitcev> Ugh 21:17:57 <timburke> which is the real story behind the chain ending at 21:17:59 <timburke> #link https://review.opendev.org/c/openstack/swift/+/896473 21:18:42 <timburke> there's a handful of patches all removing our use of distutils; most of them are only in tests, only that last one touches code under swift/ 21:19:41 <acoles> keystonemiddleware is out of tree right? 21:19:42 <timburke> zaitcev, you say that -- i wonder if we might be able to really truly drop py2, then switch it all out to async stuff... 21:20:09 <timburke> acoles, yeah -- there are some unit tests that cause us to import it, though 21:20:18 <acoles> ah 21:20:55 <zaitcev> acoles: if you're willing to do that, there's a far wider selection that just gunicorn. 21:21:43 <timburke> https://github.com/openstack/swift/blob/master/test/unit/common/middleware/s3api/test_s3api.py#L38 in particular 21:23:01 <timburke> zaitcev, and as a happy side-effect, own the wsgi server/http parsing part 21:23:38 <timburke> we've been doing that more and more anyway; may as well rip off the bandaid, right? 21:24:50 <acoles> 🩹 21:25:33 <timburke> two bits of good news on the py312 front: 21:26:50 <timburke> first, we already got rid of our use of pkg_resources under swift/ -- though a quick grep says we still need to fix up test/unit/obj/test_auditor.py 21:27:24 <timburke> second, there didn't seem to be any show-stoppers like the segfault we discovered when we started testing under py311 21:29:15 <zaitcev> How unfortunate, I bet it's what loads watchers. 21:29:26 <zaitcev> I can look at that. 21:29:59 <zaitcev> Meanwhile, acoles would do great to look at https://review.opendev.org/c/openstack/swift/+/787656, which I updated recently. 21:30:00 <timburke> i think that's all i've got to say about py312 -- if you've got cycles to spare helping out, i could use some reviews on that chain (they should all be pretty quick!) and we ought to stamp out that last `import pkg_resources` that isn't in some `try/except ImportError` handling 21:30:37 <acoles> ack 21:31:13 <timburke> zaitcev, yes and no -- see https://github.com/openstack/swift/blob/master/swift/common/utils/__init__.py#L5847-L5852 -- on newer python, we're fine using importlib 21:33:00 <timburke> all right, last topic i had 21:33:06 <timburke> #topic stable gates 21:33:44 <timburke> recently, i wanted to backport a patch to wallaby to fix an issue noticed by klamath 21:34:16 <timburke> then was sad to see that most (all?) of the py2 jobs failed 21:34:42 <timburke> this got me looking at the broader state of stable gates in general 21:35:03 <timburke> 2023.1 and zed were fine; yoga and xena were also broken 21:35:39 <timburke> yoga is now fixed 21:35:42 <timburke> #link https://review.opendev.org/c/openstack/swift/+/896282 21:36:20 <timburke> but i want to fix xena and wallaby as well -- so i'll probably be working on that over the next week 21:36:58 <timburke> once those are working again (and i get that patch backported), i'll start checking even older branches 21:37:39 <timburke> all right, that's all i've got 21:37:47 <timburke> #topic open discussion 21:37:56 <timburke> anything else we should bring up this week? 21:38:24 <zaitcev> \()/ 21:41:57 <timburke> all right, i'll let you guys go then 21:42:07 <timburke> thank you all for coming, and thank you for working on swift! 21:42:10 <timburke> #endmeeting