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