On Mon, 29 Aug 2022 12:14:59 +0300 Alexander Kurakin <kuraga...@mail.ru> wrote:
> As known, `python_gen_cond_dep` is for single implementation > packages (either `python-single-r1` or `distutils-r1` with > `DISTUTILS_SINGLE_IMPL=1`) where we're depending on Python packages > which support multiple dependencies. (Thanks Sam James.) > > But in dev-python/twisted [1] we have both: without > `python_gen_cond_dep` (line 27) and with `python_gen_cond_dep` (line > 58). Both of these dependencies are `PYTHON_COMPAT=( python3_{8..11} > pypy3 )` + `inherit distutils-r1` + no set for > `DISTUTILS_SINGLE_IMPL`: [2], [3]. > > What's the difference? Thanks! In twisted's BDEPEND calls to python_gen_cond_dep, Python impl names are passed after the depstring, and this looks like a way to limit those dependencies to certain impls. python3_11 is omitted compared to PYTHON_COMPAT so maybe the tests don't support that yet. Note that python_gen_cond_dep from python-r1.eclass is different from python-single-r1.eclass, it generates dependencies using PYTHON_TARGETS instead of PYTHON_SINGLE_TARGETS. Cheers, Bryan > Sincerely, > Alexander Kurakin.