On Oct 15, 2020, at 10:19 AM, Jeremy Stanley <fungi@yuggoth.org> wrote:

On 2020-10-15 08:39:15 -0500 (-0500), Matthew Thode wrote:
On 20-10-15 12:56:34, Jeremy Stanley wrote:
On 2020-10-15 13:22:36 +0200 (+0200), Thomas Goirand wrote:
[...]
IMO, this is a problem in downstream distributions, not in
OpenStack (unless this influences pip3).

In Debian, I did hard-wire an explicit build-dependency on
python3-setuptools on each and every package. I don't understand
why you haven't done the same thing.
[...]

And even this isn't completely necessary... it's entirely possible
for projects to only use PBR and setuptools for creating packages,
but use other Python stdlib methods (e.g., importlib in Python 3.8)
to access version information and related package metadata during
runtime.

For a large majority of packages, setuptools is required because they
have entry-points.  This mostly includes all the clients, but also hits
some oslo packages as well.

https://docs.python.org/3/library/importlib.metadata.html#entry-points

Maybe time to start thinking about a cycle goal around that?

The latest version of stevedore already uses importlib.metadata instead of setuptools and quite a few of the libraries and services no longer need it either. 

https://review.opendev.org/#/q/topic:osc-performance+(status:open+OR+status:merged)

Doug