*** elodilles is now known as elodilles_pto | 06:15 | |
opendevreview | Merged openstack/requirements master: update constraint for oslo.messaging to new release 17.1.0 https://review.opendev.org/c/openstack/requirements/+/954744 | 11:59 |
---|---|---|
stephenfin | fungi: Are you aware of an issue with wheels having their periods replaced with underscores? | 13:40 |
stephenfin | for example: the wheel for oslo.messaging 14.9.2 uses underscores https://pypi.org/project/oslo.messaging/14.9.2/#files | 13:43 |
stephenfin | ...while the wheel for oslo.log 6.1.2 uses periods https://pypi.org/project/oslo.log/6.1.2/#files | 13:43 |
fungi | stephenfin: i'm not aware of any issue with it, no, they should have periods in their names replaced by underscores because that's proper filename normalization for wheels | 13:49 |
fungi | oslo.log is a display name, but oslo_log is the normalized for that needs to appear in wheel and sdist filenames | 13:49 |
fungi | s/for/form/ | 13:49 |
stephenfin | fungi: That may be the case, but it wasn't happening previously. See oslo.messaging 14.9.1 for example https://pypi.org/project/oslo.messaging/14.9.1/#files | 13:50 |
fungi | right, setuptools fixed that last year | 13:51 |
fungi | though i think it didn't take effect for our release builds until we switched from invoking setup.py directly to using pyproject-build since that resulted in pulling in latest setuptools (previously we were building with an outdated setuptools version) | 13:51 |
fungi | around january/february of this year i think, i'd have to check for the exact merge date in zuul-jobs | 13:52 |
stephenfin | fungi: okay. However, it seems pkg_resources on Python 3.8 doesn't handle that normalization. Try this out https://paste.opendev.org/show/bJK73CFFx1rMAQw4e9ej/ | 13:53 |
stephenfin | It will fail because oslo.messaging is not found | 13:54 |
stephenfin | (I'm guessing it should be searching for oslo_messaging) | 13:54 |
fungi | stephenfin: yeah, this has come up several times in recent discussion, it breaks the way we had previously been scanning for entrypoints in wsgi scripts i think? | 13:54 |
fungi | some projects fixed that by backporting a move off the generated wsgi scripts | 13:55 |
stephenfin | I think that's a separate but related issue (i.e. where designate migrated from wsgi_scripts entrypoint to the old school scripts option, which invokes pkg_resources | 13:56 |
stephenfin | ) | 13:56 |
stephenfin | the issue I'm talking about is this one https://review.opendev.org/c/openstack/requirements/+/953420 | 13:56 |
fungi | if we want a proper fix for it, we should probably be normalizing on both sides (list all entrypoints and normalize the names in them with a mapping, normalize the name in what we're searching for, then look for a match in the map and use it to lookup the file) | 13:56 |
stephenfin | the failing py38 job there | 13:56 |
fungi | stephenfin: i wonder if we could just drop that job... stable/2024.1 ceases maintenance in 2.5 months and stable/2024.2 doesn't need to test with anything older than python 3.9 | 14:02 |
fungi | it may not be worth a ton of work to fix a regression in external tool compatibility that will only matter to openstack for a couple more months | 14:03 |
stephenfin | fungi: Quite possibly. It appears the issue was fixed in setuptools v76.0.0 also | 14:04 |
stephenfin | but that requires 3.9 | 14:04 |
stephenfin | I imagine the pypa folks won't care to release a new v75.3.4 release. I will open a bug report in any case. | 14:05 |
fungi | yeah, unless there's a pressing reason to implement a workaround i'd just leave it, but if they do consider making a backported fix then that's great of course | 14:06 |
fungi | assuming we need to merge constraints changes to stable/2024.1 in the coming few weeks i'd say drop that job and assume things generally work or on the rare chance that they don't we'll find out downstream of the constraints update in one of the projects (if they're even merging any more changes on that branch) | 14:07 |
fungi | anything else feels like a lot of effort for little gain, possibly even no gain whatsoever | 14:08 |
fungi | if we'd introduced a backward incompatibility ourselves, e.g. in pbr, it would be a different matter, but we don't have much control over incompatibilities between packages made with new setuptools versions and python that can only run old setuptools versions. thankfully it only impacts a handful of projects with . or - in their names so not pbr | 14:13 |
fungi | and not even for most common uses of those packages, only things that involve lookups by dist metadata | 14:14 |
fungi | frickler did a ton of digging into this general problem too, so probably has opinions | 14:15 |
stephenfin | fungi: https://github.com/pypa/setuptools/issues/5051 | 14:34 |
stephenfin | given the fix is available in later releases, I'm hoping a backport should be realistic but we shall see | 14:35 |
fungi | i assume it'll come down to whether they have any interest at all in maintaning a compatibility branch for an eol python interpreter | 14:47 |
fungi | since 3.8 went eol about 9 months ago | 14:48 |
stephenfin | fungi: An alternative option is for us to stop normalizing for stable/2024.1, though again we're back to the question of effort vs. reward given the remaining support period for 2024.1 | 14:51 |
frickler | stephenfin: fungi: 2024.2 is affected as well | 15:04 |
frickler | also just because py3.8 is eol upstream doesn't make it eol for stable distros | 15:04 |
stephenfin | frickler: but the minimum python version for stable/2024.2 is 3.9? https://governance.openstack.org/tc/reference/runtimes/2024.2.html | 15:05 |
frickler | yes, the wsgi issue even happens on jammy with 3.10 afaict | 15:05 |
stephenfin | and yeah, I get the upstream/downstream difference: I referenced that in the setuptools bug | 15:05 |
stephenfin | you're talking about the designate issue? | 15:06 |
stephenfin | designate/octavia? | 15:06 |
stephenfin | if so, I have a fix up for almost 2 months that has yet to be reviewed, despite repeated requests https://review.opendev.org/c/openstack/designate/+/950569 | 15:07 |
stephenfin | my bet is that the environments are all using system setuptools which is < 75.8.2 (the version where this issue was fixed) | 15:08 |
frickler | stephenfin: ah, yes, that patch might fix it. I'll try to ping people in the dns channel again | 15:10 |
frickler | ralonsoh: do you still have your test patch for 2024.2 open? couldn't find it right now | 15:10 |
ralonsoh | frickler, sorry what patch? | 15:15 |
ralonsoh | I need to go right now, but I'll be back in 2 hours | 15:15 |
ralonsoh | sorry | 15:15 |
frickler | there was a neutron(?) patch depending on the oslo.utils bump for 2024.2 showing the failure, maybe that could add stephenfin's proposed fix as dependency to verify it | 15:35 |
Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!