Monday, 2024-12-30

clarkbgmann: gtema cardoe fungi I've done a bit of thinking about PBR and how to incrementally step it along to modern python packaging sanity. I think the first step is likely to have everything add pyproject.toml files being very explicit about their build and install time dependencies that way. This includes PBR (so far PBR has not added a pyproject.toml out of fear that if we got16:12
clarkbthe implementation wrong it may break but things seem to mostly work so far). Then PBR can add an explicit runtime dependency on setuptools for python3>=3.12 (might do the same thing wiht six)16:12
cardoeThat makes sense to me.16:12
clarkbAt that point anything needing PBR to build and install pacakges should be using pyproject.toml and have that angle covered and anything needing PBR at runtime should lsit in requirements.txt which will transitively pull in setuptools16:12
clarkbat that point I think we're in a pretty good compatibility position and can start refactoring/rewriting/removing bits of PBR that make less sense16:13
clarkbbut that s a bit more handwavy as I'm not sure what all we would do along those lines16:14
cardoeYeah I was wanting to bring up that we should require our packages to be PEP 517 compliant (I think that’s what setup tools calls the requirement to have a pyproject.toml calling out your build deps)16:14
fungitechnically pbr does have a pyproject.toml file but under a different name so that it won't get used automatically for now16:14
clarkbfungi: yes its just a matter of renaming the file I think and making a release of that and ensuriong we didn't break anything16:15
fungiit's shipped as "pyproject.toml.future"16:15
clarkbif we do break things we pull the release from pypi and figure it out from there16:15
fungithough also, i've been using pbr as a pyproject.toml build backend just fine for a year or two in some test projects, so it should "just work"16:16
clarkbyup16:16
clarkbI would do the runtime requirements addition as a separate release as I'm actually more concerned about that not quite working as expected for projects that haven't moved to a prproject.toml yet16:16
clarkbspecifically I'm not sure how the old sometimes easy_install path might handle pulling in those dependencies to install pbr as a build dep16:17
clarkbin theory it would noop on those systems since setuptools and six are already going to be there I Think16:17
clarkbbut there is possibility we accidentally something16:17

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