| Summary: | dev-python/pipenv-2020.6.2 fails tests | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Agostino Sarubbo <ago> |
| Component: | Current packages | Assignee: | OzTiram <oz.tiram> |
| Status: | RESOLVED OBSOLETE | ||
| Severity: | normal | CC: | proxy-maint |
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Attachments: |
build.log
Stack trace after removing appdirs |
||
|
Description
Agostino Sarubbo
2020-08-20 05:08:28 UTC
Created attachment 655604 [details]
build.log
build log and emerge --info
I think there are missing RDEPENDS in the pipenv ebuild, I couldn't get it to run after installing either. Can you check this pull request to see if it fixes it: https://github.com/gentoo/gentoo/pull/17706/commits/87c046114ef666962ab83761ae721264afd89928 @Dave Wiltshire,
I can't confirm that absence of appdirs is the cause for the failure you see.
I removed appdirs from my system and ran the tests, and they still pass.
However, removing six *will break* the tests, since pytest depends on it.
```
copying pipenv/vendor/backports/enum/LICENSE -> /var/tmp/portage/dev-python/pipenv-2020.6.2/work/pipenv-2020.6.2-python3_7/lib/pipenv/vendor/backports/enum
copying pipenv/vendor/backports/enum/README -> /var/tmp/portage/dev-python/pipenv-2020.6.2/work/pipenv-2020.6.2-python3_7/lib/pipenv/vendor/backports/enum
copying pipenv/vendor/backports/shutil_get_terminal_size/LICENSE -> /var/tmp/portage/dev-python/pipenv-2020.6.2/work/pipenv-2020.6.2-python3_7/lib/pipenv/vendor/backports/shutil_get_terminal_size
warning: build_py: byte-compiling is disabled, skipping.
>>> Source compiled.
>>> Test phase: dev-python/pipenv-2020.6.2
* python3_7: running distutils-r1_run_phase python_test
Traceback (most recent call last):
File "/usr/lib/python-exec/python3.7/pytest", line 6, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3251, in <module>
@_call_aside
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3235, in _call_aside
f(*args, **kwargs)
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3264, in _initialize_master_working_set
working_set = WorkingSet._build_master()
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master
ws.require(__requires__)
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'six>=1.10.0' distribution was not found and is required by pytest
* ERROR: dev-python/pipenv-2020.6.2::gentoo failed (test phase):
* (no error message)
*
* Call stack:
* ebuild.sh, line 125: Called src_test
* environment, line 2926: Called distutils-r1_src_test
* environment, line 1235: Called _distutils-r1_run_foreach_impl 'python_test'
* environment, line 451: Called python_foreach_impl 'distutils-r1_run_phase' 'python_test'
* environment, line 2534: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test'
* environment, line 2017: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test'
* environment, line 2015: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_test'
* environment, line 808: Called distutils-r1_run_phase 'python_test'
* environment, line 1172: Called python_test
* environment, line 2885: Called die
* The specific snippet of code:
* pytest -m "not cli and not needs_internet" -vv tests/unit || die
*
* If you need support, post the output of `emerge --info '=dev-python/pipenv-2020.6.2::gentoo'`,
* the complete build log and the output of `emerge -pqv '=dev-python/pipenv-2020.6.2::gentoo'`.
* The complete build log is located at '/var/log/portage/dev-python:pipenv-2020.6.2:20201004-102855.log'.
* For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-python/pipenv-2020.6.2/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-python/pipenv-2020.6.2/temp/environment'.
* Working directory: '/var/tmp/portage/dev-python/pipenv-2020.6.2/work/pipenv-2020.6.2'
* S: '/var/tmp/portage/dev-python/pipenv-2020.6.2/work/pipenv-2020.6.2'
```
However, I'm not sure that the ebuild explicitly needs to have a dependency on six, because pytest already depends on it:
```
$ sudo FEATURES=test emerge -a pipenv
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild N ] dev-python/six-1.15.0-r1 USE="-doc -test" PYTHON_TARGETS="python3_6 python3_7 python3_8 python3_9 (-pypy3)"
[ebuild N ] dev-python/pytest-4.6.11-r1 USE="-test" PYTHON_TARGETS="python3_6 python3_7 python3_8 python3_9 (-pypy3)"
[ebuild R ~] dev-python/pipenv-2020.6.2
Would you like to merge these packages? [Yes/No]
```
My issue was that when I installed pipenv via the ebuild then pipenv would fail at run time. Installed via pip installed appdirs and six to my system. So I think they are required dependencies. I haven't confirmed whether both need to be installed or if one of them is only for testing. I just found this bug and thought it might be related. Could it be that installing these packages pulled the correct packages? appdirs and six aren't mentioned in: https://github.com/pypa/pipenv/blob/master/setup.py Also, I believe that if the tests pass, the code should work. And one last thing, currently appdirs isn't installed on my system and pipenv commands run fine (but I only use a small set). Can you maybe post a stack trace to reproduce the issue? Created attachment 663844 [details]
Stack trace after removing appdirs
Which version of virtualenv are you using? Seems to me that appdirs is a dependency of virtualenv. I take back my last comment. virtualenv has nothing to do with appdirs. However, I looked at pipenv, and it has a vendored version of both appdirs and six. So this can't be the case we need to add those. See here: https://github.com/pypa/pipenv/tree/3f9f359c0e563d30a60f0d1e4633eea9f964b610/pipenv/patched/notpip/_vendor This bug can be closed. The package no longer exists in ::gentoo. Sorry, wrong formulation: the package version is no longer in gentoo. |