*** mhen_ is now known as mhen | 02:09 | |
*** elodilles_pto is now known as elodilles | 07:23 | |
*** mrunge_ is now known as mrunge | 09:20 | |
hberaud[m] | damani o/ please can you review this patch https://review.opendev.org/c/openstack/oslo.db/+/922976 | 09:39 |
---|---|---|
hberaud[m] | JayF: done, I left some comments. | 09:40 |
cardoe | So I wanted to bring up the conversation of pbr as a runtime component vs build time component. | 14:49 |
cardoe | With the upstream Python push to remove things out of the virtualenvs and slim down that runtime environment, we're seeing a lot of stuff like setuptools and such coming out. Which means that pbr will need to pull those in as a dependency. I'm all about less is more and less we have to maintain the better. | 14:50 |
cardoe | So I've been looking how different repos use pbr runtime (granted I've only done a small handful of audits) and it seems mostly around version parsing and handling. | 14:51 |
cardoe | Wondering if we could break that off into it's own smaller installable with less dependencies? I'm willing to do the lift here. | 14:51 |
cardoe | I also don't know if you folks know of other runtime usage. | 14:51 |
-opendevstatus- NOTICE: Gerrit on review.opendev.org is being upgraded to version 3.10 and will be offline. We have allocated an hour for the outage window lasting until 1700 UTC. | 15:03 | |
-opendevstatus- NOTICE: Gerrit on review.opendev.org is being upgraded to version 3.10 and will be offline starting at 1600 UTC. We have allocated an hour for the outage window lasting until 1700 UTC. | 15:06 | |
clarkb | cardoe: I'm working off of logs but part of the reason version handling is in pbr is that pbr needs to parse versions and pbr has done its very best to avoid any dependencies | 15:28 |
clarkb | additionally I'm not sure what benefit you get from splitting the dependencies if you still depend on pbr and the version parsing | 15:28 |
clarkb | you'll just make pbr more complicated | 15:29 |
clarkb | if the goal is to drop pbr and rely on setuptools scm or similar for building/installation then I think figuring that out first is a far more important piece | 15:32 |
clarkb | you can continue to install pbr as a runtime dep in that setup to handle versioning if that remains a necessary component | 15:32 |
-opendevstatus- NOTICE: Gerrit on review.opendev.org is being upgraded to version 3.10 and will be offline momentarily. We have allocated an hour for the outage window lasting until 1700 UTC. | 16:01 | |
cardoe | clarkb: So my question was around I wanna install pbr but don't wanna have to pull in distutils, setuptools, and easy_install when it gets broken out just for the runtime version parsing. | 17:31 |
clarkb | cardoe: I don't think pbr will pull those in since they are assumed to be present due to chicken and egg issues | 17:33 |
clarkb | you may need to refacting some of the imports to avoid pulling in those deps when not needed but it already won't install them for you | 17:33 |
clarkb | s/refacting/refactor/ | 17:34 |
cardoe | just parsing a version is trying to import that stuff. | 17:36 |
clarkb | yes because version info is directly related to package info | 17:37 |
clarkb | so splitting the version out doesn't remove the dependency. Refactoring does | 17:37 |
clarkb | given that goal I guess my suggestion would be to refactor the version handling in place within pbr to remove dependencies on those libs if possible so that pbr version handling as build time and runtime can use consistent versioning while not needing setuptools at runtime | 17:41 |
cardoe | That's what I'm after. | 18:31 |
timburke | cardoe, fwiw, swift has avoided the runtime pbr dep with a block like https://github.com/openstack/swift/blob/2.34.0/swift/__init__.py#L21-L50 (though these days you could probably simplify by assuming importlib.metadata is available) | 18:59 |
cardoe | Now days do we support running from a checkout? Or are we always installing it editable? | 19:01 |
clarkb | I think the way devstack is set up is to assume an editable install | 19:28 |
clarkb | I don't know if running directly out of a checkout is done anywhere | 19:28 |
clarkb | looking at that code Isuspect you could port that into pbr proper and that could be your workaroudn for the runtime deps | 19:29 |
clarkb | basically don't import setuptools/pkg_resources until you absolutely have to and for many that will be nevr | 19:29 |
Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!