Subject: bug#25177: Test failures don't cause some Python packages to fail [was Re: [PATCH 05/11] gnu: Add python-pygit2.]

From: Marius Bakke <[email-masked]>
Date: Tue, 13 Dec 2016 10:34:03 +0100

Hartmut Goebel <[email-masked]> writes:

> First of all thanks for spotting this bug.
>
>>> The bad news is that we have some breakages.
>>>
>>> 'python-py' fails with:
>>>
>>> TypeError: py.test.__dict__ is not a dictionary
>>>
>>> Which seems similar to
>>>
>>> https://github.com/NixOS/nixpkgs/issues/12565#issuecomment-174165144
>
> The relevant comment is
> https://github.com/NixOS/nixpkgs/issues/12565#issuecomment-174196194:
> Starting with version 18.4, setuptools will always try to execute a
> test-suite (see
> https://setuptools.readthedocs.io/en/latest/history.html#id186), which
> will fail if there is none.
>
> So the solution is to disable the test-suite for python-py, as there is
> no test-suite which can be run via "setup.py test". For testing I added
> "python-setuptools" (18.3.1) as native input. This made the "check"
> phase run "0 tests" for python2-py and no tests at al for python-py.
>
> (This package includes a test-suite (see tox.ini), but this test-suite
> requires py.test, with itself requires python-py. So I suggest to
> disable it.)

I tried upgrading pytest to 3.0.5 and adding a variant that does not
propagate 'python-py' as input for the 'python-py' package. That got a
bit further, but it does not accept modules from the store!

"ImportError: 'test' module incorrectly imported from '/gnu/store/mwci3544rk71p131mgri5am0sxbz09a6-python-pytest-minimal-3.0.5/lib/python3.5/site-packages'. Expected '/tmp/guix-build-python-py-1.4.31.drv-0/py-1.4.31/py'. Is this module globally installed?"

Disabled tests for now.

> Our Python (3.5.2) comes with setuptools 20.10.1.

Is the 2.7 variant the same version? When adding "python-setuptools" as
native-input, is it guaranteed to override the bundled one?

>> Yikes, I had hoped to avoid addressing that Nix issue and the humongous
>> "fix" for a while longer:
>>
>> https://github.com/NixOS/nixpkgs/pull/12552
>
> This puill-request is huge, but for setuptools, it comes down that they
> updated from 18.2 to 19.4.

Sounds like we're going down the same road. I've started a branch with
the earlier patch and a few other fixes. Is it ok to overwrite the
existing 'python-updates' branch on Savannah?