==> Building on litleo ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list ./ .SRCINFO 1,295 100% 0.00kB/s 0:00:00 1,295 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=6/8) .nvchecker.toml 49 100% 47.85kB/s 0:00:00 49 100% 47.85kB/s 0:00:00 (xfr#2, to-chk=5/8) PKGBUILD 1,824 100% 1.74MB/s 0:00:00 1,824 100% 1.74MB/s 0:00:00 (xfr#3, to-chk=4/8) pypiserver-2.1.1-1.log 452 100% 441.41kB/s 0:00:00 452 100% 441.41kB/s 0:00:00 (xfr#4, to-chk=3/8) keys/ keys/pgp/ keys/pgp/0BFB950A1851C0E7EE46D9BCAF5C892A5573ABED.asc 700 22% 15.90kB/s 0:00:00 3,171 100% 72.02kB/s 0:00:00 (xfr#5, to-chk=0/8) sent 2,367 bytes received 178 bytes 5,090.00 bytes/sec total size is 6,532 speedup is 2.57 ==> Ensuring required PGP keys are present...  -> Checking for 0BFB950A1851C0E7EE46D9BCAF5C892A5573ABED... ==> Running extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg -l root6 on remote host... [?25l:: Synchronizing package databases... core downloading... extra downloading... :: Starting full system upgrade... there is nothing to do [?25h==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [root6]...done ==> Making package: pypiserver 2.1.1-1 (Sun Jun 2 09:15:32 2024) ==> Retrieving sources...  -> Downloading pypiserver-2.1.1.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:02 --:--:-- 0 100 20479 0 20479 0 0 6124 0 --:--:-- 0:00:03 --:--:-- 18736 100 113k 0 113k 0 0 28450 0 --:--:-- 0:00:04 --:--:-- 63395 100 153k 0 153k 0 0 38381 0 --:--:-- 0:00:04 --:--:-- 85031 ==> Validating source files with sha512sums... pypiserver-2.1.1.tar.gz ... Passed ==> Validating source files with b2sums... pypiserver-2.1.1.tar.gz ... Passed ==> Making package: pypiserver 2.1.1-1 (Sun Jun 2 09:16:03 2024) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (7) New Version Net Change Download Size extra/python-attrs 23.2.0-3 0.54 MiB extra/python-cffi 1.16.0-2 1.32 MiB extra/python-cryptography 42.0.6-1 4.51 MiB extra/python-packaging 24.0-1 0.50 MiB extra/python-pycparser 2.22-2 1.71 MiB extra/python-wheel 0.43.0-4 0.25 MiB extra/python-pip 24.0-2 19.86 MiB 3.11 MiB Total Download Size: 3.11 MiB Total Installed Size: 28.69 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-pip-24.0-2-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-attrs... installing python-pycparser... installing python-cffi... Optional dependencies for python-cffi python-setuptools: "limited api" version checking in cffi.setuptools_ext installing python-cryptography... installing python-packaging... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures installing python-pip... [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (40) New Version Net Change Download Size extra/git 2.45.1-1 26.04 MiB extra/perl-error 0.17029-5 0.04 MiB extra/perl-mailtools 2.21-7 0.10 MiB extra/perl-timedate 2.33-5 0.08 MiB extra/python-anyio 4.4.0-1 1.23 MiB 0.19 MiB extra/python-autocommand 2.2.2-6 0.08 MiB extra/python-beautifulsoup4 4.12.3-2 1.63 MiB extra/python-certifi 2024.02.02-2 0.02 MiB 0.01 MiB extra/python-fastjsonschema 2.19.1-3 0.26 MiB extra/python-h11 0.14.0-3 0.58 MiB extra/python-httpcore 1.0.5-1 0.92 MiB 0.12 MiB extra/python-idna 3.6-2 0.70 MiB extra/python-inflect 7.2.1-2 0.36 MiB extra/python-iniconfig 2.0.0-5 0.04 MiB extra/python-jaraco.context 4.3.0-4 0.03 MiB extra/python-jaraco.functools 4.0.1-1 0.07 MiB extra/python-jaraco.text 3.12.0-3 0.08 MiB extra/python-more-itertools 10.2.0-2 0.61 MiB extra/python-ordered-set 4.1.0-5 0.06 MiB extra/python-platformdirs 4.2.0-3 0.23 MiB extra/python-pluggy 1.5.0-1 0.20 MiB extra/python-pyproject-hooks 1.1.0-1 0.10 MiB extra/python-sniffio 1.3.1-3 0.04 MiB extra/python-soupsieve 2.5-3 0.42 MiB extra/python-tomli 2.0.1-4 0.10 MiB extra/python-trove-classifiers 2024.5.22-1 0.12 MiB extra/python-typeguard 4.2.1-2 0.40 MiB extra/python-typing_extensions 4.12.0-1 0.41 MiB extra/python-validate-pyproject 0.16-1 0.31 MiB extra/python-waitress 3.0.0-2 0.48 MiB extra/python-webob 1.8.7-8 1.50 MiB extra/python-build 1.2.1-3 0.19 MiB extra/python-httpx 0.27.0-1 0.95 MiB 0.16 MiB extra/python-installer 0.7.0-8 0.18 MiB extra/python-passlib 1.7.4-7 5.22 MiB 0.79 MiB extra/python-pytest 1:8.2.1-1 3.91 MiB extra/python-setuptools 1:69.0.3-6 4.39 MiB extra/python-setuptools-git 1.2-11 0.08 MiB 0.02 MiB extra/python-watchdog 2.3.0-3 0.71 MiB 0.12 MiB extra/python-webtest 3.0.0-6 0.35 MiB Total Download Size: 1.40 MiB Total Installed Size: 53.22 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-passlib-1.7.4-7-any downloading... python-anyio-4.4.0-1-any downloading... python-httpx-0.27.0-1-any downloading... python-watchdog-2.3.0-3-any downloading... python-httpcore-1.0.5-1-any downloading... python-setuptools-git-1.2-11-any downloading... python-certifi-2024.02.02-2-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-pyproject-hooks... installing python-build... Optional dependencies for python-build python-pip: to use as the Python package installer (default) [installed] python-uv: to use as the Python package installer python-virtualenv: to use virtualenv for build isolation installing python-installer... installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-typing_extensions... installing python-typeguard... installing python-inflect... installing python-jaraco.text... installing python-ordered-set... installing python-platformdirs... installing python-tomli... installing python-fastjsonschema... installing python-trove-classifiers... installing python-validate-pyproject... installing python-setuptools... installing perl-error... installing perl-timedate... installing perl-mailtools... installing git... Optional dependencies for git tk: gitk and git gui openssh: ssh transport and crypto perl-libwww: git svn perl-term-readkey: git svn and interactive.singlekey setting perl-io-socket-ssl: git send-email TLS support perl-authen-sasl: git send-email TLS support perl-mediawiki-api: git mediawiki support perl-datetime-format-iso8601: git mediawiki support perl-lwp-protocol-https: git mediawiki https support perl-cgi: gitweb (web interface) support python: git svn & git p4 [installed] subversion: git svn org.freedesktop.secrets: keyring credential helper libsecret: libsecret credential helper [installed] installing python-setuptools-git... installing python-certifi... installing python-h11... installing python-httpcore... Optional dependencies for python-httpcore python-h2: for HTTP/2 support python-socksio: for SOCKS support python-anyio: for asyncio backend [pending] python-trio: for trio backend python-sniffio: for async support [pending] installing python-idna... installing python-sniffio... installing python-anyio... Optional dependencies for python-anyio python-trio: trio backend python-outcome: trio backend python-uvloop: use uvloop for asyncio backend python-pytest: pytest plugin [pending] installing python-httpx... Optional dependencies for python-httpx python-brotli: for brotli response decompression python-brotlicffi: for brotli response decompression python-h2: HTTP/2 support python-socksio: SOCKS proxy support python-click: command line client support python-rich: command line client support python-pygments: command line client support python-trio: alternative async library installing python-passlib... Optional dependencies for python-passlib python-fastpbkdf2: accelerate PBKDF2-based hashes python-bcrypt: accelerate Bcrypt hashes python-scrypt: accelerate SCrypt hashes installing python-iniconfig... installing python-pluggy... installing python-pytest... installing python-watchdog... Optional dependencies for python-watchdog python-yaml: for watchmedo installing python-webob... Optional dependencies for python-webob python-webob-docs: documentation installing python-soupsieve... installing python-beautifulsoup4... Optional dependencies for python-beautifulsoup4 python-cchardet: alternative to autodetect character encodings python-chardet: to autodetect character encodings python-lxml: alternative HTML parser python-html5lib: alternative HTML parser installing python-waitress... installing python-webtest... Optional dependencies for python-webtest python-pyquery: for response.pyquery python-lxml: for response.lxml :: Running post-transaction hooks... (1/1) Warn about old perl modules [?25h==> Retrieving sources...  -> Found pypiserver-2.1.1.tar.gz ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Extracting pypiserver-2.1.1.tar.gz with bsdtar ==> Starting build()... * Getting build dependencies for wheel... * Building wheel... running bdist_wheel The [wheel] section is deprecated. Use [bdist_wheel] instead. running build running build_py creating build creating build/lib creating build/lib/pypiserver copying pypiserver/pkg_helpers.py -> build/lib/pypiserver copying pypiserver/cache.py -> build/lib/pypiserver copying pypiserver/bottle.py -> build/lib/pypiserver copying pypiserver/core.py -> build/lib/pypiserver copying pypiserver/plugin.py -> build/lib/pypiserver copying pypiserver/backend.py -> build/lib/pypiserver copying pypiserver/manage.py -> build/lib/pypiserver copying pypiserver/config.py -> build/lib/pypiserver copying pypiserver/__init__.py -> build/lib/pypiserver copying pypiserver/__main__.py -> build/lib/pypiserver copying pypiserver/_app.py -> build/lib/pypiserver copying pypiserver/welcome.html -> build/lib/pypiserver installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64 creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/pkg_helpers.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/cache.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/bottle.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/core.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/plugin.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/backend.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/manage.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/config.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/__init__.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/__main__.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/_app.py -> build/bdist.linux-riscv64/wheel/pypiserver copying build/lib/pypiserver/welcome.html -> build/bdist.linux-riscv64/wheel/pypiserver running install_egg_info running egg_info creating pypiserver.egg-info writing pypiserver.egg-info/PKG-INFO writing dependency_links to pypiserver.egg-info/dependency_links.txt writing entry points to pypiserver.egg-info/entry_points.txt writing requirements to pypiserver.egg-info/requires.txt writing top-level names to pypiserver.egg-info/top_level.txt writing manifest file 'pypiserver.egg-info/SOURCES.txt' reading manifest file 'pypiserver.egg-info/SOURCES.txt' adding license file 'LICENSE.txt' adding license file 'AUTHORS.rst' writing manifest file 'pypiserver.egg-info/SOURCES.txt' Copying pypiserver.egg-info to build/bdist.linux-riscv64/wheel/pypiserver-2.1.1-py3.12.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/pypiserver-2.1.1.dist-info/WHEEL creating '/build/pypiserver/src/pypiserver-2.1.1/dist/.tmp-hnzmmenm/pypiserver-2.1.1-py2.py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'pypiserver/__init__.py' adding 'pypiserver/__main__.py' adding 'pypiserver/_app.py' adding 'pypiserver/backend.py' adding 'pypiserver/bottle.py' adding 'pypiserver/cache.py' adding 'pypiserver/config.py' adding 'pypiserver/core.py' adding 'pypiserver/manage.py' adding 'pypiserver/pkg_helpers.py' adding 'pypiserver/plugin.py' adding 'pypiserver/welcome.html' adding 'pypiserver-2.1.1.dist-info/AUTHORS.rst' adding 'pypiserver-2.1.1.dist-info/LICENSE.txt' adding 'pypiserver-2.1.1.dist-info/METADATA' adding 'pypiserver-2.1.1.dist-info/WHEEL' adding 'pypiserver-2.1.1.dist-info/entry_points.txt' adding 'pypiserver-2.1.1.dist-info/top_level.txt' adding 'pypiserver-2.1.1.dist-info/zip-safe' adding 'pypiserver-2.1.1.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel Successfully built pypiserver-2.1.1-py2.py3-none-any.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.12.3, pytest-8.2.1, pluggy-1.5.0 -- /usr/bin/python cachedir: .pytest_cache rootdir: /build/pypiserver/src/pypiserver-2.1.1 configfile: tox.ini plugins: typeguard-4.2.1, anyio-4.4.0 collecting ... collected 489 items / 6 deselected / 483 selected 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 [ 0%] tests/test_app.py::test_root_welcome_msg_no_vars[Hey there!] PASSED [ 0%] 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 [ 1%] tests/test_app.py::test_root_welcome_msg_antiXSS PASSED [ 1%] tests/test_app.py::test_root_remove_not_found_msg_antiXSS PASSED [ 1%] tests/test_app.py::test_packages_redirect PASSED [ 1%] tests/test_app.py::test_packages_empty PASSED [ 2%] tests/test_app.py::test_health_default_endpoint PASSED [ 2%] tests/test_app.py::test_health_customized_endpoint PASSED [ 2%] tests/test_app.py::test_health_invalid_customized_endpoint PASSED [ 2%] tests/test_app.py::test_favicon PASSED [ 2%] tests/test_app.py::test_fallback PASSED [ 3%] tests/test_app.py::test_no_fallback PASSED [ 3%] tests/test_app.py::test_serve_no_dotfiles PASSED [ 3%] tests/test_app.py::test_packages_list_no_dotfiles PASSED [ 3%] tests/test_app.py::test_simple_redirect PASSED [ 3%] tests/test_app.py::test_simple_list_no_dotfiles PASSED [ 4%] tests/test_app.py::test_simple_list_no_dotfiles2 PASSED [ 4%] tests/test_app.py::test_serve_no_dotdir PASSED [ 4%] tests/test_app.py::test_packages_list_no_dotdir PASSED [ 4%] tests/test_app.py::test_simple_list_no_dotdir PASSED [ 4%] tests/test_app.py::test_simple_list_no_dotdir2 PASSED [ 5%] tests/test_app.py::test_simple_name_redirect PASSED [ 5%] tests/test_app.py::test_simple_normalized_name_redirect[FooBar-foobar] PASSED [ 5%] tests/test_app.py::test_simple_normalized_name_redirect[Foo.Bar-foo-bar] PASSED [ 5%] tests/test_app.py::test_simple_normalized_name_redirect[foo_bar-foo-bar] PASSED [ 6%] tests/test_app.py::test_simple_normalized_name_redirect[Foo-Bar-foo-bar] PASSED [ 6%] tests/test_app.py::test_simple_normalized_name_redirect[foo--_.bar-foo-bar] PASSED [ 6%] tests/test_app.py::test_simple_index PASSED [ 6%] tests/test_app.py::test_simple_index_list PASSED [ 6%] tests/test_app.py::test_simple_index_case PASSED [ 7%] tests/test_app.py::test_nonroot_root PASSED [ 7%] tests/test_app.py::test_nonroot_root_with_x_forwarded_host PASSED [ 7%] tests/test_app.py::test_nonroot_root_with_x_forwarded_host_without_trailing_slash PASSED [ 7%] tests/test_app.py::test_nonroot_simple_index PASSED [ 7%] tests/test_app.py::test_nonroot_simple_index_with_x_forwarded_host PASSED [ 8%] tests/test_app.py::test_nonroot_simple_packages PASSED [ 8%] tests/test_app.py::test_nonroot_simple_packages_with_x_forwarded_host PASSED [ 8%] tests/test_app.py::test_root_no_relative_paths PASSED [ 8%] tests/test_app.py::test_simple_index_list_no_duplicates PASSED [ 8%] tests/test_app.py::test_simple_index_list_name_with_underscore PASSED [ 9%] tests/test_app.py::test_simple_index_egg_and_tarball PASSED [ 9%] tests/test_app.py::test_simple_index_list_name_with_underscore_no_egg PASSED [ 9%] tests/test_app.py::test_json_info PASSED [ 9%] tests/test_app.py::test_json_info_package_not_existing PASSED [ 9%] tests/test_app.py::test_json_info_normalized_name_redirect[FooBar-foobar] PASSED [ 10%] tests/test_app.py::test_json_info_normalized_name_redirect[Foo.Bar-foo-bar] PASSED [ 10%] tests/test_app.py::test_json_info_normalized_name_redirect[foo_bar-foo-bar] PASSED [ 10%] tests/test_app.py::test_json_info_normalized_name_redirect[Foo-Bar-foo-bar] PASSED [ 10%] tests/test_app.py::test_json_info_normalized_name_redirect[foo--_.bar-foo-bar] PASSED [ 10%] tests/test_app.py::test_no_cache_control_set PASSED [ 11%] tests/test_app.py::test_cache_control_set PASSED [ 11%] tests/test_app.py::test_upload_noAction PASSED [ 11%] tests/test_app.py::test_upload_badAction PASSED [ 11%] tests/test_app.py::test_upload[pytz-2012b.tar.bz2] PASSED [ 12%] tests/test_app.py::test_upload[pytz-2012b.tgz] PASSED [ 12%] tests/test_app.py::test_upload[pytz-2012b.ZIP] PASSED [ 12%] tests/test_app.py::test_upload[pytz-2012a.zip] PASSED [ 12%] tests/test_app.py::test_upload[pytz-2012b.tar.xz] PASSED [ 12%] tests/test_app.py::test_upload[gevent-1.0b1.win32-py2.6.exe] PASSED [ 13%] tests/test_app.py::test_upload[gevent-1.0b1.win32-py2.7.msi] PASSED [ 13%] tests/test_app.py::test_upload[greenlet-0.3.4-py3.1-win-amd64.egg] PASSED [ 13%] tests/test_app.py::test_upload[greenlet-0.3.4.win-amd64-py3.2.exe] PASSED [ 13%] tests/test_app.py::test_upload[greenlet-0.3.4-py3.2-win32.egg] PASSED [ 13%] tests/test_app.py::test_upload[greenlet-0.3.4-py2.7-linux-x86_64.egg] PASSED [ 14%] tests/test_app.py::test_upload[pep8-0.6.0.zip] PASSED [ 14%] tests/test_app.py::test_upload[ABC12-34_V1X-1.2.3.zip] PASSED [ 14%] tests/test_app.py::test_upload[A100-200-XYZ-1.2.3.zip] PASSED [ 14%] tests/test_app.py::test_upload[flup-1.0.3.dev-20110405.tar.gz] PASSED [ 14%] tests/test_app.py::test_upload[package-1.0.0-alpha.1.zip] PASSED [ 15%] tests/test_app.py::test_upload[package-1.3.7+build.11.e0f985a.zip] PASSED [ 15%] tests/test_app.py::test_upload[package-v1-8.1.301.ga0df26f.zip] PASSED [ 15%] tests/test_app.py::test_upload[package-v1.1-8.1.301.ga0df26f.zip] PASSED [ 15%] tests/test_app.py::test_upload[package-2013.02.17.dev123.zip] PASSED [ 15%] tests/test_app.py::test_upload[package-20000101.zip] PASSED [ 16%] tests/test_app.py::test_upload[flup-123-1.0.3.dev-20110405.tar.gz] PASSED [ 16%] tests/test_app.py::test_upload[package-123-1.0.0-alpha.1.zip] PASSED [ 16%] tests/test_app.py::test_upload[package-123-1.3.7+build.11.e0f985a.zip] PASSED [ 16%] tests/test_app.py::test_upload[package-123-v1.1_3-8.1.zip] PASSED [ 16%] tests/test_app.py::test_upload[package-123-2013.02.17.dev123.zip] PASSED [ 17%] tests/test_app.py::test_upload[package-123-20000101.zip] PASSED [ 17%] tests/test_app.py::test_upload[pyelasticsearch-0.5-brainbot-1-20130712.zip] PASSED [ 17%] tests/test_app.py::test_upload[pywin32-217-cp27-none-win32.whl] PASSED [ 17%] tests/test_app.py::test_upload[pywin32-217-55-cp27-none-win32.whl] PASSED [ 18%] tests/test_app.py::test_upload[pywin32-217.1-cp27-none-win32.whl] PASSED [ 18%] tests/test_app.py::test_upload[package.zip] PASSED [ 18%] tests/test_app.py::test_upload[package-name-0.0.1.dev0.linux-x86_64.tar.gz] PASSED [ 18%] tests/test_app.py::test_upload[package-name-0.0.1.dev0.macosx-10.10-intel.tar.gz] PASSED [ 18%] tests/test_app.py::test_upload[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe0] PASSED [ 19%] tests/test_app.py::test_upload[pkg-3!1.0-0.1.tgz] PASSED [ 19%] tests/test_app.py::test_upload[pkg-3!1+.0-0.1.tgz] PASSED [ 19%] tests/test_app.py::test_upload[pkg.zip] PASSED [ 19%] tests/test_app.py::test_upload[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe1] PASSED [ 19%] tests/test_app.py::test_upload_conflict_on_existing PASSED [ 20%] tests/test_app.py::test_upload_with_signature[pytz-2012b.tar.bz2] PASSED [ 20%] tests/test_app.py::test_upload_with_signature[pytz-2012b.tgz] PASSED [ 20%] tests/test_app.py::test_upload_with_signature[pytz-2012b.ZIP] PASSED [ 20%] tests/test_app.py::test_upload_with_signature[pytz-2012a.zip] PASSED [ 20%] tests/test_app.py::test_upload_with_signature[pytz-2012b.tar.xz] PASSED [ 21%] tests/test_app.py::test_upload_with_signature[gevent-1.0b1.win32-py2.6.exe] PASSED [ 21%] tests/test_app.py::test_upload_with_signature[gevent-1.0b1.win32-py2.7.msi] PASSED [ 21%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4-py3.1-win-amd64.egg] PASSED [ 21%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4.win-amd64-py3.2.exe] PASSED [ 21%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4-py3.2-win32.egg] PASSED [ 22%] tests/test_app.py::test_upload_with_signature[greenlet-0.3.4-py2.7-linux-x86_64.egg] PASSED [ 22%] tests/test_app.py::test_upload_with_signature[pep8-0.6.0.zip] PASSED [ 22%] tests/test_app.py::test_upload_with_signature[ABC12-34_V1X-1.2.3.zip] PASSED [ 22%] tests/test_app.py::test_upload_with_signature[A100-200-XYZ-1.2.3.zip] PASSED [ 22%] tests/test_app.py::test_upload_with_signature[flup-1.0.3.dev-20110405.tar.gz] PASSED [ 23%] tests/test_app.py::test_upload_with_signature[package-1.0.0-alpha.1.zip] PASSED [ 23%] tests/test_app.py::test_upload_with_signature[package-1.3.7+build.11.e0f985a.zip] PASSED [ 23%] tests/test_app.py::test_upload_with_signature[package-v1-8.1.301.ga0df26f.zip] PASSED [ 23%] tests/test_app.py::test_upload_with_signature[package-v1.1-8.1.301.ga0df26f.zip] PASSED [ 24%] tests/test_app.py::test_upload_with_signature[package-2013.02.17.dev123.zip] PASSED [ 24%] tests/test_app.py::test_upload_with_signature[package-20000101.zip] PASSED [ 24%] tests/test_app.py::test_upload_with_signature[flup-123-1.0.3.dev-20110405.tar.gz] PASSED [ 24%] tests/test_app.py::test_upload_with_signature[package-123-1.0.0-alpha.1.zip] PASSED [ 24%] tests/test_app.py::test_upload_with_signature[package-123-1.3.7+build.11.e0f985a.zip] PASSED [ 25%] tests/test_app.py::test_upload_with_signature[package-123-v1.1_3-8.1.zip] PASSED [ 25%] tests/test_app.py::test_upload_with_signature[package-123-2013.02.17.dev123.zip] PASSED [ 25%] tests/test_app.py::test_upload_with_signature[package-123-20000101.zip] PASSED [ 25%] tests/test_app.py::test_upload_with_signature[pyelasticsearch-0.5-brainbot-1-20130712.zip] PASSED [ 25%] tests/test_app.py::test_upload_with_signature[pywin32-217-cp27-none-win32.whl] PASSED [ 26%] tests/test_app.py::test_upload_with_signature[pywin32-217-55-cp27-none-win32.whl] PASSED [ 26%] tests/test_app.py::test_upload_with_signature[pywin32-217.1-cp27-none-win32.whl] PASSED [ 26%] tests/test_app.py::test_upload_with_signature[package.zip] PASSED [ 26%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.dev0.linux-x86_64.tar.gz] PASSED [ 26%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.dev0.macosx-10.10-intel.tar.gz] PASSED [ 27%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe0] PASSED [ 27%] tests/test_app.py::test_upload_with_signature[pkg-3!1.0-0.1.tgz] PASSED [ 27%] tests/test_app.py::test_upload_with_signature[pkg-3!1+.0-0.1.tgz] PASSED [ 27%] tests/test_app.py::test_upload_with_signature[pkg.zip] PASSED [ 27%] tests/test_app.py::test_upload_with_signature[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe1] PASSED [ 28%] tests/test_app.py::test_upload_badFilename[some_file] PASSED [ 28%] tests/test_app.py::test_upload_badFilename[some_file.ext] PASSED [ 28%] tests/test_app.py::test_upload_badFilename[some_wheel.whl] PASSED [ 28%] tests/test_app.py::test_search[pkgs0-matches0] PASSED [ 28%] tests/test_app.py::test_search[pkgs1-matches1] PASSED [ 29%] tests/test_app.py::test_search[pkgs2-matches2] PASSED [ 29%] tests/test_app.py::test_search[pkgs3-matches3] PASSED [ 29%] tests/test_app.py::test_search[pkgs4-matches4] PASSED [ 29%] tests/test_app.py::test_search[pkgs5-matches5] PASSED [ 30%] tests/test_app.py::TestRemovePkg::test_remove_pkg[test-1.0.tar.gz-test-1.0] PASSED [ 30%] tests/test_app.py::TestRemovePkg::test_remove_pkg[test-1.0-py2-py3-none-any.whl-test-1.0] PASSED [ 30%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[test-2.0.tar.gz-test-1.0.tar.gz-test-1.0] PASSED [ 30%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[test-2.0.tar.gz-test-1.0-py2-py3-none-any.whl-test-1.0] PASSED [ 30%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[test-2.0-py2-py3-none-any.whl-test-1.0.tar.gz-test-1.0] PASSED [ 31%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[test-2.0-py2-py3-none-any.whl-test-1.0-py2-py3-none-any.whl-test-1.0] PASSED [ 31%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[other-1.0.tar.gz-test-1.0.tar.gz-test-1.0] PASSED [ 31%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[other-1.0.tar.gz-test-1.0-py2-py3-none-any.whl-test-1.0] PASSED [ 31%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[other-1.0-py2-py3-none-any.whl-test-1.0.tar.gz-test-1.0] PASSED [ 31%] tests/test_app.py::TestRemovePkg::test_remove_pkg_only_targeted[other-1.0-py2-py3-none-any.whl-test-1.0-py2-py3-none-any.whl-test-1.0] PASSED [ 32%] tests/test_app.py::TestRemovePkg::test_all_instances_removed[pkgs0-test-1.0] PASSED [ 32%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[None-None] PASSED [ 32%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[None-] PASSED [ 32%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[-None] PASSED [ 32%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[None-1] PASSED [ 33%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[pkg-None] PASSED [ 33%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[-1] PASSED [ 33%] tests/test_app.py::TestRemovePkg::test_remove_pkg_missingNaveVersion[pkg-] PASSED [ 33%] tests/test_app.py::TestRemovePkg::test_remove_pkg_notFound PASSED [ 33%] tests/test_backend.py::test_listdir_generates_pkgfile_for_valid_package[direct-in-root.zip] PASSED [ 34%] tests/test_backend.py::test_listdir_generates_pkgfile_for_valid_package[some/nested/pkg.zip] PASSED [ 34%] tests/test_backend.py::test_listdir_doesnt_generate_pkgfile_for_invalid_file[.hidden-pkg.zip] PASSED [ 34%] tests/test_backend.py::test_listdir_doesnt_generate_pkgfile_for_invalid_file[.hidden/dir/pkg.zip] PASSED [ 34%] tests/test_backend.py::test_listdir_doesnt_generate_pkgfile_for_invalid_file[in/between/.hidden/pkg.zip] PASSED [ 34%] tests/test_backend.py::test_listdir_doesnt_generate_pkgfile_for_invalid_file[invalid-wheel.whl] PASSED [ 35%] tests/test_config.py::test_config[{subcmd}: {case}0] PASSED [ 35%] tests/test_config.py::test_config[{subcmd}: {case}1] PASSED [ 35%] tests/test_config.py::test_config[{subcmd}: {case}2] PASSED [ 35%] tests/test_config.py::test_config[{subcmd}: {case}3] PASSED [ 36%] tests/test_config.py::test_config[{subcmd}: {case}4] PASSED [ 36%] tests/test_config.py::test_config[{subcmd}: {case}5] PASSED [ 36%] tests/test_config.py::test_config[{subcmd}: {case}6] PASSED [ 36%] tests/test_config.py::test_config[{subcmd}: {case}7] PASSED [ 36%] tests/test_config.py::test_config[update with package directory (out-of-order legacy order)] PASSED [ 37%] tests/test_config.py::test_config[update with multiple package directories (weird ordering)] PASSED [ 37%] tests/test_config.py::test_config[{subcmd}: {case}8] PASSED [ 37%] tests/test_config.py::test_config[{subcmd}: {case}9] PASSED [ 37%] tests/test_config.py::test_config[{subcmd}: {case}10] PASSED [ 37%] tests/test_config.py::test_config[{subcmd}: {case}11] PASSED [ 38%] tests/test_config.py::test_config[{subcmd}: {case}12] PASSED [ 38%] tests/test_config.py::test_config[{subcmd}: {case}13] PASSED [ 38%] tests/test_config.py::test_config[{subcmd}: {case}14] PASSED [ 38%] tests/test_config.py::test_config[{subcmd}: {case}15] PASSED [ 38%] tests/test_config.py::test_config[{subcmd}: {case}16] PASSED [ 39%] tests/test_config.py::test_config[{subcmd}: {case}17] PASSED [ 39%] tests/test_config.py::test_config[{subcmd}: {case}18] PASSED [ 39%] tests/test_config.py::test_config[{subcmd}: {case}19] PASSED [ 39%] tests/test_config.py::test_config[{subcmd}: {case}20] PASSED [ 39%] tests/test_config.py::test_config[{subcmd}: {case}21] PASSED [ 40%] tests/test_config.py::test_config[{subcmd}: {case}22] PASSED [ 40%] tests/test_config.py::test_config[{subcmd}: {case}23] PASSED [ 40%] tests/test_config.py::test_config[{subcmd}: {case}24] PASSED [ 40%] tests/test_config.py::test_config[{subcmd}: {case}25] PASSED [ 40%] tests/test_config.py::test_config[{subcmd}: {case}26] PASSED [ 41%] tests/test_config.py::test_config[{subcmd}: {case}27] PASSED [ 41%] tests/test_config.py::test_config[{subcmd}: {case}28] PASSED [ 41%] tests/test_config.py::test_config[{subcmd}: {case}29] PASSED [ 41%] tests/test_config.py::test_config[{subcmd}: {case}30] PASSED [ 42%] tests/test_config.py::test_config[{subcmd}: {case}31] PASSED [ 42%] tests/test_config.py::test_config[{subcmd}: {case}32] PASSED [ 42%] tests/test_config.py::test_config[{subcmd}: {case}33] PASSED [ 42%] tests/test_config.py::test_config[Run: port unspecified] PASSED [ 42%] tests/test_config.py::test_config[Run: port specified] PASSED [ 43%] tests/test_config.py::test_config[Run: port specified (long form)] PASSED [ 43%] tests/test_config.py::test_config[Run: interface unspecified] PASSED [ 43%] tests/test_config.py::test_config[Run: interface specified] PASSED [ 43%] tests/test_config.py::test_config[Run: interface specified (long form)] PASSED [ 43%] tests/test_config.py::test_config[Run: host specified] PASSED [ 44%] tests/test_config.py::test_config[Run: host specified (long form)] PASSED [ 44%] tests/test_config.py::test_config[Run: authenticate unspecified] PASSED [ 44%] tests/test_config.py::test_config[Run: authenticate specified as non-default value] PASSED [ 44%] tests/test_config.py::test_config[Run: authenticate specified with multiple values] PASSED [ 44%] tests/test_config.py::test_config[Run: authenticate specified with dot] PASSED [ 45%] tests/test_config.py::test_config[Run: passwords file unspecified] PASSED [ 45%] tests/test_config.py::test_config[Run: passwords file specified] PASSED [ 45%] tests/test_config.py::test_config[Run: passwords file specified (long-form)] PASSED [ 45%] tests/test_config.py::test_config[Run: passwords file empty ('.')] PASSED [ 45%] tests/test_config.py::test_config[Run: disable-fallback unspecified] PASSED [ 46%] tests/test_config.py::test_config[Run: disable-fallback set] PASSED [ 46%] tests/test_config.py::test_config[Run: fallback-url unspecified] PASSED [ 46%] tests/test_config.py::test_config[Run: fallback-url specified] PASSED [ 46%] tests/test_config.py::test_config[Run: health-endpoint unspecified] PASSED [ 46%] tests/test_config.py::test_config[Run: health-endpoint specified] PASSED [ 47%] tests/test_config.py::test_config[Run: server method unspecified] PASSED [ 47%] tests/test_config.py::test_config[Run: server method set to {arg}0] PASSED [ 47%] tests/test_config.py::test_config[Run: server method set to {arg}1] PASSED [ 47%] tests/test_config.py::test_config[Run: server method set to {arg}2] PASSED [ 48%] tests/test_config.py::test_config[Run: server method set to {arg}3] PASSED [ 48%] tests/test_config.py::test_config[Run: server method set to {arg}4] PASSED [ 48%] tests/test_config.py::test_config[Run: server method set to {arg}5] PASSED [ 48%] tests/test_config.py::test_config[Run: server method set to {arg}6] PASSED [ 48%] tests/test_config.py::test_config[Run: server method is case insensitive] PASSED [ 49%] tests/test_config.py::test_config[Run: overwrite unset] PASSED [ 49%] tests/test_config.py::test_config[Run: overwrite set (long-form)0] PASSED [ 49%] tests/test_config.py::test_config[Run: overwrite set (long-form)1] PASSED [ 49%] tests/test_config.py::test_config[Run: hash-algo unspecified] PASSED [ 49%] tests/test_config.py::test_config[Run: hash-algo {}0] PASSED [ 50%] tests/test_config.py::test_config[Run: hash-algo {}1] PASSED [ 50%] tests/test_config.py::test_config[Run: hash-algo {}2] PASSED [ 50%] tests/test_config.py::test_config[Run: hash-algo {}3] PASSED [ 50%] tests/test_config.py::test_config[Run: hash-algo {}4] PASSED [ 50%] tests/test_config.py::test_config[Run: hash-algo {}5] PASSED [ 51%] tests/test_config.py::test_config[Run: hash-algo {}6] PASSED [ 51%] tests/test_config.py::test_config[Run: hash-algo {}7] PASSED [ 51%] tests/test_config.py::test_config[Run: hash-algo {}8] PASSED [ 51%] tests/test_config.py::test_config[Run: hash-algo {}9] PASSED [ 51%] tests/test_config.py::test_config[Run: hash-algo {}10] PASSED [ 52%] tests/test_config.py::test_config[Run: hash-algo {}11] PASSED [ 52%] tests/test_config.py::test_config[Run: hash-algo {}12] PASSED [ 52%] tests/test_config.py::test_config[Run: hash-algo {}13] PASSED [ 52%] tests/test_config.py::test_config[Run: hash-algo {}14] PASSED [ 53%] tests/test_config.py::test_config[Run: hash-algo {}15] PASSED [ 53%] tests/test_config.py::test_config[Run: hash-algo {}16] PASSED [ 53%] tests/test_config.py::test_config[Run: hash-algo {}17] PASSED [ 53%] tests/test_config.py::test_config[Run: hash-algo {}18] PASSED [ 53%] tests/test_config.py::test_config[Run: hash-algo disabled0] PASSED [ 54%] tests/test_config.py::test_config[Run: hash-algo disabled1] PASSED [ 54%] tests/test_config.py::test_config[Run: hash-algo disabled2] PASSED [ 54%] tests/test_config.py::test_config[Run: hash-algo disabled3] PASSED [ 54%] tests/test_config.py::test_config[Run: hash-algo disabled4] PASSED [ 54%] tests/test_config.py::test_config[Run: welcome file unspecified] PASSED [ 55%] tests/test_config.py::test_config[Run: custom welcome file specified] PASSED [ 55%] tests/test_config.py::test_config[Run: cache-control unspecified] PASSED [ 55%] tests/test_config.py::test_config[Run: cache-control specified] PASSED [ 55%] tests/test_config.py::test_config[Run: log request format unspecified] PASSED [ 55%] tests/test_config.py::test_config[Run: log request format specified] PASSED [ 56%] tests/test_config.py::test_config[Run: log response format unspecified] PASSED [ 56%] tests/test_config.py::test_config[Run: log response format specified] PASSED [ 56%] tests/test_config.py::test_config[Run: log error format unspecified] PASSED [ 56%] tests/test_config.py::test_config[Run: log error format specified] PASSED [ 56%] tests/test_config.py::test_config[Run: backend unspecified] PASSED [ 57%] tests/test_config.py::test_config[Run: simple backend specified] PASSED [ 57%] tests/test_config.py::test_config[Update: execute not specified] PASSED [ 57%] tests/test_config.py::test_config[Update: execute specified] PASSED [ 57%] tests/test_config.py::test_config[Update: execute specified (long-form)] PASSED [ 57%] tests/test_config.py::test_config[Update: download-directory not specified] PASSED [ 58%] tests/test_config.py::test_config[Update: download-directory specified] PASSED [ 58%] tests/test_config.py::test_config[Update: download-directory specified (long-form)] PASSED [ 58%] tests/test_config.py::test_config[Update: allow-unstable not specified] PASSED [ 58%] tests/test_config.py::test_config[Update: allow-unstable specified] PASSED [ 59%] tests/test_config.py::test_config[Update: allow-unstable specified (long-form)] PASSED [ 59%] tests/test_config.py::test_config[Update: ignorelist-file not specified] PASSED [ 59%] tests/test_config.py::test_config[Update: ignorelist-file specified] PASSED [ 59%] tests/test_config.py::test_config[Update: blacklist-file specified] PASSED [ 59%] tests/test_config.py::test_config_error[Invalid hash algo: true] PASSED [ 60%] tests/test_config.py::test_config_error[Invalid hash algo: foo] PASSED [ 60%] tests/test_config.py::test_config_error[Invalid hash algo: 1] PASSED [ 60%] tests/test_config.py::test_config_error[Invalid hash algo: md6] PASSED [ 60%] tests/test_config.py::test_config_error[Invalid health endpoint: /] PASSED [ 60%] tests/test_config.py::test_config_error[Invalid health endpoint: health] PASSED [ 61%] tests/test_config.py::test_config_error[Invalid health endpoint: /health!] PASSED [ 61%] tests/test_config.py::test_config_error[Invalid health endpoint: /:health] PASSED [ 61%] tests/test_config.py::test_config_error[Invalid health endpoint: /health?check=True] PASSED [ 61%] tests/test_config.py::test_argv_conf PASSED [ 61%] tests/test_core.py::test_listdir_bad_name PASSED [ 62%] tests/test_core.py::test_hashfile[sha256-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855] PASSED [ 62%] tests/test_core.py::test_hashfile[md5-d41d8cd98f00b204e9800998ecf8427e] PASSED [ 62%] tests/test_core.py::test_fname_and_hash[md5] PASSED [ 62%] tests/test_core.py::test_fname_and_hash[sha256] PASSED [ 62%] tests/test_core.py::test_fname_and_hash[sha512] PASSED [ 63%] tests/test_core.py::test_redirect_project_encodes_newlines PASSED [ 63%] tests/test_core.py::test_normalize_pkgname_for_url_encodes_newlines PASSED [ 63%] tests/test_docs.py::test_READMEversion PASSED [ 63%] tests/test_init.py::test_paste_app_factory[conf_options0] PASSED [ 63%] tests/test_init.py::test_paste_app_factory[conf_options1] PASSED [ 64%] tests/test_init.py::test_paste_app_factory[conf_options2] PASSED [ 64%] tests/test_init.py::test_paste_app_factory[conf_options3] PASSED [ 64%] tests/test_init.py::test_app_factory PASSED [ 64%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming0-updated0] PASSED [ 65%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming1-updated1] PASSED [ 65%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming2-updated2] PASSED [ 65%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming3-updated3] PASSED [ 65%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming4-updated4] PASSED [ 65%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming5-updated5] PASSED [ 66%] tests/test_init.py::test_backwards_compat_kwargs_conversion[incoming6-updated6] PASSED [ 66%] tests/test_init.py::test_backwards_compat_kwargs_duplicate_check[kwargs0] PASSED [ 66%] tests/test_init.py::test_backwards_compat_kwargs_duplicate_check[kwargs1] PASSED [ 66%] tests/test_init.py::test_setup_routes_from_config_customized_endpoint PASSED [ 66%] tests/test_init.py::test_setup_routes_from_config_invalid_customized_endpoint PASSED [ 67%] tests/test_main.py::test_default_pkgdir PASSED [ 67%] tests/test_main.py::test_noargs PASSED [ 67%] tests/test_main.py::test_port PASSED [ 67%] tests/test_main.py::test_server PASSED [ 67%] tests/test_main.py::test_wsgiserver_extra_args_present PASSED [ 68%] tests/test_main.py::test_wsgiserver_extra_kwargs_absent PASSED [ 68%] tests/test_main.py::test_root_multiple PASSED [ 68%] tests/test_main.py::test_fallback_url PASSED [ 68%] tests/test_main.py::test_fallback_url_default PASSED [ 68%] tests/test_main.py::test_hash_algo_default PASSED [ 69%] tests/test_main.py::test_hash_algo PASSED [ 69%] tests/test_main.py::test_hash_algo_off PASSED [ 69%] tests/test_main.py::test_hash_algo_BAD PASSED [ 69%] tests/test_main.py::test_logging PASSED [ 69%] tests/test_main.py::test_logging_verbosity PASSED [ 70%] tests/test_main.py::test_log_to_stdout[stderr-expected_stream0] PASSED [ 70%] tests/test_main.py::test_log_to_stdout[stdout-expected_stream1] PASSED [ 70%] tests/test_main.py::test_log_to_stdout[none-None] PASSED [ 70%] tests/test_main.py::test_init_logging_with_stream PASSED [ 71%] tests/test_main.py::test_init_logging_with_none_stream_doesnt_add_stream_handler PASSED [ 71%] tests/test_main.py::test_welcome_file PASSED [ 71%] tests/test_main.py::test_welcome_file_default PASSED [ 71%] tests/test_main.py::test_password_without_auth_list PASSED [ 71%] tests/test_main.py::test_password_alone PASSED [ 72%] tests/test_main.py::test_dot_password_without_auth_list PASSED [ 72%] tests/test_main.py::test_blacklist_file PASSED [ 72%] tests/test_main.py::test_auto_servers PASSED [ 72%] tests/test_main.py::test_health_endpoint_default PASSED [ 72%] tests/test_main.py::test_health_endpoint_customized PASSED [ 73%] tests/test_main.py::test_health_endpoint_invalid_customized PASSED [ 73%] tests/test_manage.py::test_is_stable_version[1.0-True] PASSED [ 73%] tests/test_manage.py::test_is_stable_version[0.0.0-True] PASSED [ 73%] tests/test_manage.py::test_is_stable_version[1.1beta1-False] PASSED [ 73%] tests/test_manage.py::test_is_stable_version[1.2.10-123-True] PASSED [ 74%] tests/test_manage.py::test_is_stable_version[5.5.0-DEV-False] PASSED [ 74%] tests/test_manage.py::test_is_stable_version[1.2-rc1-False] PASSED [ 74%] tests/test_manage.py::test_is_stable_version[1.0b1-False] PASSED [ 74%] tests/test_manage.py::test_build_releases PASSED [ 74%] tests/test_manage.py::test_filter_stable_releases PASSED [ 75%] tests/test_manage.py::test_filter_latest_pkgs PASSED [ 75%] tests/test_manage.py::test_filter_latest_pkgs_case_insensitive PASSED [ 75%] tests/test_manage.py::test_pip_cmd_root[10.0.0-d] PASSED [ 75%] tests/test_manage.py::test_pip_cmd_root[10.0.0rc10-d] PASSED [ 75%] tests/test_manage.py::test_pip_cmd_root[10.0.0b10-d] PASSED [ 76%] tests/test_manage.py::test_pip_cmd_root[10.0.0a3-d] PASSED [ 76%] tests/test_manage.py::test_pip_cmd_root[10.0.0.dev8-d0] PASSED [ 76%] tests/test_manage.py::test_pip_cmd_root[10.0.0.dev8-d1] PASSED [ 76%] tests/test_manage.py::test_pip_cmd_root[18.0-d] PASSED [ 77%] tests/test_manage.py::test_pip_cmd_root[9.9.8-i] PASSED [ 77%] tests/test_manage.py::test_pip_cmd_root[9.9.8rc10-i] PASSED [ 77%] tests/test_manage.py::test_pip_cmd_root[9.9.8b10-i] PASSED [ 77%] tests/test_manage.py::test_pip_cmd_root[9.9.8a10-i] PASSED [ 77%] tests/test_manage.py::test_pip_cmd_root[9.9.8.dev10-i] PASSED [ 78%] tests/test_manage.py::test_pip_cmd_root[9.9-i] PASSED [ 78%] tests/test_manage.py::test_pip_cmd_update PASSED [ 78%] tests/test_manage.py::test_pip_cmd_update_index_overridden PASSED [ 78%] tests/test_manage.py::test_update_package PASSED [ 78%] tests/test_manage.py::test_update_package_dry_run PASSED [ 79%] tests/test_manage.py::test_update_all_packages PASSED [ 79%] tests/test_manage.py::test_update_all_packages_with_blacklist PASSED [ 79%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pytz-2012b.tar.bz2-pytz-2012b] PASSED [ 79%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pytz-2012b.tgz-pytz-2012b] PASSED [ 79%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pytz-2012b.ZIP-pytz-2012b] PASSED [ 80%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pytz-2012a.zip-pytz-2012a] PASSED [ 80%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pytz-2012b.tar.xz-pytz-2012b] PASSED [ 80%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[gevent-1.0b1.win32-py2.6.exe-gevent-1.0b1] PASSED [ 80%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[gevent-1.0b1.win32-py2.7.msi-gevent-1.0b1] PASSED [ 80%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[greenlet-0.3.4-py3.1-win-amd64.egg-greenlet-0.3.4] PASSED [ 81%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[greenlet-0.3.4.win-amd64-py3.2.exe-greenlet-0.3.4] PASSED [ 81%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[greenlet-0.3.4-py3.2-win32.egg-greenlet-0.3.4] PASSED [ 81%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[greenlet-0.3.4-py2.7-linux-x86_64.egg-greenlet-0.3.4] PASSED [ 81%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pep8-0.6.0.zip-pep8-0.6.0] PASSED [ 81%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[ABC12-34_V1X-1.2.3.zip-ABC12-34_V1X-1.2.3] PASSED [ 82%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[A100-200-XYZ-1.2.3.zip-A100-200-XYZ-1.2.3] PASSED [ 82%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[flup-1.0.3.dev-20110405.tar.gz-flup-1.0.3.dev-20110405] PASSED [ 82%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-1.0.0-alpha.1.zip-package-1.0.0-alpha.1] PASSED [ 82%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-1.3.7+build.11.e0f985a.zip-package-1.3.7+build.11.e0f985a] PASSED [ 83%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-v1-8.1.301.ga0df26f.zip-package-v1-8.1.301.ga0df26f] PASSED [ 83%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-v1.1-8.1.301.ga0df26f.zip-package-v1.1-8.1.301.ga0df26f] PASSED [ 83%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-2013.02.17.dev123.zip-package-2013.02.17.dev123] PASSED [ 83%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-20000101.zip-package-20000101] PASSED [ 83%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[flup-123-1.0.3.dev-20110405.tar.gz-flup-123-1.0.3.dev-20110405] PASSED [ 84%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-123-1.0.0-alpha.1.zip-package-123-1.0.0-alpha.1] PASSED [ 84%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-123-1.3.7+build.11.e0f985a.zip-package-123-1.3.7+build.11.e0f985a] PASSED [ 84%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-123-v1.1_3-8.1.zip-package-123-v1.1_3-8.1] PASSED [ 84%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-123-2013.02.17.dev123.zip-package-123-2013.02.17.dev123] PASSED [ 84%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-123-20000101.zip-package-123-20000101] PASSED [ 85%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pyelasticsearch-0.5-brainbot-1-20130712.zip-pyelasticsearch-0.5-brainbot-1-20130712] PASSED [ 85%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pywin32-217-cp27-none-win32.whl-pywin32-217] PASSED [ 85%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pywin32-217-55-cp27-none-win32.whl-pywin32-217-55] PASSED [ 85%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pywin32-217.1-cp27-none-win32.whl-pywin32-217.1] PASSED [ 85%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package.zip-package-] PASSED [ 86%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-name-0.0.1.dev0.linux-x86_64.tar.gz-package-name-0.0.1.dev0] PASSED [ 86%] tests/test_pkg_helpers.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 [ 86%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe-package-name-0.0.1.alpha.1_0] PASSED [ 86%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pkg-3!1.0-0.1.tgz-pkg-3!1.0-0.1] PASSED [ 86%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pkg-3!1+.0-0.1.tgz-pkg-3!1+.0-0.1] PASSED [ 87%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[pkg.zip-pkg-] PASSED [ 87%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[foo/pkg.zip-pkg-] PASSED [ 87%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[foo/pkg-1b.zip-pkg-1b] PASSED [ 87%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[foo/pywin32-217.1-cp27-none-win32.whl-pywin32-217.1] PASSED [ 87%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version[package-name-0.0.1.alpha.1.win-amd64-py3.2.exe-package-name-0.0.1.alpha.1_1] PASSED [ 88%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pytz-2012b.tar.bz2-pytz-2012b] PASSED [ 88%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pytz-2012b.tgz-pytz-2012b] PASSED [ 88%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pytz-2012b.ZIP-pytz-2012b] PASSED [ 88%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pytz-2012a.zip-pytz-2012a] PASSED [ 89%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pytz-2012b.tar.xz-pytz-2012b] PASSED [ 89%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[gevent-1.0b1.win32-py2.6.exe-gevent-1.0b1] PASSED [ 89%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[gevent-1.0b1.win32-py2.7.msi-gevent-1.0b1] PASSED [ 89%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4-py3.1-win-amd64.egg-greenlet-0.3.4] PASSED [ 89%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4.win-amd64-py3.2.exe-greenlet-0.3.4] PASSED [ 90%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4-py3.2-win32.egg-greenlet-0.3.4] PASSED [ 90%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[greenlet-0.3.4-py2.7-linux-x86_64.egg-greenlet-0.3.4] PASSED [ 90%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pep8-0.6.0.zip-pep8-0.6.0] PASSED [ 90%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[ABC12-34_V1X-1.2.3.zip-ABC12-34_V1X-1.2.3] PASSED [ 90%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[A100-200-XYZ-1.2.3.zip-A100-200-XYZ-1.2.3] PASSED [ 91%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[flup-1.0.3.dev-20110405.tar.gz-flup-1.0.3.dev-20110405] PASSED [ 91%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-1.0.0-alpha.1.zip-package-1.0.0-alpha.1] PASSED [ 91%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-1.3.7+build.11.e0f985a.zip-package-1.3.7+build.11.e0f985a] PASSED [ 91%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-v1-8.1.301.ga0df26f.zip-package-v1-8.1.301.ga0df26f] PASSED [ 91%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-v1.1-8.1.301.ga0df26f.zip-package-v1.1-8.1.301.ga0df26f] PASSED [ 92%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-2013.02.17.dev123.zip-package-2013.02.17.dev123] PASSED [ 92%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-20000101.zip-package-20000101] PASSED [ 92%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[flup-123-1.0.3.dev-20110405.tar.gz-flup-123-1.0.3.dev-20110405] PASSED [ 92%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-123-1.0.0-alpha.1.zip-package-123-1.0.0-alpha.1] PASSED [ 92%] tests/test_pkg_helpers.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 [ 93%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-123-v1.1_3-8.1.zip-package-123-v1.1_3-8.1] PASSED [ 93%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-123-2013.02.17.dev123.zip-package-123-2013.02.17.dev123] PASSED [ 93%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package-123-20000101.zip-package-123-20000101] PASSED [ 93%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pyelasticsearch-0.5-brainbot-1-20130712.zip-pyelasticsearch-0.5-brainbot-1-20130712] PASSED [ 93%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pywin32-217-cp27-none-win32.whl-pywin32-217] PASSED [ 94%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pywin32-217-55-cp27-none-win32.whl-pywin32-217-55] PASSED [ 94%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pywin32-217.1-cp27-none-win32.whl-pywin32-217.1] PASSED [ 94%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[package.zip-package-] PASSED [ 94%] tests/test_pkg_helpers.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 [ 95%] tests/test_pkg_helpers.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 [ 95%] tests/test_pkg_helpers.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.1_0] PASSED [ 95%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pkg-3!1.0-0.1.tgz-pkg-3!1.0-0.1] PASSED [ 95%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pkg-3!1+.0-0.1.tgz-pkg-3!1+.0-0.1] PASSED [ 95%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[pkg.zip-pkg-] PASSED [ 96%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[foo/pkg.zip-pkg-] PASSED [ 96%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[foo/pkg-1b.zip-pkg-1b] PASSED [ 96%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_asc[foo/pywin32-217.1-cp27-none-win32.whl-pywin32-217.1] PASSED [ 96%] tests/test_pkg_helpers.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.1_1] PASSED [ 96%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_invalid_files[some_file] PASSED [ 97%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_invalid_files[some_file.ext] PASSED [ 97%] tests/test_pkg_helpers.py::test_guess_pkgname_and_version_invalid_files[some_wheel.whl] PASSED [ 97%] tests/test_pkg_helpers.py::test_allowed_path_check[/some/path-True] PASSED [ 97%] tests/test_pkg_helpers.py::test_allowed_path_check[pathname1-True] PASSED [ 97%] tests/test_pkg_helpers.py::test_allowed_path_check[/.hidden-False] PASSED [ 98%] tests/test_pkg_helpers.py::test_allowed_path_check[pathname3-False] PASSED [ 98%] tests/test_server.py::test_pip_install_package_not_found PASSED [ 98%] tests/test_server.py::test_pip_install_open_succeeds PASSED [ 98%] tests/test_server.py::test_pip_install_authed_fails PASSED [ 98%] tests/test_server.py::test_pip_install_authed_succeeds PASSED [ 99%] tests/test_server.py::test_partial_authed_open_download PASSED [ 99%] tests/test_server.py::test_hash_algos[md5] PASSED [ 99%] tests/test_server.py::test_hash_algos[sha256] PASSED [ 99%] tests/test_server.py::test_hash_algos[sha512] FAILED [100%] =================================== FAILURES =================================== ___________________________ test_hash_algos[sha512] ____________________________ server_root = PosixPath('/tmp/pytest-of-builduser/pytest-0/root0') pipdir = PosixPath('/tmp/pytest-of-builduser/pytest-0/pip6') hash_algo = 'sha512' @pytest.mark.parametrize("hash_algo", ("md5", "sha256", "sha512")) @pytest.mark.usefixtures("hosted_wheel_file") def test_hash_algos(server_root, pipdir, hash_algo): """Test twine upload with no authentication""" > with run_server( server_root, other_cli="--hash-algo {}".format(hash_algo) ) as srv: tests/test_server.py:341: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/contextlib.py:137: in __enter__ return next(self.gen) tests/test_server.py:64: in run_server wait_until_ready(srv) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ srv = Srv(port=10005, root=PosixPath('/tmp/pytest-of-builduser/pytest-0/root0')) n_tries = 10 def wait_until_ready(srv: Srv, n_tries=10): for _ in range(n_tries): if is_ready(srv): return True time.sleep(0.5) > raise TimeoutError E TimeoutError tests/test_server.py:77: TimeoutError ---------------------------- Captured stdout setup ----------------------------- in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event in-event ----------------------------- Captured stdout call ----------------------------- in-event in-event in-event Server 'auto' selected. Expecting bottle to run 'Waitress'. Passing extra keyword args: {} Bottle v0.12.18 server starting up (using AutoServer())... Listening on http://127.0.0.1:10005/ Hit Ctrl-C to quit. Serving on http://127.0.0.1:10005 Killing Srv(port=10005, root=PosixPath('/tmp/pytest-of-builduser/pytest-0/root0')) --------------------------- Captured stdout teardown --------------------------- Killing Srv(port=10002, root=PosixPath('/tmp/pytest-of-builduser/pytest-0/root0')) in-event in-event Killing Srv(port=10001, root=PosixPath('/tmp/pytest-of-builduser/pytest-0/root0')) Killing Srv(port=10000, root=PosixPath('/tmp/pytest-of-builduser/pytest-0/root0')) =============================== warnings summary =============================== ../../../../usr/lib/python3.12/site-packages/webob/compat.py:5 /usr/lib/python3.12/site-packages/webob/compat.py:5: DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13 from cgi import parse_header ../../../../usr/lib/python3.12/site-packages/passlib/utils/__init__.py:854 /usr/lib/python3.12/site-packages/passlib/utils/__init__.py:854: DeprecationWarning: 'crypt' is deprecated and slated for removal in Python 3.13 from crypt import crypt as _crypt tests/test_server.py:148 /build/pypiserver/src/pypiserver-2.1.1/tests/test_server.py:148: SyntaxWarning: invalid escape sequence '\.' if re.match("^3\.7", sys.version): tests/test_app.py::test_root_count tests/test_app.py::test_nonroot_simple_index tests/test_app.py::test_nonroot_simple_index_with_x_forwarded_host tests/test_app.py::test_nonroot_simple_packages tests/test_app.py::test_nonroot_simple_packages_with_x_forwarded_host /build/pypiserver/src/pypiserver-2.1.1/tests/test_app.py:107: DeprecationWarning: Attribute access is deprecated. backend = app.config.backend -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_server.py::test_hash_algos[sha512] - TimeoutError ===== 1 failed, 482 passed, 6 deselected, 8 warnings in 222.78s (0:03:42) ====== ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/root6/build [?25h[?25hreceiving incremental file list pypiserver-2.1.1-1-riscv64-build.log pypiserver-2.1.1-1-riscv64-check.log sent 62 bytes received 7,087 bytes 14,298.00 bytes/sec total size is 56,240 speedup is 7.87