* Package: dev-python/pypiserver-1.3.1-r1 * Repository: gentoo * Maintainer: python@gentoo.org * USE: arm elibc_glibc kernel_linux python_targets_python3_6 test userland_GNU * FEATURES: distcc network-sandbox preserve-libs sandbox test userpriv usersandbox >>> Unpacking source... >>> Unpacking pypiserver-1.3.1.tar.gz to /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work >>> Source unpacked in /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work >>> Preparing source in /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1 ... * Applying pypiserver-1.3.1-no-internet.patch ... [ ok ] >>> Source prepared. >>> Configuring source in /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1 ... >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1 ... * python3_6: running distutils-r1_run_phase distutils-r1_python_compile * DISTUTILS_USE_SETUPTOOLS value is probably incorrect * value: DISTUTILS_USE_SETUPTOOLS=bdepend (default?) * expected: DISTUTILS_USE_SETUPTOOLS=rdepend python3.6 setup.py build -j 16 running build running build_py creating /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/__init__.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/__main__.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/_app.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/bottle.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/cache.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/core.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/manage.py -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver copying pypiserver/welcome.html -> /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1-python3_6/lib/pypiserver warning: build_py: byte-compiling is disabled, skipping. >>> Source compiled. >>> Test phase: dev-python/pypiserver-1.3.1-r1 * python3_6: running distutils-r1_run_phase python_test * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p =========================================================================== test session starts =========================================================================== platform linux -- Python 3.6.10, pytest-4.5.0, py-1.8.0, pluggy-0.13.1 -- /usr/bin/python3.6 cachedir: .pytest_cache rootdir: /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1, inifile: tox.ini collecting ... collected 299 items tests/test_app.py::test_root_count PASSED [ 0%] tests/test_app.py::test_root_hostname PASSED [ 0%] tests/test_app.py::test_root_welcome_msg_no_vars[ ] PASSED [ 1%] tests/test_app.py::test_root_welcome_msg_no_vars[Hey there!] PASSED [ 1%] tests/test_app.py::test_root_welcome_msg_no_vars[Hey there!] PASSED [ 1%] tests/test_app.py::test_root_welcome_msg_all_vars PASSED [ 2%] tests/test_app.py::test_root_welcome_msg_antiXSS PASSED [ 2%] tests/test_app.py::test_root_remove_not_found_msg_antiXSS PASSED [ 2%] tests/test_app.py::test_packages_redirect PASSED [ 3%] tests/test_app.py::test_packages_empty PASSED [ 3%] tests/test_app.py::test_favicon PASSED [ 3%] tests/test_app.py::test_fallback SKIPPED [ 4%] tests/test_app.py::test_no_fallback PASSED [ 4%] tests/test_app.py::test_serve_no_dotfiles PASSED [ 4%] tests/test_app.py::test_packages_list_no_dotfiles PASSED [ 5%] tests/test_app.py::test_simple_redirect PASSED [ 5%] tests/test_app.py::test_simple_list_no_dotfiles PASSED [ 5%] tests/test_app.py::test_simple_list_no_dotfiles2 PASSED [ 6%] tests/test_app.py::test_serve_no_dotdir PASSED [ 6%] tests/test_app.py::test_packages_list_no_dotdir PASSED [ 6%] tests/test_app.py::test_simple_list_no_dotdir PASSED [ 7%] tests/test_app.py::test_simple_list_no_dotdir2 PASSED [ 7%] tests/test_app.py::test_simple_name_redirect PASSED [ 7%] tests/test_app.py::test_simple_normalized_name_redirect[FooBar-foobar] PASSED [ 8%] tests/test_app.py::test_simple_normalized_name_redirect[Foo.Bar-foo-bar] PASSED [ 8%] tests/test_app.py::test_simple_normalized_name_redirect[foo_bar-foo-bar] PASSED [ 8%] tests/test_app.py::test_simple_normalized_name_redirect[Foo-Bar-foo-bar] PASSED [ 9%] tests/test_app.py::test_simple_normalized_name_redirect[foo--_.bar-foo-bar] PASSED [ 9%] tests/test_app.py::test_simple_index PASSED [ 9%] tests/test_app.py::test_simple_index_list PASSED [ 10%] tests/test_app.py::test_simple_index_case PASSED [ 10%] tests/test_app.py::test_nonroot_root PASSED [ 10%] tests/test_app.py::test_nonroot_root_with_x_forwarded_host PASSED [ 11%] tests/test_app.py::test_nonroot_root_with_x_forwarded_host_without_trailing_slash PASSED [ 11%] tests/test_app.py::test_nonroot_simple_index PASSED [ 11%] tests/test_app.py::test_nonroot_simple_index_with_x_forwarded_host PASSED [ 12%] tests/test_app.py::test_nonroot_simple_packages PASSED [ 12%] tests/test_app.py::test_nonroot_simple_packages_with_x_forwarded_host PASSED [ 12%] tests/test_app.py::test_root_no_relative_paths PASSED [ 13%] tests/test_app.py::test_simple_index_list_no_duplicates PASSED [ 13%] tests/test_app.py::test_simple_index_list_name_with_underscore PASSED [ 13%] tests/test_app.py::test_simple_index_egg_and_tarball PASSED [ 14%] tests/test_app.py::test_simple_index_list_name_with_underscore_no_egg PASSED [ 14%] tests/test_app.py::test_no_cache_control_set PASSED [ 14%] tests/test_app.py::test_cache_control_set PASSED [ 15%] tests/test_app.py::test_upload_noAction PASSED [ 15%] tests/test_app.py::test_upload_badAction PASSED [ 15%] tests/test_app.py::test_upload[pytz-2012b.tar.bz2] PASSED [ 16%] tests/test_app.py::test_upload[pytz-2012b.tgz] PASSED [ 16%] tests/test_app.py::test_upload[pytz-2012b.ZIP] PASSED [ 16%] tests/test_app.py::test_upload[pytz-2012a.zip] PASSED [ 17%] tests/test_app.py::test_upload[gevent-1.0b1.win32-py2.6.exe] PASSED [ 17%] tests/test_app.py::test_upload[gevent-1.0b1.win32-py2.7.msi] PASSED [ 17%] tests/test_app.py::test_upload[greenlet-0.3.4-py3.1-win-amd64.egg] PASSED [ 18%] tests/test_app.py::test_upload[greenlet-0.3.4.win-amd64-py3.2.exe] PASSED [ 18%] tests/test_app.py::test_upload[greenlet-0.3.4-py3.2-win32.egg] PASSED [ 18%] tests/test_app.py::test_upload[greenlet-0.3.4-py2.7-linux-x86_64.egg] PASSED [ 19%] tests/test_app.py::test_upload[pep8-0.6.0.zip] PASSED [ 19%] tests/test_app.py::test_upload[ABC12-34_V1X-1.2.3.zip] PASSED [ 19%] tests/test_app.py::test_upload[A100-200-XYZ-1.2.3.zip] PASSED [ 20%] tests/test_app.py::test_upload[flup-1.0.3.dev-20110405.tar.gz] PASSED [ 20%] tests/test_app.py::test_upload[package-1.0.0-alpha.1.zip] PASSED [ 20%] tests/test_app.py::test_upload[package-1.3.7+build.11.e0f985a.zip] PASSED [ 21%] tests/test_app.py::test_upload[package-v1-8.1.301.ga0df26f.zip] PASSED [ 21%] tests/test_app.py::test_upload[package-v1.1-8.1.301.ga0df26f.zip] PASSED [ 21%] tests/test_app.py::test_upload[package-2013.02.17.dev123.zip] PASSED [ 22%] tests/test_app.py::test_upload[package-20000101.zip] PASSED [ 22%] tests/test_app.py::test_upload[flup-123-1.0.3.dev-20110405.tar.gz] PASSED [ 22%] tests/test_app.py::test_upload[package-123-1.0.0-alpha.1.zip] PASSED [ 23%] tests/test_app.py::test_upload[package-123-1.3.7+build.11.e0f985a.zip] PASSED [ 23%] tests/test_app.py::test_upload[package-123-v1.1_3-8.1.zip] PASSED [ 23%] tests/test_app.py::test_upload[package-123-2013.02.17.dev123.zip] PASSED [ 24%] tests/test_app.py::test_upload[package-123-20000101.zip] PASSED [ 24%] tests/test_app.py::test_upload[pyelasticsearch-0.5-brainbot-1-20130712.zip] PASSED [ 24%] tests/test_app.py::test_upload[pywin32-217-cp27-none-win32.whl] PASSED [ 25%] tests/test_app.py::test_upload[pywin32-217-55-cp27-none-win32.whl] PASSED [ 25%] tests/test_app.py::test_upload[pywin32-217.1-cp27-none-win32.whl] PASSED [ 25%] tests/test_app.py::test_upload[package.zip] PASSED [ 26%] tests/test_app.py::test_upload[package-name-0.0.1.dev0.linux-x86_64.tar.gz] PASSED [ 26%] tests/test_app.py::test_upload[package-name-0.0.1.dev0.macosx-10.10-intel.tar.gz] PASSED [ 26%] tests/test_app.py::test_upload[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe0] PASSED [ 27%] tests/test_app.py::test_upload[pkg-3!1.0-0.1.tgz] PASSED [ 27%] tests/test_app.py::test_upload[pkg-3!1+.0-0.1.tgz] PASSED [ 27%] tests/test_app.py::test_upload[pkg.zip] PASSED [ 28%] tests/test_app.py::test_upload[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe1] PASSED [ 28%] tests/test_app.py::test_upload_with_signature[pytz-2012b.tar.bz2] PASSED [ 28%] tests/test_app.py::test_upload_with_signature[pytz-2012b.tgz] PASSED [ 29%] tests/test_app.py::test_upload_with_signature[pytz-2012b.ZIP] PASSED [ 29%] tests/test_app.py::test_upload_with_signature[pytz-2012a.zip] PASSED [ 29%] tests/test_app.py::test_upload_with_signature[gevent-1.0b1.win32-py2.6.exe] PASSED [ 30%] tests/test_app.py::test_upload_with_signature[gevent-1.0b1.win32-py2.7.msi] PASSED [ 30%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4-py3.1-win-amd64.egg] PASSED [ 30%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4.win-amd64-py3.2.exe] PASSED [ 31%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4-py3.2-win32.egg] PASSED [ 31%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4-py2.7-linux-x86_64.egg] PASSED [ 31%] tests/test_app.py::test_upload_with_signature[pep8-0.6.0.zip] PASSED [ 32%] tests/test_app.py::test_upload_with_signature[ABC12-34_V1X-1.2.3.zip] PASSED [ 32%] tests/test_app.py::test_upload_with_signature[A100-200-XYZ-1.2.3.zip] PASSED [ 32%] tests/test_app.py::test_upload_with_signature[flup-1.0.3.dev-20110405.tar.gz] PASSED [ 33%] tests/test_app.py::test_upload_with_signature[package-1.0.0-alpha.1.zip] PASSED [ 33%] tests/test_app.py::test_upload_with_signature[package-1.3.7+build.11.e0f985a.zip] PASSED [ 33%] tests/test_app.py::test_upload_with_signature[package-v1-8.1.301.ga0df26f.zip] PASSED [ 34%] tests/test_app.py::test_upload_with_signature[package-v1.1-8.1.301.ga0df26f.zip] PASSED [ 34%] tests/test_app.py::test_upload_with_signature[package-2013.02.17.dev123.zip] PASSED [ 34%] tests/test_app.py::test_upload_with_signature[package-20000101.zip] PASSED [ 35%] tests/test_app.py::test_upload_with_signature[flup-123-1.0.3.dev-20110405.tar.gz] PASSED [ 35%] tests/test_app.py::test_upload_with_signature[package-123-1.0.0-alpha.1.zip] PASSED [ 35%] tests/test_app.py::test_upload_with_signature[package-123-1.3.7+build.11.e0f985a.zip] PASSED [ 36%] tests/test_app.py::test_upload_with_signature[package-123-v1.1_3-8.1.zip] PASSED [ 36%] tests/test_app.py::test_upload_with_signature[package-123-2013.02.17.dev123.zip] PASSED [ 36%] tests/test_app.py::test_upload_with_signature[package-123-20000101.zip] PASSED [ 37%] tests/test_app.py::test_upload_with_signature[pyelasticsearch-0.5-brainbot-1-20130712.zip] PASSED [ 37%] tests/test_app.py::test_upload_with_signature[pywin32-217-cp27-none-win32.whl] PASSED [ 37%] tests/test_app.py::test_upload_with_signature[pywin32-217-55-cp27-none-win32.whl] PASSED [ 38%] tests/test_app.py::test_upload_with_signature[pywin32-217.1-cp27-none-win32.whl] PASSED [ 38%] tests/test_app.py::test_upload_with_signature[package.zip] PASSED [ 38%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.dev0.linux-x86_64.tar.gz] PASSED [ 39%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.dev0.macosx-10.10-intel.tar.gz] PASSED [ 39%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe0] PASSED [ 39%] tests/test_app.py::test_upload_with_signature[pkg-3!1.0-0.1.tgz] PASSED [ 40%] tests/test_app.py::test_upload_with_signature[pkg-3!1+.0-0.1.tgz] PASSED [ 40%] tests/test_app.py::test_upload_with_signature[pkg.zip] PASSED [ 40%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe1] PASSED [ 41%] tests/test_app.py::test_upload_badFilename[package0] SKIPPED [ 41%] tests/test_app.py::test_remove_pkg_missingNaveVersion[None-None] PASSED [ 41%] tests/test_app.py::test_remove_pkg_missingNaveVersion[None-] PASSED [ 42%] tests/test_app.py::test_remove_pkg_missingNaveVersion[-None] PASSED [ 42%] tests/test_app.py::test_remove_pkg_missingNaveVersion[None-1] PASSED [ 42%] tests/test_app.py::test_remove_pkg_missingNaveVersion[pkg-None] PASSED [ 43%] tests/test_app.py::test_remove_pkg_missingNaveVersion[-1] PASSED [ 43%] tests/test_app.py::test_remove_pkg_missingNaveVersion[pkg-] PASSED [ 43%] tests/test_app.py::test_remove_pkg_notFound PASSED [ 44%] tests/test_app.py::test_search[pkgs0-matches0] PASSED [ 44%] tests/test_app.py::test_search[pkgs1-matches1] PASSED [ 44%] tests/test_app.py::test_search[pkgs2-matches2] PASSED [ 45%] tests/test_app.py::test_search[pkgs3-matches3] PASSED [ 45%] tests/test_app.py::test_search[pkgs4-matches4] PASSED [ 45%] tests/test_app.py::test_search[pkgs5-matches5] PASSED [ 46%] tests/test_app.py::test_remove_pkg XFAIL [ 46%] tests/test_core.py::test_guess_pkgname_and_version[pytz-2012b.tar.bz2-pytz-2012b] PASSED [ 46%] tests/test_core.py::test_guess_pkgname_and_version[pytz-2012b.tgz-pytz-2012b] PASSED [ 47%] tests/test_core.py::test_guess_pkgname_and_version[pytz-2012b.ZIP-pytz-2012b] PASSED [ 47%] tests/test_core.py::test_guess_pkgname_and_version[pytz-2012a.zip-pytz-2012a] PASSED [ 47%] tests/test_core.py::test_guess_pkgname_and_version[gevent-1.0b1.win32-py2.6.exe-gevent-1.0b1] PASSED [ 48%] tests/test_core.py::test_guess_pkgname_and_version[gevent-1.0b1.win32-py2.7.msi-gevent-1.0b1] PASSED [ 48%] tests/test_core.py::test_guess_pkgname_and_version[greenlet-0.3.4-py3.1-win-amd64.egg-greenlet-0.3.4] PASSED [ 48%] tests/test_core.py::test_guess_pkgname_and_version[greenlet-0.3.4.win-amd64-py3.2.exe-greenlet-0.3.4] PASSED [ 49%] tests/test_core.py::test_guess_pkgname_and_version[greenlet-0.3.4-py3.2-win32.egg-greenlet-0.3.4] PASSED [ 49%] tests/test_core.py::test_guess_pkgname_and_version[greenlet-0.3.4-py2.7-linux-x86_64.egg-greenlet-0.3.4] PASSED [ 49%] tests/test_core.py::test_guess_pkgname_and_version[pep8-0.6.0.zip-pep8-0.6.0] PASSED [ 50%] tests/test_core.py::test_guess_pkgname_and_version[ABC12-34_V1X-1.2.3.zip-ABC12-34_V1X-1.2.3] PASSED [ 50%] tests/test_core.py::test_guess_pkgname_and_version[A100-200-XYZ-1.2.3.zip-A100-200-XYZ-1.2.3] PASSED [ 50%] tests/test_core.py::test_guess_pkgname_and_version[flup-1.0.3.dev-20110405.tar.gz-flup-1.0.3.dev-20110405] PASSED [ 51%] tests/test_core.py::test_guess_pkgname_and_version[package-1.0.0-alpha.1.zip-package-1.0.0-alpha.1] PASSED [ 51%] tests/test_core.py::test_guess_pkgname_and_version[package-1.3.7+build.11.e0f985a.zip-package-1.3.7+build.11.e0f985a] PASSED [ 51%] tests/test_core.py::test_guess_pkgname_and_version[package-v1-8.1.301.ga0df26f.zip-package-v1-8.1.301.ga0df26f] PASSED [ 52%] tests/test_core.py::test_guess_pkgname_and_version[package-v1.1-8.1.301.ga0df26f.zip-package-v1.1-8.1.301.ga0df26f] PASSED [ 52%] tests/test_core.py::test_guess_pkgname_and_version[package-2013.02.17.dev123.zip-package-2013.02.17.dev123] PASSED [ 52%] tests/test_core.py::test_guess_pkgname_and_version[package-20000101.zip-package-20000101] PASSED [ 53%] tests/test_core.py::test_guess_pkgname_and_version[flup-123-1.0.3.dev-20110405.tar.gz-flup-123-1.0.3.dev-20110405] PASSED [ 53%] tests/test_core.py::test_guess_pkgname_and_version[package-123-1.0.0-alpha.1.zip-package-123-1.0.0-alpha.1] PASSED [ 53%] tests/test_core.py::test_guess_pkgname_and_version[package-123-1.3.7+build.11.e0f985a.zip-package-123-1.3.7+build.11.e0f985a] PASSED [ 54%] tests/test_core.py::test_guess_pkgname_and_version[package-123-v1.1_3-8.1.zip-package-123-v1.1_3-8.1] PASSED [ 54%] tests/test_core.py::test_guess_pkgname_and_version[package-123-2013.02.17.dev123.zip-package-123-2013.02.17.dev123] PASSED [ 54%] tests/test_core.py::test_guess_pkgname_and_version[package-123-20000101.zip-package-123-20000101] PASSED [ 55%] tests/test_core.py::test_guess_pkgname_and_version[pyelasticsearch-0.5-brainbot-1-20130712.zip-pyelasticsearch-0.5-brainbot-1-20130712] PASSED [ 55%] tests/test_core.py::test_guess_pkgname_and_version[pywin32-217-cp27-none-win32.whl-pywin32-217] PASSED [ 55%] tests/test_core.py::test_guess_pkgname_and_version[pywin32-217-55-cp27-none-win32.whl-pywin32-217-55] PASSED [ 56%] tests/test_core.py::test_guess_pkgname_and_version[pywin32-217.1-cp27-none-win32.whl-pywin32-217.1] PASSED [ 56%] tests/test_core.py::test_guess_pkgname_and_version[package.zip-package-] PASSED [ 56%] tests/test_core.py::test_guess_pkgname_and_version[package-name-0.0.1.dev0.linux-x86_64.tar.gz-package-name-0.0.1.dev0] PASSED [ 57%] tests/test_core.py::test_guess_pkgname_and_version[package-name-0.0.1.dev0.macosx-10.10-intel.tar.gz-package-name-0.0.1.dev0] PASSED [ 57%] tests/test_core.py::test_guess_pkgname_and_version[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe-package-name-0.0.1.alpha.10] PASSED [ 57%] tests/test_core.py::test_guess_pkgname_and_version[pkg-3!1.0-0.1.tgz-pkg-3!1.0-0.1] PASSED [ 58%] tests/test_core.py::test_guess_pkgname_and_version[pkg-3!1+.0-0.1.tgz-pkg-3!1+.0-0.1] PASSED [ 58%] tests/test_core.py::test_guess_pkgname_and_version[pkg.zip-pkg-] PASSED [ 58%] tests/test_core.py::test_guess_pkgname_and_version[foo/pkg.zip-pkg-] PASSED [ 59%] tests/test_core.py::test_guess_pkgname_and_version[foo/pkg-1b.zip-pkg-1b] PASSED [ 59%] tests/test_core.py::test_guess_pkgname_and_version[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe-package-name-0.0.1.alpha.11] PASSED [ 59%] tests/test_core.py::test_guess_pkgname_and_version_asc[pytz-2012b.tar.bz2-pytz-2012b] PASSED [ 60%] tests/test_core.py::test_guess_pkgname_and_version_asc[pytz-2012b.tgz-pytz-2012b] PASSED [ 60%] tests/test_core.py::test_guess_pkgname_and_version_asc[pytz-2012b.ZIP-pytz-2012b] PASSED [ 60%] tests/test_core.py::test_guess_pkgname_and_version_asc[pytz-2012a.zip-pytz-2012a] PASSED [ 61%] tests/test_core.py::test_guess_pkgname_and_version_asc[gevent-1.0b1.win32-py2.6.exe-gevent-1.0b1] PASSED [ 61%] tests/test_core.py::test_guess_pkgname_and_version_asc[gevent-1.0b1.win32-py2.7.msi-gevent-1.0b1] PASSED [ 61%] tests/test_core.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4-py3.1-win-amd64.egg-greenlet-0.3.4] PASSED [ 62%] tests/test_core.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4.win-amd64-py3.2.exe-greenlet-0.3.4] PASSED [ 62%] tests/test_core.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4-py3.2-win32.egg-greenlet-0.3.4] PASSED [ 62%] tests/test_core.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4-py2.7-linux-x86_64.egg-greenlet-0.3.4] PASSED [ 63%] tests/test_core.py::test_guess_pkgname_and_version_asc[pep8-0.6.0.zip-pep8-0.6.0] PASSED [ 63%] tests/test_core.py::test_guess_pkgname_and_version_asc[ABC12-34_V1X-1.2.3.zip-ABC12-34_V1X-1.2.3] PASSED [ 63%] tests/test_core.py::test_guess_pkgname_and_version_asc[A100-200-XYZ-1.2.3.zip-A100-200-XYZ-1.2.3] PASSED [ 64%] tests/test_core.py::test_guess_pkgname_and_version_asc[flup-1.0.3.dev-20110405.tar.gz-flup-1.0.3.dev-20110405] PASSED [ 64%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-1.0.0-alpha.1.zip-package-1.0.0-alpha.1] PASSED [ 64%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-1.3.7+build.11.e0f985a.zip-package-1.3.7+build.11.e0f985a] PASSED [ 65%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-v1-8.1.301.ga0df26f.zip-package-v1-8.1.301.ga0df26f] PASSED [ 65%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-v1.1-8.1.301.ga0df26f.zip-package-v1.1-8.1.301.ga0df26f] PASSED [ 65%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-2013.02.17.dev123.zip-package-2013.02.17.dev123] PASSED [ 66%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-20000101.zip-package-20000101] PASSED [ 66%] tests/test_core.py::test_guess_pkgname_and_version_asc[flup-123-1.0.3.dev-20110405.tar.gz-flup-123-1.0.3.dev-20110405] PASSED [ 66%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-123-1.0.0-alpha.1.zip-package-123-1.0.0-alpha.1] PASSED [ 67%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-123-1.3.7+build.11.e0f985a.zip-package-123-1.3.7+build.11.e0f985a] PASSED [ 67%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-123-v1.1_3-8.1.zip-package-123-v1.1_3-8.1] PASSED [ 67%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-123-2013.02.17.dev123.zip-package-123-2013.02.17.dev123] PASSED [ 68%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-123-20000101.zip-package-123-20000101] PASSED [ 68%] tests/test_core.py::test_guess_pkgname_and_version_asc[pyelasticsearch-0.5-brainbot-1-20130712.zip-pyelasticsearch-0.5-brainbot-1-20130712] PASSED [ 68%] tests/test_core.py::test_guess_pkgname_and_version_asc[pywin32-217-cp27-none-win32.whl-pywin32-217] PASSED [ 69%] tests/test_core.py::test_guess_pkgname_and_version_asc[pywin32-217-55-cp27-none-win32.whl-pywin32-217-55] PASSED [ 69%] tests/test_core.py::test_guess_pkgname_and_version_asc[pywin32-217.1-cp27-none-win32.whl-pywin32-217.1] PASSED [ 69%] tests/test_core.py::test_guess_pkgname_and_version_asc[package.zip-package-] PASSED [ 70%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-name-0.0.1.dev0.linux-x86_64.tar.gz-package-name-0.0.1.dev0] PASSED [ 70%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-name-0.0.1.dev0.macosx-10.10-intel.tar.gz-package-name-0.0.1.dev0] PASSED [ 70%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe-package-name-0.0.1.alpha.10] PASSED [ 71%] tests/test_core.py::test_guess_pkgname_and_version_asc[pkg-3!1.0-0.1.tgz-pkg-3!1.0-0.1] PASSED [ 71%] tests/test_core.py::test_guess_pkgname_and_version_asc[pkg-3!1+.0-0.1.tgz-pkg-3!1+.0-0.1] PASSED [ 71%] tests/test_core.py::test_guess_pkgname_and_version_asc[pkg.zip-pkg-] PASSED [ 72%] tests/test_core.py::test_guess_pkgname_and_version_asc[foo/pkg.zip-pkg-] PASSED [ 72%] tests/test_core.py::test_guess_pkgname_and_version_asc[foo/pkg-1b.zip-pkg-1b] PASSED [ 72%] tests/test_core.py::test_guess_pkgname_and_version_asc[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe-package-name-0.0.1.alpha.11] PASSED [ 73%] tests/test_core.py::test_listdir_bad_name PASSED [ 73%] tests/test_core.py::test_hashfile[sha256-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855] PASSED [ 73%] tests/test_core.py::test_hashfile[md5-d41d8cd98f00b204e9800998ecf8427e] PASSED [ 74%] tests/test_core.py::test_fname_and_hash[md5] PASSED [ 74%] tests/test_core.py::test_fname_and_hash[sha256] PASSED [ 74%] tests/test_core.py::test_fname_and_hash[sha512] PASSED [ 75%] tests/test_core.py::test_redirect_prefix_encodes_newlines PASSED [ 75%] tests/test_core.py::test_normalize_pkgname_for_url_encodes_newlines PASSED [ 75%] tests/test_docs.py::test_READMEversion PASSED [ 76%] tests/test_init.py::test_paste_app_factory[conf_options0] PASSED [ 76%] tests/test_init.py::test_paste_app_factory[conf_options1] PASSED [ 76%] tests/test_init.py::test_paste_app_factory[conf_options2] PASSED [ 77%] tests/test_init.py::test_paste_app_factory[conf_options3] PASSED [ 77%] tests/test_init.py::test_app_factory PASSED [ 77%] tests/test_main.py::test_default_pkgdir PASSED [ 78%] tests/test_main.py::test_noargs PASSED [ 78%] tests/test_main.py::test_port PASSED [ 78%] tests/test_main.py::test_server PASSED [ 79%] tests/test_main.py::test_root PASSED [ 79%] tests/test_main.py::test_root_r PASSED [ 79%] tests/test_main.py::test_fallback_url PASSED [ 80%] tests/test_main.py::test_fallback_url_default PASSED [ 80%] tests/test_main.py::test_hash_algo_default PASSED [ 80%] tests/test_main.py::test_hash_algo PASSED [ 81%] tests/test_main.py::test_hash_algo_off PASSED [ 81%] tests/test_main.py::test_hash_algo_BAD PASSED [ 81%] tests/test_main.py::test_logging PASSED [ 82%] tests/test_main.py::test_logging_verbosity PASSED [ 82%] tests/test_main.py::test_welcome_file PASSED [ 82%] tests/test_main.py::test_welcome_file_default PASSED [ 83%] tests/test_main.py::test_password_without_auth_list PASSED [ 83%] tests/test_main.py::test_password_alone PASSED [ 83%] tests/test_main.py::test_dot_password_without_auth_list PASSED [ 84%] tests/test_manage.py::test_is_stable_version[1.0-True] PASSED [ 84%] tests/test_manage.py::test_is_stable_version[0.0.0-True] PASSED [ 84%] tests/test_manage.py::test_is_stable_version[1.1beta1-False] PASSED [ 85%] tests/test_manage.py::test_is_stable_version[1.2.10-123-True] PASSED [ 85%] tests/test_manage.py::test_is_stable_version[5.5.0-DEV-False] PASSED [ 85%] tests/test_manage.py::test_is_stable_version[1.2-rc1-False] PASSED [ 86%] tests/test_manage.py::test_is_stable_version[1.0b1-False] PASSED [ 86%] tests/test_manage.py::test_build_releases PASSED [ 86%] tests/test_manage.py::test_filter_stable_releases PASSED [ 87%] tests/test_manage.py::test_filter_latest_pkgs PASSED [ 87%] tests/test_manage.py::test_filter_latest_pkgs_case_insensitive PASSED [ 87%] tests/test_manage.py::test_pip_cmd_root[10.0.0-d] PASSED [ 88%] tests/test_manage.py::test_pip_cmd_root[10.0.0rc10-d] PASSED [ 88%] tests/test_manage.py::test_pip_cmd_root[10.0.0b10-d] PASSED [ 88%] tests/test_manage.py::test_pip_cmd_root[10.0.0a3-d] PASSED [ 89%] tests/test_manage.py::test_pip_cmd_root[10.0.0.dev8-d0] PASSED [ 89%] tests/test_manage.py::test_pip_cmd_root[10.0.0.dev8-d1] PASSED [ 89%] tests/test_manage.py::test_pip_cmd_root[18.0-d] PASSED [ 90%] tests/test_manage.py::test_pip_cmd_root[9.9.8-i] PASSED [ 90%] tests/test_manage.py::test_pip_cmd_root[9.9.8rc10-i] PASSED [ 90%] tests/test_manage.py::test_pip_cmd_root[9.9.8b10-i] PASSED [ 91%] tests/test_manage.py::test_pip_cmd_root[9.9.8a10-i] PASSED [ 91%] tests/test_manage.py::test_pip_cmd_root[9.9.8.dev10-i] PASSED [ 91%] tests/test_manage.py::test_pip_cmd_root[9.9-i] PASSED [ 92%] tests/test_manage.py::test_pip_cmd_update SKIPPED [ 92%] tests/test_manage.py::test_pip_cmd_update_index_overridden SKIPPED [ 92%] tests/test_manage.py::test_update_package SKIPPED [ 93%] tests/test_manage.py::test_update_package_dry_run PASSED [ 93%] tests/test_server.py::test_pipInstall_packageNotFound * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p PASSED [ 93%] tests/test_server.py::test_pipInstall_openOk SKIPPED [ 94%] tests/test_server.py::test_pipInstall_authedFails SKIPPED [ 94%] tests/test_server.py::test_pipInstall_authedOk SKIPPED [ 94%] tests/test_server.py::test_setuptoolsUpload_open[bdist] PASSED [ 95%] tests/test_server.py::test_setuptoolsUpload_open[bdist_wheel] PASSED [ 95%] tests/test_server.py::test_setuptoolsUpload_authed[bdist] PASSED [ 95%] tests/test_server.py::test_setuptoolsUpload_authed[bdist_wheel] PASSED [ 96%] tests/test_server.py::test_setuptools_upload_partial_authed[bdist] PASSED [ 96%] tests/test_server.py::test_setuptools_upload_partial_authed[bdist_wheel] PASSED [ 96%] tests/test_server.py::test_partial_authed_open_download FAILED [ 97%] tests/test_server.py::test_twine_upload_open * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p PASSED [ 97%] tests/test_server.py::test_hash_algos[md5] SKIPPED [ 97%] tests/test_server.py::test_hash_algos[sha256] SKIPPED [ 98%] tests/test_server.py::test_hash_algos[sha512] SKIPPED [ 98%] tests/test_server.py::test_twine_upload_authed * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p PASSED [ 98%] tests/test_server.py::test_twine_upload_partial_authed * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p PASSED [ 99%] tests/test_server.py::test_twine_register_open * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p PASSED [ 99%] tests/test_server.py::test_twine_register_authed_ok * Unable to trace static ELF: /sbin/ldconfig: /sbin/ldconfig -p PASSED [100%] ================================================================================ FAILURES ================================================================================= ____________________________________________________________________ test_partial_authed_open_download ____________________________________________________________________ self = , http_class = , req = http_conn_args = {}, host = 'localhost:8098', h = def do_open(self, http_class, req, **http_conn_args): """Return an HTTPResponse object for the request, using http_class. http_class must implement the HTTPConnection API from http.client. """ host = req.host if not host: raise URLError('no host given') # will parse host:port h = http_class(host, timeout=req.timeout, **http_conn_args) h.set_debuglevel(self._debuglevel) headers = dict(req.unredirected_hdrs) headers.update(dict((k, v) for k, v in req.headers.items() if k not in headers)) # TODO(jhylton): Should this be redesigned to handle # persistent connections? # We want to make an HTTP/1.1 request, but the addinfourl # class isn't prepared to deal with a persistent connection. # It will try to read all remaining data from the socket, # which will block while the server waits for the next request. # So make sure the connection gets closed after the (only) # request. headers["Connection"] = "close" headers = dict((name.title(), val) for name, val in headers.items()) if req._tunnel_host: tunnel_headers = {} proxy_auth_hdr = "Proxy-Authorization" if proxy_auth_hdr in headers: tunnel_headers[proxy_auth_hdr] = headers[proxy_auth_hdr] # Proxy-Authorization should not be sent to origin # server. del headers[proxy_auth_hdr] h.set_tunnel(req._tunnel_host, headers=tunnel_headers) try: try: h.request(req.get_method(), req.selector, req.data, headers, > encode_chunked=req.has_header('Transfer-encoding')) /usr/lib/python3.6/urllib/request.py:1318: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , method = 'GET', url = '/simple', body = None headers = {'Connection': 'close', 'Host': 'localhost:8098', 'User-Agent': 'Python-urllib/3.6'} def request(self, method, url, body=None, headers={}, *, encode_chunked=False): """Send a complete request to the server.""" > self._send_request(method, url, body, headers, encode_chunked) /usr/lib/python3.6/http/client.py:1262: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , method = 'GET', url = '/simple', body = None headers = {'Connection': 'close', 'Host': 'localhost:8098', 'User-Agent': 'Python-urllib/3.6'}, encode_chunked = False def _send_request(self, method, url, body, headers, encode_chunked): # Honor explicitly requested Host: and Accept-Encoding: headers. header_names = frozenset(k.lower() for k in headers) skips = {} if 'host' in header_names: skips['skip_host'] = 1 if 'accept-encoding' in header_names: skips['skip_accept_encoding'] = 1 self.putrequest(method, url, **skips) # chunked encoding will happen if HTTP/1.1 is used and either # the caller passes encode_chunked=True or the following # conditions hold: # 1. content-length has not been explicitly set # 2. the body is a file or iterable, but not a str or bytes-like # 3. Transfer-Encoding has NOT been explicitly set by the caller if 'content-length' not in header_names: # only chunk body if not explicitly set for backwards # compatibility, assuming the client code is already handling the # chunking if 'transfer-encoding' not in header_names: # if content-length cannot be automatically determined, fall # back to chunked encoding encode_chunked = False content_length = self._get_content_length(body, method) if content_length is None: if body is not None: if self.debuglevel > 0: print('Unable to determine size of %r' % body) encode_chunked = True self.putheader('Transfer-Encoding', 'chunked') else: self.putheader('Content-Length', str(content_length)) else: encode_chunked = False for hdr, value in headers.items(): self.putheader(hdr, value) if isinstance(body, str): # RFC 2616 Section 3.7.1 says that text default has a # default charset of iso-8859-1. body = _encode(body, 'body') > self.endheaders(body, encode_chunked=encode_chunked) /usr/lib/python3.6/http/client.py:1308: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , message_body = None def endheaders(self, message_body=None, *, encode_chunked=False): """Indicate that the last header line has been sent to the server. This method sends the request to the server. The optional message_body argument can be used to pass a message body associated with the request. """ if self.__state == _CS_REQ_STARTED: self.__state = _CS_REQ_SENT else: raise CannotSendHeader() > self._send_output(message_body, encode_chunked=encode_chunked) /usr/lib/python3.6/http/client.py:1257: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , message_body = None, encode_chunked = False def _send_output(self, message_body=None, encode_chunked=False): """Send the currently buffered request and clear the buffer. Appends an extra \\r\\n to the buffer. A message_body may be specified, to be appended to the request. """ self._buffer.extend((b"", b"")) msg = b"\r\n".join(self._buffer) del self._buffer[:] > self.send(msg) /usr/lib/python3.6/http/client.py:1036: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = data = b'GET /simple HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: localhost:8098\r\nUser-Agent: Python-urllib/3.6\r\nConnection: close\r\n\r\n' def send(self, data): """Send `data' to the server. ``data`` can be a string object, a bytes object, an array object, a file-like object that supports a .read() method, or an iterable object. """ if self.sock is None: if self.auto_open: > self.connect() /usr/lib/python3.6/http/client.py:974: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def connect(self): """Connect to the host and port specified in __init__.""" self.sock = self._create_connection( > (self.host,self.port), self.timeout, self.source_address) /usr/lib/python3.6/http/client.py:946: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ address = ('localhost', 8098), timeout = , source_address = None def create_connection(address, timeout=_GLOBAL_DEFAULT_TIMEOUT, source_address=None): """Connect to *address* and return the socket object. Convenience function. Connect to *address* (a 2-tuple ``(host, port)``) and return the socket object. Passing the optional *timeout* parameter will set the timeout on the socket instance before attempting to connect. If no *timeout* is supplied, the global default timeout setting returned by :func:`getdefaulttimeout` is used. If *source_address* is set it must be a tuple of (host, port) for the socket to bind as a source address before making the connection. A host of '' or port 0 tells the OS to use the default. """ host, port = address err = None for res in getaddrinfo(host, port, 0, SOCK_STREAM): af, socktype, proto, canonname, sa = res sock = None try: sock = socket(af, socktype, proto) if timeout is not _GLOBAL_DEFAULT_TIMEOUT: sock.settimeout(timeout) if source_address: sock.bind(source_address) sock.connect(sa) # Break explicitly a reference cycle err = None return sock except error as _: err = _ if sock is not None: sock.close() if err is not None: > raise err /usr/lib/python3.6/socket.py:724: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ address = ('localhost', 8098), timeout = , source_address = None def create_connection(address, timeout=_GLOBAL_DEFAULT_TIMEOUT, source_address=None): """Connect to *address* and return the socket object. Convenience function. Connect to *address* (a 2-tuple ``(host, port)``) and return the socket object. Passing the optional *timeout* parameter will set the timeout on the socket instance before attempting to connect. If no *timeout* is supplied, the global default timeout setting returned by :func:`getdefaulttimeout` is used. If *source_address* is set it must be a tuple of (host, port) for the socket to bind as a source address before making the connection. A host of '' or port 0 tells the OS to use the default. """ host, port = address err = None for res in getaddrinfo(host, port, 0, SOCK_STREAM): af, socktype, proto, canonname, sa = res sock = None try: sock = socket(af, socktype, proto) if timeout is not _GLOBAL_DEFAULT_TIMEOUT: sock.settimeout(timeout) if source_address: sock.bind(source_address) > sock.connect(sa) E ConnectionRefusedError: [Errno 111] Connection refused /usr/lib/python3.6/socket.py:713: ConnectionRefusedError During handling of the above exception, another exception occurred: empty_packdir = local('/var/tmp/portage/dev-python/pypiserver-1.3.1-r1/temp/pytest-of-portage/pytest-0/test_partial_authed_open_downl0/dists'), port = 8098 def test_partial_authed_open_download(empty_packdir, port): """Validate that partial auth still allows downloads.""" url = _build_url(port) + '/simple' with new_server(empty_packdir, port, authed='partial'): > resp = urlopen(url) tests/test_server.py:385: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.6/urllib/request.py:223: in urlopen return opener.open(url, data, timeout) /usr/lib/python3.6/urllib/request.py:526: in open response = self._open(req, data) /usr/lib/python3.6/urllib/request.py:544: in _open '_open', req) /usr/lib/python3.6/urllib/request.py:504: in _call_chain result = func(*args) /usr/lib/python3.6/urllib/request.py:1346: in http_open return self.do_open(http.client.HTTPConnection, req) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , http_class = , req = http_conn_args = {}, host = 'localhost:8098', h = def do_open(self, http_class, req, **http_conn_args): """Return an HTTPResponse object for the request, using http_class. http_class must implement the HTTPConnection API from http.client. """ host = req.host if not host: raise URLError('no host given') # will parse host:port h = http_class(host, timeout=req.timeout, **http_conn_args) h.set_debuglevel(self._debuglevel) headers = dict(req.unredirected_hdrs) headers.update(dict((k, v) for k, v in req.headers.items() if k not in headers)) # TODO(jhylton): Should this be redesigned to handle # persistent connections? # We want to make an HTTP/1.1 request, but the addinfourl # class isn't prepared to deal with a persistent connection. # It will try to read all remaining data from the socket, # which will block while the server waits for the next request. # So make sure the connection gets closed after the (only) # request. headers["Connection"] = "close" headers = dict((name.title(), val) for name, val in headers.items()) if req._tunnel_host: tunnel_headers = {} proxy_auth_hdr = "Proxy-Authorization" if proxy_auth_hdr in headers: tunnel_headers[proxy_auth_hdr] = headers[proxy_auth_hdr] # Proxy-Authorization should not be sent to origin # server. del headers[proxy_auth_hdr] h.set_tunnel(req._tunnel_host, headers=tunnel_headers) try: try: h.request(req.get_method(), req.selector, req.data, headers, encode_chunked=req.has_header('Transfer-encoding')) except OSError as err: # timeout error > raise URLError(err) E urllib.error.URLError: /usr/lib/python3.6/urllib/request.py:1320: URLError -------------------------------------------------------------------------- Captured stdout call --------------------------------------------------------------------------- Killing Srv(proc=, port=8098, package=local('/var/tmp/portage/dev-python/pypiserver-1.3.1-r1/temp/pytest-of-portage/pytest-0/test_partial_authed_open_downl0/dists')) ============================================================================ warnings summary ============================================================================= pypiserver/core.py:137 /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1/pypiserver/core.py:137: DeprecationWarning: invalid escape sequence \. "\.win-amd64-py[23]\.\d\..*|\.win32-py[23]\.\d\..*|\.egg)$", tests/test_app.py::test_root_count tests/test_app.py::test_root_count /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1/pypiserver/bottle.py:3640: DeprecationWarning: Flags not at the start of the expression '((?mx) # ver' (truncated) patterns = [re.compile(p % pattern_vars) for p in patterns] tests/test_app.py::test_root_count tests/test_app.py::test_root_count /var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1/pypiserver/bottle.py:3640: DeprecationWarning: Flags not at the start of the expression '\\{\\{((?:((?mx) ' (truncated) patterns = [re.compile(p % pattern_vars) for p in patterns] -- Docs: https://docs.pytest.org/en/latest/warnings.html ================================================ 1 failed, 286 passed, 11 skipped, 1 xfailed, 5 warnings in 522.87 seconds ================================================ * ERROR: dev-python/pypiserver-1.3.1-r1::gentoo failed (test phase): * Tests fail with python3.6 * * Call stack: * ebuild.sh, line 125: Called src_test * environment, line 2902: Called distutils-r1_src_test * environment, line 1243: Called _distutils-r1_run_foreach_impl 'python_test' * environment, line 425: Called python_foreach_impl 'distutils-r1_run_phase' 'python_test' * environment, line 2512: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' * environment, line 2025: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' * environment, line 2023: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_test' * environment, line 831: Called distutils-r1_run_phase 'python_test' * environment, line 1180: Called python_test * environment, line 2862: Called die * The specific snippet of code: * pytest -vv || die "Tests fail with ${EPYTHON}" * * If you need support, post the output of `emerge --info '=dev-python/pypiserver-1.3.1-r1::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-python/pypiserver-1.3.1-r1::gentoo'`. * The complete build log is located at '/var/tmp/portage/dev-python/pypiserver-1.3.1-r1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/pypiserver-1.3.1-r1/temp/environment'. * Working directory: '/var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1' * S: '/var/tmp/portage/dev-python/pypiserver-1.3.1-r1/work/pypiserver-1.3.1'