On Fri, 2019-11-15 at 09:05 +0100, Michał Górny wrote:
> On Wed, 2019-11-13 at 22:16 +0100, Michał Górny wrote:
> > I'd like to share my frustration at the state of Python in general,
> > and Python packages in Gentoo.  So I'd like to 'bootstrap' python3_8 --
> > that is, add it to the most common dependency, dev-python/setuptools. 
> > Simple thing, right?
> > 
> Well, it turned out that things are worse than I anticipated.
> I expected *some* minor test breakage.  What we have instead is packages
> being so broken that they break a lot of other packages.
> So I went with plan B instead: I'll do as much testing locally
> as possible, and add py3.8 when I manage to get the tests on the package
> in question working, independently of the testing of all deep test deps.
> This will mean that some packages will have tests disabled temporarily
> for end users.

Good news, everyone.  We have 3.8-enabled setuptools, pytest and nose
which should be sufficient to start testing other packages.

Of other common packages, dev-python/sphinx isn't 3.8-enabled yet. 
However, this gives a good exercise of improving sphinx deps.  That is:

1. If package uses sphinx only to build docs from .rst files, has no
extra deps and doesn't use code introspection, you can just drop

2. Likewise but if it has extra deps, you can use the very hard any-r1
API in python-r1 (distutils-r1).  This has the advantage that it uses
any-of deps, and doesn't require matching PYTHON_TARGETS.  Example:

  doc? ( $(python_gen_any_dep '

python_check_deps() {
  use doc || return 0
  has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
    has_version "dev-python/sphinx-some-random-theme[${PYTHON_USEDEP}]"

python_compile_all {
  use doc && usual_stuff

Best regards,
Michał Górny

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to