https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/ Issue: dev-python/pipenv-2020.6.2 fails tests. Discovered on: amd64 (internal ref: tinderbox) NOTE: This machine uses a clang/LLVM toolchain. If you think that this issue is strictly related to clang/LLVM please block bug 408963. If you think that this issue is strictly related to the LLD linker, please block bug 731004. This machine uses also GLIBC-2.32. If you think that this issue is strictly related to GLIBC please block bug 736174.
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.