==> Building on Q ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list ./ PKGBUILD 1,991 100% 0.00kB/s 0:00:00 1,991 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=1/3) python-pdm-2.1.0-1.log 246 100% 240.23kB/s 0:00:00 246 100% 240.23kB/s 0:00:00 (xfr#2, to-chk=0/3) sent 1,194 bytes received 81 bytes 850.00 bytes/sec total size is 2,179 speedup is 1.71 ==> Running extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg -l felix14 on remote host... [?25l:: Synchronizing package databases... core downloading... extra downloading... community 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] -> [felix14]...done ==> Making package: python-pdm 2.1.0-1 (Sun Jul 31 19:45:51 2022) ==> Retrieving sources...  -> Downloading pdm-2.1.0.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 3202k 0 11885 0 0 14103 0 0:03:52 --:--:-- 0:03:52 14103 100 3202k 100 3202k 0 0 3672k 0 --:--:-- --:--:-- --:--:-- 107M ==> Validating source files with sha512sums... pdm-2.1.0.tar.gz ... Passed ==> Validating source files with b2sums... pdm-2.1.0.tar.gz ... Passed ==> Making package: python-pdm 2.1.0-1 (Sun Jul 31 19:45:59 2022) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (56) New Version Net Change Download Size core/libnsl 2.0.0-2 0.06 MiB core/python 3.10.5-1 80.43 MiB extra/python-appdirs 1.4.4-6 0.07 MiB community/python-boolean.py 4.0-1 0.26 MiB community/python-cerberus 1.3.4-4 0.59 MiB community/python-certifi 2022.06.15-1 0.01 MiB extra/python-cffi 1.15.1-1 1.00 MiB extra/python-chardet 4.0.0-5 2.10 MiB community/python-colorama 0.4.5-1 0.08 MiB community/python-commonmark 0.9.1-5 0.62 MiB extra/python-cryptography 37.0.4-1 3.54 MiB community/python-distlib 0.3.5-1 0.95 MiB community/python-distro 1.7.0-1 0.16 MiB community/python-docutils 1:0.19-1 4.28 MiB community/python-filelock 3.6.0-1 0.05 MiB community/python-future 0.18.2-7 3.86 MiB extra/python-idna 3.3-4 0.66 MiB community/python-importlib-metadata 4.8.1-3 0.15 MiB community/python-license-expression 30.0.0-1 0.87 MiB community/python-more-itertools 8.13.0-2 0.48 MiB community/python-msgpack 1.0.3-1 0.22 MiB extra/python-ordered-set 4.0.2-6 0.06 MiB extra/python-ply 3.11-10 0.31 MiB extra/python-pycparser 2.21-3 1.39 MiB community/python-pygments 2.12.0-1 11.43 MiB extra/python-pyopenssl 22.0.0-1 0.54 MiB extra/python-pyparsing 3.0.9-1 0.96 MiB extra/python-requests 2.27.1-1 0.45 MiB extra/python-setuptools 1:59.5.0-1 2.96 MiB extra/python-six 1.16.0-5 0.09 MiB community/python-tenacity 8.0.1-3 0.14 MiB extra/python-tomli-w 1.0.0-4 0.02 MiB community/python-typing_extensions 4.2.0-1 0.19 MiB extra/python-urllib3 1.26.7-5 0.69 MiB community/python-webencodings 0.5.1-9 0.06 MiB community/python-zipp 3.8.1-1 0.03 MiB community/python-blinker 1.4-11 0.09 MiB community/python-cachecontrol 1:0.12.6-4 0.10 MiB community/python-click 8.1.3-1 0.89 MiB community/python-dotenv 0.20.0-2 0.10 MiB 0.03 MiB community/python-findpython 0.2.0-1 0.13 MiB community/python-installer 0.5.1-1 1.13 MiB extra/python-packaging 21.3-1 0.26 MiB community/python-pdm-pep517 1:1.0.2-1 0.27 MiB 0.06 MiB extra/python-pep517 0.12.0-4 0.13 MiB extra/python-pip 22.2-1 2.83 MiB 0.55 MiB extra/python-platformdirs 2.5.1-1 0.12 MiB community/python-requests-toolbelt 0.9.1-7 0.38 MiB extra/python-resolvelib 0.8.1-1 0.10 MiB community/python-rich 12.5.1-1 1.85 MiB community/python-shellingham 1.4.0-4 0.04 MiB extra/python-tomli 2.0.1-1 0.08 MiB community/python-tomlkit 0.11.1-1 0.38 MiB community/python-unearth 0.5.2-1 0.30 MiB 0.06 MiB extra/python-virtualenv 20.11.0-1 6.80 MiB community/python-wheel 0.37.1-1 0.16 MiB Total Download Size: 0.70 MiB Total Installed Size: 135.92 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-pip-22.2-1-any downloading... python-unearth-0.5.2-1-any downloading... python-pdm-pep517-1:1.0.2-1-any downloading... python-dotenv-0.20.0-2-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing libnsl... installing python... Optional dependencies for python python-setuptools [pending] python-pip [pending] sqlite [installed] mpdecimal: for decimal xz: for lzma [installed] tk: for tkinter installing python-blinker... installing python-msgpack... installing python-urllib3... Optional dependencies for python-urllib3 python-pysocks: SOCKS support python-brotli: Brotli support python-pyopenssl: security support [pending] python-idna: security support [pending] installing python-chardet... installing python-idna... installing python-requests... Optional dependencies for python-requests python-pysocks: SOCKS proxy support installing python-cachecontrol... Optional dependencies for python-cachecontrol python-lockfile: for the FileCache installing python-click... installing python-dotenv... Optional dependencies for python-dotenv ipython: ipython support installing python-pyparsing... Optional dependencies for python-pyparsing python-railroad-diagrams: for generating Railroad Diagrams python-jinja: for generating Railroad Diagrams installing python-packaging... installing python-findpython... installing python-installer... installing python-appdirs... installing python-more-itertools... installing python-ordered-set... installing python-setuptools... installing python-cerberus... installing python-boolean.py... installing python-license-expression... installing python-tomli... installing python-tomli-w... installing python-pdm-pep517... Optional dependencies for python-pdm-pep517 python-setuptools: for setuptools support [installed] installing python-pep517... installing python-certifi... installing python-colorama... installing python-distlib... installing python-distro... installing python-platformdirs... installing python-pygments... installing python-resolvelib... installing python-typing_extensions... installing python-docutils... installing python-future... Optional dependencies for python-future python-setuptools: futurize and pasteurize scripts [installed] installing python-commonmark... installing python-rich... installing python-six... installing python-tenacity... Optional dependencies for python-tenacity python-tornado: for Tornado coroutines support installing python-webencodings... installing python-ply... installing python-pycparser... installing python-cffi... installing python-cryptography... installing python-pyopenssl... installing python-pip... installing python-requests-toolbelt... installing python-shellingham... installing python-tomlkit... installing python-unearth... Optional dependencies for python-unearth python-keyring: use keyring for authentication installing python-filelock... installing python-zipp... installing python-importlib-metadata... installing python-virtualenv... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (12) New Version Net Change community/python-apipkg 2.1.1-1 0.03 MiB extra/python-attrs 21.4.0-1 0.45 MiB community/python-execnet 1.9.0-4 0.31 MiB community/python-iniconfig 1.1.1-5 0.02 MiB community/python-pluggy 1.0.0-1 0.10 MiB community/python-psutil 5.9.1-1 2.09 MiB community/python-py 1.11.0-1 0.71 MiB community/python-pytest-forked 1.4.0-1 0.02 MiB community/python-build 0.8.0-1 0.97 MiB community/python-pytest 7.1.2-1 2.62 MiB community/python-pytest-mock 3.7.0-1 0.07 MiB community/python-pytest-xdist 2.5.0-1 0.29 MiB Total Installed Size: 7.68 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-build... Optional dependencies for python-build python-virtualenv: Use virtualenv for build isolation [installed] installing python-attrs... installing python-iniconfig... installing python-pluggy... installing python-apipkg... installing python-py... installing python-pytest... installing python-pytest-mock... installing python-execnet... installing python-psutil... installing python-pytest-forked... installing python-pytest-xdist... [?25h==> Retrieving sources...  -> Found pdm-2.1.0.tar.gz ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Extracting pdm-2.1.0.tar.gz with bsdtar ==> Starting build()... * Getting dependencies for wheel... * Building wheel... - Adding pdm/__init__.py - Adding pdm/__main__.py - Adding pdm/__version__.py - Adding pdm/_types.py - Adding pdm/builders/__init__.py - Adding pdm/builders/base.py - Adding pdm/builders/editable.py - Adding pdm/builders/sdist.py - Adding pdm/builders/wheel.py - Adding pdm/cli/__init__.py - Adding pdm/cli/actions.py - Adding pdm/cli/commands/__init__.py - Adding pdm/cli/commands/add.py - Adding pdm/cli/commands/base.py - Adding pdm/cli/commands/build.py - Adding pdm/cli/commands/cache.py - Adding pdm/cli/commands/completion.py - Adding pdm/cli/commands/config.py - Adding pdm/cli/commands/export.py - Adding pdm/cli/commands/import_cmd.py - Adding pdm/cli/commands/info.py - Adding pdm/cli/commands/init.py - Adding pdm/cli/commands/install.py - Adding pdm/cli/commands/list.py - Adding pdm/cli/commands/lock.py - Adding pdm/cli/commands/plugin.py - Adding pdm/cli/commands/publish/__init__.py - Adding pdm/cli/commands/publish/package.py - Adding pdm/cli/commands/publish/repository.py - Adding pdm/cli/commands/remove.py - Adding pdm/cli/commands/run.py - Adding pdm/cli/commands/search.py - Adding pdm/cli/commands/show.py - Adding pdm/cli/commands/sync.py - Adding pdm/cli/commands/update.py - Adding pdm/cli/commands/use.py - Adding pdm/cli/commands/venv/__init__.py - Adding pdm/cli/commands/venv/activate.py - Adding pdm/cli/commands/venv/backends.py - Adding pdm/cli/commands/venv/create.py - Adding pdm/cli/commands/venv/list.py - Adding pdm/cli/commands/venv/purge.py - Adding pdm/cli/commands/venv/remove.py - Adding pdm/cli/commands/venv/utils.py - Adding pdm/cli/completions/__init__.py - Adding pdm/cli/completions/pdm.bash - Adding pdm/cli/completions/pdm.fish - Adding pdm/cli/completions/pdm.ps1 - Adding pdm/cli/completions/pdm.zsh - Adding pdm/cli/hooks.py - Adding pdm/cli/options.py - Adding pdm/cli/utils.py - Adding pdm/compat.py - Adding pdm/core.py - Adding pdm/exceptions.py - Adding pdm/formats/__init__.py - Adding pdm/formats/base.py - Adding pdm/formats/flit.py - Adding pdm/formats/pipfile.py - Adding pdm/formats/poetry.py - Adding pdm/formats/requirements.py - Adding pdm/formats/setup_py.py - Adding pdm/installers/__init__.py - Adding pdm/installers/installers.py - Adding pdm/installers/manager.py - Adding pdm/installers/packages.py - Adding pdm/installers/synchronizers.py - Adding pdm/installers/uninstallers.py - Adding pdm/models/__init__.py - Adding pdm/models/auth.py - Adding pdm/models/caches.py - Adding pdm/models/candidates.py - Adding pdm/models/environment.py - Adding pdm/models/in_process/__init__.py - Adding pdm/models/in_process/get_abi_tag.py - Adding pdm/models/in_process/parse_setup.py - Adding pdm/models/in_process/pep508.py - Adding pdm/models/in_process/sysconfig_get_paths.py - Adding pdm/models/markers.py - Adding pdm/models/project_info.py - Adding pdm/models/python.py - Adding pdm/models/python_max_versions.json - Adding pdm/models/repositories.py - Adding pdm/models/requirements.py - Adding pdm/models/search.py - Adding pdm/models/session.py - Adding pdm/models/setup.py - Adding pdm/models/specifiers.py - Adding pdm/models/versions.py - Adding pdm/models/working_set.py - Adding pdm/pep582/sitecustomize.py - Adding pdm/project/__init__.py - Adding pdm/project/config.py - Adding pdm/project/core.py - Adding pdm/project/metadata.py - Adding pdm/py.typed - Adding pdm/resolver/__init__.py - Adding pdm/resolver/core.py - Adding pdm/resolver/providers.py - Adding pdm/resolver/python.py - Adding pdm/resolver/reporters.py - Adding pdm/signals.py - Adding pdm/termui.py - Adding pdm/utils.py - Adding pdm-2.1.0.dist-info/entry_points.txt - Adding pdm-2.1.0.dist-info/WHEEL - Adding pdm-2.1.0.dist-info/METADATA - Adding pdm-2.1.0.dist-info/license_files/LICENSE - Adding pdm-2.1.0.dist-info/RECORD Successfully built pdm-2.1.0-py3-none-any.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.10.5, pytest-7.1.2, pluggy-1.0.0 -- /usr/bin/python cachedir: .pytest_cache rootdir: /dev, configfile: null plugins: mock-3.7.0, forked-1.4.0, xdist-2.5.0 collecting ... collected 562 items / 1 deselected / 561 selected ../../../../dev/tests/test_formats.py::test_convert_pipfile <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 0%] ../../../../dev/tests/test_formats.py::test_convert_requirements_file[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 0%] ../../../../dev/tests/test_formats.py::test_convert_requirements_file[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 0%] ../../../../dev/tests/test_formats.py::test_convert_requirements_file_without_name <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 0%] ../../../../dev/tests/test_formats.py::test_convert_poetry <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 0%] ../../../../dev/tests/test_formats.py::test_convert_flit <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 1%] ../../../../dev/tests/test_formats.py::test_export_setup_py <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 1%] ../../../../dev/tests/test_formats.py::test_import_requirements_with_group <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 1%] ../../../../dev/tests/test_formats.py::test_export_expand_env_vars_in_source <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 1%] ../../../../dev/tests/test_formats.py::test_export_replace_project_root <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 1%] ../../../../dev/tests/test_formats.py::test_convert_setup_py_project <- ../build/python-pdm/src/pdm-2.1.0/tests/test_formats.py PASSED [ 1%] ../../../../dev/tests/test_installer.py::test_install_wheel_with_inconsistent_dist_info <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 2%] ../../../../dev/tests/test_installer.py::test_install_with_file_existing <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 2%] ../../../../dev/tests/test_installer.py::test_uninstall_commit_rollback <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 2%] ../../../../dev/tests/test_installer.py::test_rollback_after_commit <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 2%] ../../../../dev/tests/test_installer.py::test_uninstall_with_console_scripts[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 2%] ../../../../dev/tests/test_installer.py::test_uninstall_with_console_scripts[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 3%] ../../../../dev/tests/test_installer.py::test_install_wheel_with_cache <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 3%] ../../../../dev/tests/test_installer.py::test_url_requirement_is_not_cached <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 3%] ../../../../dev/tests/test_installer.py::test_install_wheel_with_data_scripts[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 3%] ../../../../dev/tests/test_installer.py::test_install_wheel_with_data_scripts[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py FAILED [ 3%] ../../../../dev/tests/test_installer.py::test_compress_file_list_for_rename <- ../build/python-pdm/src/pdm-2.1.0/tests/test_installer.py PASSED [ 3%] ../../../../dev/tests/test_integration.py::test_actual_list_freeze <- ../build/python-pdm/src/pdm-2.1.0/tests/test_integration.py FAILED [ 4%] ../../../../dev/tests/test_plugin.py::test_plugin_new_command <- ../build/python-pdm/src/pdm-2.1.0/tests/test_plugin.py PASSED [ 4%] ../../../../dev/tests/test_plugin.py::test_plugin_replace_command <- ../build/python-pdm/src/pdm-2.1.0/tests/test_plugin.py PASSED [ 4%] ../../../../dev/tests/test_plugin.py::test_load_multiple_plugings <- ../build/python-pdm/src/pdm-2.1.0/tests/test_plugin.py PASSED [ 4%] ../../../../dev/tests/test_plugin.py::test_old_entry_point_compatibility <- ../build/python-pdm/src/pdm-2.1.0/tests/test_plugin.py PASSED [ 4%] ../../../../dev/tests/test_project.py::test_project_python_with_pyenv_support <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 4%] ../../../../dev/tests/test_project.py::test_project_config_items <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 5%] ../../../../dev/tests/test_project.py::test_project_config_set_invalid_key <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 5%] ../../../../dev/tests/test_project.py::test_project_sources_overriding <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 5%] ../../../../dev/tests/test_project.py::test_project_sources_env_var_expansion <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 5%] ../../../../dev/tests/test_project.py::test_global_project <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 5%] ../../../../dev/tests/test_project.py::test_auto_global_project <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 6%] ../../../../dev/tests/test_project.py::test_project_use_venv <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 6%] ../../../../dev/tests/test_project.py::test_project_packages_path <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 6%] ../../../../dev/tests/test_project.py::test_project_auto_detect_venv <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 6%] ../../../../dev/tests/test_project.py::test_ignore_saved_python <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 6%] ../../../../dev/tests/test_project.py::test_select_dependencies <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 6%] ../../../../dev/tests/test_project.py::test_global_python_path_config <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 7%] ../../../../dev/tests/test_project.py::test_set_non_exist_python_path <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 7%] ../../../../dev/tests/test_project.py::test_create_venv_first_time[virtualenv] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 7%] ../../../../dev/tests/test_project.py::test_create_venv_first_time[venv] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 7%] ../../../../dev/tests/test_project.py::test_create_venv_in_project[virtualenv] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 7%] ../../../../dev/tests/test_project.py::test_create_venv_in_project[venv] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 8%] ../../../../dev/tests/test_project.py::test_find_interpreters_from_venv[virtualenv] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 8%] ../../../../dev/tests/test_project.py::test_find_interpreters_from_venv[venv] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 8%] ../../../../dev/tests/test_project.py::test_iter_project_venvs <- ../build/python-pdm/src/pdm-2.1.0/tests/test_project.py PASSED [ 8%] ../../../../dev/tests/test_signals.py::test_post_init_signal <- ../build/python-pdm/src/pdm-2.1.0/tests/test_signals.py PASSED [ 8%] ../../../../dev/tests/test_signals.py::test_post_lock_and_install_signals <- ../build/python-pdm/src/pdm-2.1.0/tests/test_signals.py PASSED [ 8%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[test-test] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 9%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[-] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 9%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[${FOO}-hello] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 9%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[$FOO-$FOO] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 9%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[${BAR}-${BAR}] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 9%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[%FOO%-%FOO%] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 9%] ../../../../dev/tests/test_utils.py::test_expand_env_vars[${FOO}_${FOO}-hello_hello] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 10%] ../../../../dev/tests/test_utils.py::test_expend_env_vars_in_auth[https:/example.org/path?arg=1-https:/example.org/path?arg=1] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 10%] ../../../../dev/tests/test_utils.py::test_expend_env_vars_in_auth[https:/${FOO}@example.org/path?arg=1-https:/hello@example.org/path?arg=1] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 10%] ../../../../dev/tests/test_utils.py::test_expend_env_vars_in_auth[https:/${FOO}:${BAR}@example.org/path?arg=1-https:/hello:wo%3Arld@example.org/path?arg=1] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 10%] ../../../../dev/tests/test_utils.py::test_expend_env_vars_in_auth[https:/${FOOBAR}@example.org/path?arg=1-https:/%24%7BFOOBAR%7D@example.org/path?arg=1] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 10%] ../../../../dev/tests/test_utils.py::test_find_python_in_path <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 11%] ../../../../dev/tests/test_utils.py::test_merge_dictionary <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 11%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args0-golden0] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 11%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args1-golden1] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 11%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args2-golden2] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 11%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args3-golden3] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 11%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args4-golden4] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 12%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args5-golden5] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 12%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args6-golden6] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 12%] ../../../../dev/tests/test_utils.py::test_dependency_group_selection[args7-golden7] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 12%] ../../../../dev/tests/test_utils.py::test_prod_should_not_be_with_dev <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 12%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources0-None-expected0] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 13%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources1-pip_args1-expected1] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 13%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources2-None-expected2] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 13%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources3-None-expected3] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 13%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources4-None-expected4] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 13%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources5-None-expected5] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 13%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources6-None-expected6] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 14%] ../../../../dev/tests/test_utils.py::test_prepare_pip_source_args[sources7-None-expected7] <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 14%] ../../../../dev/tests/test_utils.py::test_deprecation_warning <- ../build/python-pdm/src/pdm-2.1.0/tests/test_utils.py PASSED [ 14%] ../../../../dev/tests/cli/test_add.py::test_add_package[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 14%] ../../../../dev/tests/cli/test_add.py::test_add_package[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 14%] ../../../../dev/tests/cli/test_add.py::test_add_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 14%] ../../../../dev/tests/cli/test_add.py::test_add_package_to_custom_group <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 15%] ../../../../dev/tests/cli/test_add.py::test_add_package_to_custom_dev_group <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 15%] ../../../../dev/tests/cli/test_add.py::test_add_editable_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py FAILED [ 15%] ../../../../dev/tests/cli/test_add.py::test_add_editable_package_to_metadata_forbidden <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 15%] ../../../../dev/tests/cli/test_add.py::test_non_editable_override_editable <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py FAILED [ 15%] ../../../../dev/tests/cli/test_add.py::test_add_remote_package_url[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py FAILED [ 16%] ../../../../dev/tests/cli/test_add.py::test_add_remote_package_url[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py FAILED [ 16%] ../../../../dev/tests/cli/test_add.py::test_add_no_install <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 16%] ../../../../dev/tests/cli/test_add.py::test_add_package_save_exact <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 16%] ../../../../dev/tests/cli/test_add.py::test_add_package_save_wildcard <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 16%] ../../../../dev/tests/cli/test_add.py::test_add_package_save_minimum <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 16%] ../../../../dev/tests/cli/test_add.py::test_add_package_update_reuse <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 17%] ../../../../dev/tests/cli/test_add.py::test_add_package_update_eager <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 17%] ../../../../dev/tests/cli/test_add.py::test_add_package_with_mismatch_marker <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 17%] ../../../../dev/tests/cli/test_add.py::test_add_dependency_from_multiple_parents <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 17%] ../../../../dev/tests/cli/test_add.py::test_add_packages_without_self <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 17%] ../../../../dev/tests/cli/test_add.py::test_add_package_unconstrained_rewrite_specifier <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 18%] ../../../../dev/tests/cli/test_add.py::test_add_cached_vcs_requirement <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py FAILED [ 18%] ../../../../dev/tests/cli/test_add.py::test_add_with_dry_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 18%] ../../../../dev/tests/cli/test_add.py::test_add_with_prerelease <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_add.py PASSED [ 18%] ../../../../dev/tests/cli/test_build.py::test_build_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 18%] ../../../../dev/tests/cli/test_build.py::test_build_global_project_forbidden <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 18%] ../../../../dev/tests/cli/test_build.py::test_build_single_module <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 19%] ../../../../dev/tests/cli/test_build.py::test_build_single_module_with_readme <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 19%] ../../../../dev/tests/cli/test_build.py::test_build_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 19%] ../../../../dev/tests/cli/test_build.py::test_build_src_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 19%] ../../../../dev/tests/cli/test_build.py::test_build_package_include <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 19%] ../../../../dev/tests/cli/test_build.py::test_build_src_package_by_include <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 19%] ../../../../dev/tests/cli/test_build.py::test_build_with_config_settings <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 20%] ../../../../dev/tests/cli/test_build.py::test_cli_build_with_config_settings <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 20%] ../../../../dev/tests/cli/test_build.py::test_build_with_no_isolation[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 20%] ../../../../dev/tests/cli/test_build.py::test_build_with_no_isolation[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py FAILED [ 20%] ../../../../dev/tests/cli/test_build.py::test_build_ignoring_pip_environment <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_build.py PASSED [ 20%] ../../../../dev/tests/cli/test_cache.py::test_cache_list <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 21%] ../../../../dev/tests/cli/test_cache.py::test_cache_list_pattern <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 21%] ../../../../dev/tests/cli/test_cache.py::test_cache_remove_pattern <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 21%] ../../../../dev/tests/cli/test_cache.py::test_cache_remove_wildcard <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 21%] ../../../../dev/tests/cli/test_cache.py::test_cache_clear <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 21%] ../../../../dev/tests/cli/test_cache.py::test_cache_remove_no_pattern <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 21%] ../../../../dev/tests/cli/test_cache.py::test_cache_info <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 22%] ../../../../dev/tests/cli/test_cache.py::test_hash_cache[http:/fixtures.test/artifacts/demo-0.0.1.tar.gz-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py FAILED [ 22%] ../../../../dev/tests/cli/test_cache.py::test_hash_cache[file:/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py FAILED [ 22%] ../../../../dev/tests/cli/test_cache.py::test_hash_cache[http:/fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d-sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py FAILED [ 22%] ../../../../dev/tests/cli/test_cache.py::test_hash_cache[http:/fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646adde8fd3307e1-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py FAILED [ 22%] ../../../../dev/tests/cli/test_cache.py::test_clear_package_cache <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_cache.py PASSED [ 22%] ../../../../dev/tests/cli/test_config.py::test_config_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 23%] ../../../../dev/tests/cli/test_config.py::test_config_get_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 23%] ../../../../dev/tests/cli/test_config.py::test_config_set_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 23%] ../../../../dev/tests/cli/test_config.py::test_config_del_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 23%] ../../../../dev/tests/cli/test_config.py::test_config_env_var_shadowing <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 23%] ../../../../dev/tests/cli/test_config.py::test_config_project_global_precedence <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 24%] ../../../../dev/tests/cli/test_config.py::test_deprecated_config_name <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 24%] ../../../../dev/tests/cli/test_config.py::test_rename_deprecated_config <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 24%] ../../../../dev/tests/cli/test_config.py::test_specify_config_file <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 24%] ../../../../dev/tests/cli/test_config.py::test_default_repository_setting <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 24%] ../../../../dev/tests/cli/test_config.py::test_repository_config_not_available_on_project <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 24%] ../../../../dev/tests/cli/test_config.py::test_repository_config_key_short <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 25%] ../../../../dev/tests/cli/test_config.py::test_repository_overwrite_default <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 25%] ../../../../dev/tests/cli/test_config.py::test_hide_password_in_output <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 25%] ../../../../dev/tests/cli/test_config.py::test_config_get_repository <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 25%] ../../../../dev/tests/cli/test_config.py::test_config_set_repository <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 25%] ../../../../dev/tests/cli/test_config.py::test_config_del_repository <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py PASSED [ 26%] ../../../../dev/tests/cli/test_hooks.py::test_pre_script_fail_fast <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 26%] ../../../../dev/tests/cli/test_hooks.py::test_pre_and_post_scripts <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 26%] ../../../../dev/tests/cli/test_hooks.py::test_composite_runs_all_hooks <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 26%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_hooks_option[:all] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 26%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_hooks_option[:pre,:post] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 26%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option[--skip pre_test,post_first,second] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 27%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option[-k pre_test,post_first,second] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 27%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option[--skip pre_test --skip post_first --skip second] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 27%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option[-k pre_test -k post_first -k second] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 27%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option[--skip pre_test --skip post_first,second] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 27%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option[-k pre_test -k post_first,second] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 27%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_default_from_env[pre_test-expected0] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 28%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_default_from_env[pre_test,post_test-expected1] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 28%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_default_from_env[pre_test , post_test-expected2] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 28%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_default_from_env[None-None] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 28%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_default_from_env[ -None] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 28%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_default_from_env[ , -None] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 29%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[add] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 29%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 29%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[init] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 29%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 29%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 29%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 30%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[remove] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 30%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[sync] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 30%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[update] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 30%] ../../../../dev/tests/cli/test_hooks.py::test_hooks[use] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 30%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[add-pre_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 31%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[add-post_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 31%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[build-pre_build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 31%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[build-post_build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 31%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[init-post_init] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 31%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[install-pre_install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 31%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[install-post_install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 32%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[install-pre_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 32%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[install-post_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 32%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[lock-pre_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 32%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[lock-post_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 32%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[publish-pre_publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 32%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[publish-pre_build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 33%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[publish-post_build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 33%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[publish-post_publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 33%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[remove-pre_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 33%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[remove-post_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 33%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[sync-pre_install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 34%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[sync-post_install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 34%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[update-pre_install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 34%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[update-post_install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 34%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[update-pre_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 34%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[update-post_lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 34%] ../../../../dev/tests/cli/test_hooks.py::test_skip_option_from_signal[use-post_use] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 35%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-add] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 35%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 35%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-init] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 35%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 35%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 36%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 36%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-remove] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 36%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-sync] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 36%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-update] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 36%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:all-use] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 36%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-add] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 37%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 37%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-init] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 37%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 37%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 37%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 37%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-remove] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 38%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-sync] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 38%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-update] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 38%] ../../../../dev/tests/cli/test_hooks.py::test_skip_all_option_from_signal[:pre,:post-use] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 38%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-add] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 38%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 39%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-init] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 39%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 39%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 39%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 39%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-remove] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 39%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-sync] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 40%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-update] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 40%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[pre-use] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 40%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-add] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 40%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-build] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 40%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-init] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 40%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-install] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 41%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-lock] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 41%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-publish] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 41%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-remove] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 41%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-sync] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 41%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-update] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 42%] ../../../../dev/tests/cli/test_hooks.py::test_skip_pre_post_option_from_signal[post-use] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_hooks.py PASSED [ 42%] ../../../../dev/tests/cli/test_init.py::test_init_validate_python_requires <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_init.py PASSED [ 42%] ../../../../dev/tests/cli/test_init.py::test_init_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_init.py PASSED [ 42%] ../../../../dev/tests/cli/test_init.py::test_init_command_library <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_init.py PASSED [ 42%] ../../../../dev/tests/cli/test_init.py::test_init_non_interactive <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_init.py PASSED [ 42%] ../../../../dev/tests/cli/test_init.py::test_init_auto_create_venv <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_init.py PASSED [ 43%] ../../../../dev/tests/cli/test_init.py::test_init_auto_create_venv_answer_no <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_init.py PASSED [ 43%] ../../../../dev/tests/cli/test_install.py::test_sync_packages_with_group_all <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 43%] ../../../../dev/tests/cli/test_install.py::test_sync_packages_with_all_dev <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 43%] ../../../../dev/tests/cli/test_install.py::test_sync_no_lockfile <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 43%] ../../../../dev/tests/cli/test_install.py::test_sync_clean_packages <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 44%] ../../../../dev/tests/cli/test_install.py::test_sync_dry_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 44%] ../../../../dev/tests/cli/test_install.py::test_sync_only_different <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 44%] ../../../../dev/tests/cli/test_install.py::test_sync_in_sequential_mode <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 44%] ../../../../dev/tests/cli/test_install.py::test_sync_packages_with_groups <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 44%] ../../../../dev/tests/cli/test_install.py::test_sync_production_packages[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 44%] ../../../../dev/tests/cli/test_install.py::test_sync_production_packages[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 45%] ../../../../dev/tests/cli/test_install.py::test_sync_without_self <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 45%] ../../../../dev/tests/cli/test_install.py::test_sync_with_index_change <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py FAILED [ 45%] ../../../../dev/tests/cli/test_install.py::test_install_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 45%] ../../../../dev/tests/cli/test_install.py::test_sync_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 45%] ../../../../dev/tests/cli/test_install.py::test_install_with_lockfile <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 45%] ../../../../dev/tests/cli/test_install.py::test_install_with_dry_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 46%] ../../../../dev/tests/cli/test_install.py::test_install_check <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 46%] ../../../../dev/tests/cli/test_install.py::test_sync_with_pure_option <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 46%] ../../../../dev/tests/cli/test_install.py::test_install_referencing_self_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_install.py PASSED [ 46%] ../../../../dev/tests/cli/test_list.py::test_list_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 46%] ../../../../dev/tests/cli/test_list.py::test_list_dependency_graph <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 47%] ../../../../dev/tests/cli/test_list.py::test_list_dependency_graph_with_circular_forward <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 47%] ../../../../dev/tests/cli/test_list.py::test_list_dependency_graph_with_circular_reverse <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 47%] ../../../../dev/tests/cli/test_list.py::test_freeze_dependencies_list <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 47%] ../../../../dev/tests/cli/test_list.py::test_list_reverse_without_graph_flag <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 47%] ../../../../dev/tests/cli/test_list.py::test_list_reverse_dependency_graph <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 47%] ../../../../dev/tests/cli/test_list.py::test_list_json_without_graph_flag <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 48%] ../../../../dev/tests/cli/test_list.py::test_list_json <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 48%] ../../../../dev/tests/cli/test_list.py::test_list_json_reverse <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 48%] ../../../../dev/tests/cli/test_list.py::test_list_json_with_circular_forward <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 48%] ../../../../dev/tests/cli/test_list.py::test_list_json_with_circular_reverse <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_list.py PASSED [ 48%] ../../../../dev/tests/cli/test_lock.py::test_lock_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_lock.py PASSED [ 49%] ../../../../dev/tests/cli/test_lock.py::test_lock_dependencies <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_lock.py PASSED [ 49%] ../../../../dev/tests/cli/test_lock.py::test_lock_refresh <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_lock.py PASSED [ 49%] ../../../../dev/tests/cli/test_lock.py::test_lock_refresh_keep_consistent <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_lock.py PASSED [ 49%] ../../../../dev/tests/cli/test_lock.py::test_innovations_with_specified_lockfile <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_lock.py PASSED [ 49%] ../../../../dev/tests/cli/test_lock.py::test_skip_editable_dependencies_in_metadata <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_lock.py PASSED [ 49%] ../../../../dev/tests/cli/test_others.py::test_build_distributions <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 50%] ../../../../dev/tests/cli/test_others.py::test_project_no_init_error <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 50%] ../../../../dev/tests/cli/test_others.py::test_help_option <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 50%] ../../../../dev/tests/cli/test_others.py::test_info_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 50%] ../../../../dev/tests/cli/test_others.py::test_info_global_project <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 50%] ../../../../dev/tests/cli/test_others.py::test_global_project_other_location <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 50%] ../../../../dev/tests/cli/test_others.py::test_uncaught_error <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 51%] ../../../../dev/tests/cli/test_others.py::test_import_other_format_file[requirements.txt] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 51%] ../../../../dev/tests/cli/test_others.py::test_import_other_format_file[Pipfile] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 51%] ../../../../dev/tests/cli/test_others.py::test_import_other_format_file[pyproject-poetry.toml] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 51%] ../../../../dev/tests/cli/test_others.py::test_import_other_format_file[projects/flit-demo/pyproject.toml] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 51%] ../../../../dev/tests/cli/test_others.py::test_import_requirement_no_overwrite <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 52%] ../../../../dev/tests/cli/test_others.py::test_search_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py FAILED [ 52%] ../../../../dev/tests/cli/test_others.py::test_show_package_on_pypi <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py FAILED [ 52%] ../../../../dev/tests/cli/test_others.py::test_show_self_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 52%] ../../../../dev/tests/cli/test_others.py::test_export_to_requirements_txt <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 52%] ../../../../dev/tests/cli/test_others.py::test_export_doesnt_include_dep_with_extras <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 52%] ../../../../dev/tests/cli/test_others.py::test_completion_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py PASSED [ 53%] ../../../../dev/tests/cli/test_others.py::test_show_update_hint <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py FAILED [ 53%] ../../../../dev/tests/cli/test_plugin.py::test_plugin_list <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_plugin.py PASSED [ 53%] ../../../../dev/tests/cli/test_plugin.py::test_plugin_add <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_plugin.py PASSED [ 53%] ../../../../dev/tests/cli/test_plugin.py::test_plugin_remove <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_plugin.py PASSED [ 53%] ../../../../dev/tests/cli/test_publish.py::test_package_parse_metadata[demo-0.0.1-py2.py3-none-any.whl] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 54%] ../../../../dev/tests/cli/test_publish.py::test_package_parse_metadata[demo-0.0.1.tar.gz] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 54%] ../../../../dev/tests/cli/test_publish.py::test_package_parse_metadata[demo-0.0.1.zip] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 54%] ../../../../dev/tests/cli/test_publish.py::test_package_add_signature <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 54%] ../../../../dev/tests/cli/test_publish.py::test_package_call_gpg_sign <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 54%] ../../../../dev/tests/cli/test_publish.py::test_repository_get_release_urls <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 54%] ../../../../dev/tests/cli/test_publish.py::test_publish_pick_up_asc_files <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 55%] ../../../../dev/tests/cli/test_publish.py::test_publish_package_with_signature <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 55%] ../../../../dev/tests/cli/test_publish.py::test_publish_and_build_in_one_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 55%] ../../../../dev/tests/cli/test_publish.py::test_publish_cli_args_and_env_var_precedence <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_publish.py PASSED [ 55%] ../../../../dev/tests/cli/test_remove.py::test_remove_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 55%] ../../../../dev/tests/cli/test_remove.py::test_remove_editable_packages_while_keeping_normal <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py FAILED [ 55%] ../../../../dev/tests/cli/test_remove.py::test_remove_package[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 56%] ../../../../dev/tests/cli/test_remove.py::test_remove_package[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 56%] ../../../../dev/tests/cli/test_remove.py::test_remove_package_with_dry_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 56%] ../../../../dev/tests/cli/test_remove.py::test_remove_package_no_sync <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 56%] ../../../../dev/tests/cli/test_remove.py::test_remove_package_not_exist <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 56%] ../../../../dev/tests/cli/test_remove.py::test_remove_package_exist_in_multi_groups <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 57%] ../../../../dev/tests/cli/test_remove.py::test_add_remove_no_package <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 57%] ../../../../dev/tests/cli/test_remove.py::test_remove_package_wont_break_toml <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_remove.py PASSED [ 57%] ../../../../dev/tests/cli/test_run.py::test_pep582_launcher_for_python_interpreter <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py FAILED [ 57%] ../../../../dev/tests/cli/test_run.py::test_auto_isolate_site_packages <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 57%] ../../../../dev/tests/cli/test_run.py::test_run_with_site_packages <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 57%] ../../../../dev/tests/cli/test_run.py::test_run_command_not_found <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 58%] ../../../../dev/tests/cli/test_run.py::test_run_pass_exit_code <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 58%] ../../../../dev/tests/cli/test_run.py::test_run_cmd_script <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 58%] ../../../../dev/tests/cli/test_run.py::test_run_cmd_script_with_array <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 58%] ../../../../dev/tests/cli/test_run.py::test_run_script_pass_project_root <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 58%] ../../../../dev/tests/cli/test_run.py::test_run_shell_script <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 59%] ../../../../dev/tests/cli/test_run.py::test_run_call_script <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 59%] ../../../../dev/tests/cli/test_run.py::test_run_script_with_extra_args <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 59%] ../../../../dev/tests/cli/test_run.py::test_run_expand_env_vars <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 59%] ../../../../dev/tests/cli/test_run.py::test_run_script_with_env_defined <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 59%] ../../../../dev/tests/cli/test_run.py::test_run_script_with_dotenv_file <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 59%] ../../../../dev/tests/cli/test_run.py::test_run_script_override_global_env <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 60%] ../../../../dev/tests/cli/test_run.py::test_run_show_list_of_scripts <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 60%] ../../../../dev/tests/cli/test_run.py::test_run_with_another_project_root <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py FAILED [ 60%] ../../../../dev/tests/cli/test_run.py::test_import_another_sitecustomize <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 60%] ../../../../dev/tests/cli/test_run.py::test_run_with_patched_sysconfig <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 60%] ../../../../dev/tests/cli/test_run.py::test_run_composite <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 60%] ../../../../dev/tests/cli/test_run.py::test_composite_stops_on_first_failure <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 61%] ../../../../dev/tests/cli/test_run.py::test_composite_inherit_env <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 61%] ../../../../dev/tests/cli/test_run.py::test_composite_fail_on_first_missing_task <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 61%] ../../../../dev/tests/cli/test_run.py::test_composite_runs_all_hooks <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 61%] ../../../../dev/tests/cli/test_run.py::test_composite_pass_parameters_to_subtasks <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 61%] ../../../../dev/tests/cli/test_run.py::test_composite_can_pass_parameters <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 62%] ../../../../dev/tests/cli/test_run.py::test_composite_hooks_inherit_env <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 62%] ../../../../dev/tests/cli/test_run.py::test_composite_inherit_env_in_cascade <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 62%] ../../../../dev/tests/cli/test_run.py::test_composite_inherit_dotfile <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 62%] ../../../../dev/tests/cli/test_run.py::test_composite_can_have_commands <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 62%] ../../../../dev/tests/cli/test_run.py::test_run_shortcut <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 62%] ../../../../dev/tests/cli/test_run.py::test_run_shortcuts_dont_override_commands <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 63%] ../../../../dev/tests/cli/test_run.py::test_run_shortcut_fail_with_usage_if_script_not_found <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 63%] ../../../../dev/tests/cli/test_run.py::test_empty_positionnal_args_still_display_usage[no args] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 63%] ../../../../dev/tests/cli/test_run.py::test_empty_positionnal_args_still_display_usage[unknown param] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 63%] ../../../../dev/tests/cli/test_run.py::test_empty_positionnal_args_still_display_usage[not an user script] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_run.py PASSED [ 63%] ../../../../dev/tests/cli/test_update.py::test_update_packages_with_top <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 63%] ../../../../dev/tests/cli/test_update.py::test_update_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 64%] ../../../../dev/tests/cli/test_update.py::test_update_ignore_constraints <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 64%] ../../../../dev/tests/cli/test_update.py::test_update_all_packages[reuse] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 64%] ../../../../dev/tests/cli/test_update.py::test_update_all_packages[all] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 64%] ../../../../dev/tests/cli/test_update.py::test_update_dry_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 64%] ../../../../dev/tests/cli/test_update.py::test_update_top_packages_dry_run <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 65%] ../../../../dev/tests/cli/test_update.py::test_update_specified_packages <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 65%] ../../../../dev/tests/cli/test_update.py::test_update_specified_packages_eager_mode <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 65%] ../../../../dev/tests/cli/test_update.py::test_update_with_package_and_groups_argument <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 65%] ../../../../dev/tests/cli/test_update.py::test_update_with_prerelease_without_package_argument <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 65%] ../../../../dev/tests/cli/test_update.py::test_update_existing_package_with_prerelease <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 65%] ../../../../dev/tests/cli/test_update.py::test_update_package_with_extras <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_update.py PASSED [ 66%] ../../../../dev/tests/cli/test_use.py::test_use_command <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_use.py PASSED [ 66%] ../../../../dev/tests/cli/test_use.py::test_use_python_by_version <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_use.py PASSED [ 66%] ../../../../dev/tests/cli/test_use.py::test_use_wrapper_python <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_use.py PASSED [ 66%] ../../../../dev/tests/cli/test_use.py::test_use_invalid_wrapper_python <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_use.py PASSED [ 66%] ../../../../dev/tests/cli/test_use.py::test_use_remember_last_selection <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_use.py PASSED [ 67%] ../../../../dev/tests/cli/test_venv.py::test_venv_create <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 67%] ../../../../dev/tests/cli/test_venv.py::test_venv_create_in_project <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 67%] ../../../../dev/tests/cli/test_venv.py::test_venv_list <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 67%] ../../../../dev/tests/cli/test_venv.py::test_venv_remove <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 67%] ../../../../dev/tests/cli/test_venv.py::test_venv_recreate <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 67%] ../../../../dev/tests/cli/test_venv.py::test_venv_activate[virtualenv] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 68%] ../../../../dev/tests/cli/test_venv.py::test_venv_activate[venv] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 68%] ../../../../dev/tests/cli/test_venv.py::test_venv_activate_project_without_python <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 68%] ../../../../dev/tests/cli/test_venv.py::test_venv_activate_error <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 68%] ../../../../dev/tests/cli/test_venv.py::test_venv_auto_create[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 68%] ../../../../dev/tests/cli/test_venv.py::test_venv_auto_create[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 68%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 69%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_force <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 69%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_interactive[virtualenv-none-True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 69%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_interactive[virtualenv-0-False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 69%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_interactive[virtualenv-all-False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 69%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_interactive[venv-none-True] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 70%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_interactive[venv-0-False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 70%] ../../../../dev/tests/cli/test_venv.py::test_venv_purge_interactive[venv-all-False] <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 70%] ../../../../dev/tests/cli/test_venv.py::test_virtualenv_backend_create <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 70%] ../../../../dev/tests/cli/test_venv.py::test_venv_backend_create <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 70%] ../../../../dev/tests/cli/test_venv.py::test_conda_backend_create <- ../build/python-pdm/src/pdm-2.1.0/tests/cli/test_venv.py PASSED [ 70%] ../../../../dev/tests/models/test_candidates.py::test_parse_local_directory_metadata[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 71%] ../../../../dev/tests/models/test_candidates.py::test_parse_local_directory_metadata[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 71%] ../../../../dev/tests/models/test_candidates.py::test_parse_vcs_metadata[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 71%] ../../../../dev/tests/models/test_candidates.py::test_parse_vcs_metadata[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 71%] ../../../../dev/tests/models/test_candidates.py::test_parse_artifact_metadata[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 71%] ../../../../dev/tests/models/test_candidates.py::test_parse_artifact_metadata[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 72%] ../../../../dev/tests/models/test_candidates.py::test_parse_metadata_with_extras <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 72%] ../../../../dev/tests/models/test_candidates.py::test_parse_remote_link_metadata <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 72%] ../../../../dev/tests/models/test_candidates.py::test_extras_warning <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 72%] ../../../../dev/tests/models/test_candidates.py::test_parse_abnormal_specifiers <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 72%] ../../../../dev/tests/models/test_candidates.py::test_expand_project_root_in_url[demo @ file:/${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 72%] ../../../../dev/tests/models/test_candidates.py::test_expand_project_root_in_url[demo @ file:/${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1.tar.gz] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 73%] ../../../../dev/tests/models/test_candidates.py::test_expand_project_root_in_url[demo @ file:/${PROJECT_ROOT}/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 73%] ../../../../dev/tests/models/test_candidates.py::test_expand_project_root_in_url[-e ${PROJECT_ROOT}/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 73%] ../../../../dev/tests/models/test_candidates.py::test_parse_project_file_on_build_error <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 73%] ../../../../dev/tests/models/test_candidates.py::test_parse_project_file_on_build_error_with_extras <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 73%] ../../../../dev/tests/models/test_candidates.py::test_parse_project_file_on_build_error_no_dep <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 73%] ../../../../dev/tests/models/test_candidates.py::test_parse_poetry_project_metadata[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 74%] ../../../../dev/tests/models/test_candidates.py::test_parse_poetry_project_metadata[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 74%] ../../../../dev/tests/models/test_candidates.py::test_parse_flit_project_metadata[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 74%] ../../../../dev/tests/models/test_candidates.py::test_parse_flit_project_metadata[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 74%] ../../../../dev/tests/models/test_candidates.py::test_vcs_candidate_in_subdirectory[False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 74%] ../../../../dev/tests/models/test_candidates.py::test_vcs_candidate_in_subdirectory[True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 75%] ../../../../dev/tests/models/test_candidates.py::test_sdist_candidate_with_wheel_cache <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 75%] ../../../../dev/tests/models/test_candidates.py::test_cache_vcs_immutable_revision <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 75%] ../../../../dev/tests/models/test_candidates.py::test_cache_egg_info_sdist <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 75%] ../../../../dev/tests/models/test_candidates.py::test_invalidate_incompatible_wheel_link <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 75%] ../../../../dev/tests/models/test_candidates.py::test_legacy_pep345_tag_link <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 75%] ../../../../dev/tests/models/test_candidates.py::test_find_candidates_from_find_links <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py FAILED [ 76%] ../../../../dev/tests/models/test_candidates.py::test_parse_metadata_from_pep621 <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 76%] ../../../../dev/tests/models/test_candidates.py::test_parse_metadata_with_dynamic_fields <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_candidates.py PASSED [ 76%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[extra == 'foo'-extras0-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 76%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[extra != 'foo'-extras1-extra != "foo"] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 76%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[extra == 'foo' or extra == 'bar'-extras2-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 77%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[os_name == 'nt'-extras3-os_name == "nt"] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 77%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[extra in 'foo,bar'-extras4-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 77%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[os_name == 'nt' and (extra == 'foo' or extra == 'bar')-extras5-os_name == "nt"] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 77%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[extra == "foo" and extra == "bar"-extras6-extra == "foo" and extra == "bar"] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 77%] ../../../../dev/tests/models/test_marker.py::test_split_marker_extras[os_name == 'nt' and (extra == 'foo' or sys_platform == 'Windows')-extras7-os_name == "nt" and (extra == "foo" or sys_platform == "Windows")] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_marker.py PASSED [ 77%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[requests-None] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 78%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[requests<2.21.0,>=2.20.0-None] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 78%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[requests==2.19.0; os_name == "nt"-None] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 78%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[requests[security,tests]==2.8.*,>=2.8.1; python_version < "2.7"-None] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 78%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[pip @ https:/github.com/pypa/pip/archive/1.3.1.zip ; python_version > "3.4"-pip @ https:/github.com/pypa/pip/archive/1.3.1.zip; python_version > "3.4"] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 78%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[git+http:/git.example.com/MyProject.git@master#egg=MyProject-MyProject @ git+http:/git.example.com/MyProject.git@master] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 78%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[https:/github.com/pypa/pip/archive/1.3.1.zip-None] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 79%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/projects/demo-demo @ file:/build/python-pdm/src/pdm-2.1.0/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 79%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl-demo @ file:/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 79%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/projects/demo[security]-demo[security] @ file:/build/python-pdm/src/pdm-2.1.0/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 79%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[requests; python_version=="3.7.*"-requests; python_version == "3.7.*"] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 79%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[git+git@github.com:pypa/pip.git#egg=pip-pip @ git+ssh:/git@github.com/pypa/pip.git] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 80%] ../../../../dev/tests/models/test_requirements.py::test_convert_req_dict_to_req_line[./tests/fixtures/projects/demo-demo @ file:/${PROJECT_ROOT}/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 80%] ../../../../dev/tests/models/test_requirements.py::test_illegal_requirement_line[requests; os_name=>'nt'-Invalid marker:] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 80%] ../../../../dev/tests/models/test_requirements.py::test_illegal_requirement_line[./nonexist-The local path (.+)? does not exist] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 80%] ../../../../dev/tests/models/test_requirements.py::test_illegal_requirement_line[./tests-The local path (.+)? is not installable] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 80%] ../../../../dev/tests/models/test_requirements.py::test_not_supported_editable_requirement[requests >= 2.19.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 80%] ../../../../dev/tests/models/test_requirements.py::test_not_supported_editable_requirement[https:/github.com/pypa/pip/archive/1.3.1.zip] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_requirements.py PASSED [ 81%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_cfg[[metadata]\nname = foo\nversion = 0.1.0\n-result0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 81%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_cfg[[metadata]\nname = foo\nversion = attr:foo.__version__\n-result1] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 81%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_cfg[[metadata]\nname = foo\nversion = 0.1.0\n\n[options]\npython_requires = >=3.6\ninstall_requires =\n click\n requests\n[options.extras_require]\ntui =\n rich\n-result2] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 81%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_py[from setuptools import setup\n\nsetup(name="foo", version="0.1.0")\n-result0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 81%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_py[import setuptools\n\nsetuptools.setup(name="foo", version="0.1.0")\n-result1] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 81%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_py[from setuptools import setup\n\nkwargs = {"name": "foo", "version": "0.1.0"}\nsetup(**kwargs)\n-result2] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 82%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_py[from setuptools import setup\nname = 'foo'\nsetup(name=name, version="0.1.0")\n-result3] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 82%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_py[from setuptools import setup\n\nsetup(name="foo", version="0.1.0", install_requires=['click', 'requests'],\n python_requires='>=3.6', extras_require={'tui': ['rich']})\n-result4] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 82%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_setup_py[from setuptools import setup\n\nversion = open('__version__.py').read().strip()\n\nsetup(name="foo", version=version)\n-result5] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 82%] ../../../../dev/tests/models/test_setup_parsing.py::test_parse_pyproject_toml <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_setup_parsing.py PASSED [ 82%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=3.6->=3.6] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 83%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<3.8-<3.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 83%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[~=2.7.0->=2.7,<2.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 83%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 83%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=3.6,<3.8->=3.6,<3.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 83%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>3.6->=3.6.1] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 83%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<=3.7-<3.7.1] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 84%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<3.3,!=3.4.*,!=3.5.*-<3.3] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 84%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=3.6,!=3.4.*->=3.6] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 84%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=3.6,!=3.6.*->=3.7] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 84%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=3.6,<3.8,!=3.8.*->=3.6,<3.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 84%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=2.7,<3.2,!=3.0.*,!=3.1.*->=2.7,<3.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 85%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[!=3.0.*,!=3.0.2-!=3.0.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 85%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>=3.4.*->=3.4] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 85%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[>3.4.*->=3.5] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 85%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<=3.4.*-<3.4] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 85%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<3.4.*-<3.4] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 85%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<3.10.0a6-<3.10.0a6] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 86%] ../../../../dev/tests/models/test_specifiers.py::test_normalize_pyspec[<3.10.2a3-<3.10.2a3] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 86%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[>=3.6->=3.0->=3.6] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 86%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[>=3.6-<3.8->=3.6,<3.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 86%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[->=3.6->=3.6] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 86%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[>=3.6-<3.2-impossible] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 86%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[>=2.7,!=3.0.*-!=3.1.*->=2.7,!=3.0.*,!=3.1.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 87%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[>=3.11.0a2-<3.11.0b->=3.11.0a2,<3.11.0b0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 87%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_and_op[<3.11.0a2->3.11.0b-impossible] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 87%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[>=3.6->=3.0->=3.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 87%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[->=3.6-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 87%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[>=3.6-<3.7-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 88%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[>=3.6,<3.8->=3.4,<3.7->=3.4,<3.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 88%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[~=2.7->=3.6->=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 88%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[<2.7.15->=3.0-!=2.7.15,!=2.7.16,!=2.7.17,!=2.7.18] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 88%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_or_op[>3.11.0a2->3.11.0b->=3.11.0a3] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 88%] ../../../../dev/tests/models/test_specifiers.py::test_impossible_pyspec <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 88%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[~=2.7->=2.7] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 89%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=3.6-] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 89%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=3.7->=3.6,<4.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 89%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=2.7,<3.0->=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 89%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=3.6->=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 89%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*->=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 90%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=3.11*->=3.11.0rc] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 90%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_isnot_subset_superset[~=2.7->=2.6,<2.7.15] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 90%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_isnot_subset_superset[>=3.7->=3.6,<3.9] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 90%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_isnot_subset_superset[>=3.7,<3.6-==2.7] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 90%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_isnot_subset_superset[>=3.0,!=3.4.*->=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 90%] ../../../../dev/tests/models/test_specifiers.py::test_pyspec_isnot_subset_superset[>=3.11.0-<3.11.0a] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_specifiers.py PASSED [ 91%] ../../../../dev/tests/models/test_versions.py::test_unsupported_post_version <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 91%] ../../../../dev/tests/models/test_versions.py::test_support_prerelease_version <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 91%] ../../../../dev/tests/models/test_versions.py::test_normalize_non_standard_version <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 91%] ../../../../dev/tests/models/test_versions.py::test_version_comparison <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 91%] ../../../../dev/tests/models/test_versions.py::test_version_is_wildcard <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 91%] ../../../../dev/tests/models/test_versions.py::test_version_is_py2 <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 92%] ../../../../dev/tests/models/test_versions.py::test_version_complete[3.9-args0-3.9.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 92%] ../../../../dev/tests/models/test_versions.py::test_version_complete[3.9-args1-3.9.*] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 92%] ../../../../dev/tests/models/test_versions.py::test_version_complete[3-args2-3.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 92%] ../../../../dev/tests/models/test_versions.py::test_version_bump[3.8.0--1-3.8.1] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 92%] ../../../../dev/tests/models/test_versions.py::test_version_bump[3.8--1-3.9.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 93%] ../../../../dev/tests/models/test_versions.py::test_version_bump[3-0-4.0.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 93%] ../../../../dev/tests/models/test_versions.py::test_version_bump[3.8.1-1-3.9.0] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 93%] ../../../../dev/tests/models/test_versions.py::test_version_startswith[3.8.0-3.8-True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 93%] ../../../../dev/tests/models/test_versions.py::test_version_startswith[3.8.*-3.8-True] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 93%] ../../../../dev/tests/models/test_versions.py::test_version_startswith[3.8.1-3.7-False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 93%] ../../../../dev/tests/models/test_versions.py::test_version_startswith[3.8-3.8.2-False] <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 94%] ../../../../dev/tests/models/test_versions.py::test_version_getitem <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 94%] ../../../../dev/tests/models/test_versions.py::test_version_setitem <- ../build/python-pdm/src/pdm-2.1.0/tests/models/test_versions.py PASSED [ 94%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_named_requirement <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 94%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_requires_python <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 94%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_allow_prereleases <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 95%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_with_extras <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 95%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_local_artifacts[sdist] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 95%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_local_artifacts[wheel] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 95%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_and_local_requirements[False-/build/python-pdm/src/pdm-2.1.0/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 95%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_and_local_requirements[False-git+https:/github.com/test-root/demo.git#egg=demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 95%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_and_local_requirements[True-/build/python-pdm/src/pdm-2.1.0/tests/fixtures/projects/demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 96%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_and_local_requirements[True-git+https:/github.com/test-root/demo.git#egg=demo] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 96%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_without_explicit_name <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 96%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_local_and_named_requirement <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 96%] ../../../../dev/tests/resolver/test_resolve.py::test_resolving_auto_avoid_conflicts <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 96%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_conflicting_dependencies <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 96%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_conflicting_dependencies_with_overrides[2.1] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 97%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_conflicting_dependencies_with_overrides[>=1.8] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 97%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_conflicting_dependencies_with_overrides[==2.1] <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 97%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_no_available_versions <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 97%] ../../../../dev/tests/resolver/test_resolve.py::test_exclude_incompatible_requirements <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 97%] ../../../../dev/tests/resolver/test_resolve.py::test_union_markers_from_different_parents <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 98%] ../../../../dev/tests/resolver/test_resolve.py::test_requirements_from_different_groups <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 98%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_two_extras_from_the_same_package <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 98%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_package_with_dummy_upbound <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 98%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_dependency_with_extra_marker <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 98%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_circular_dependencies <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 98%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_candidates_to_install <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 99%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_prefer_requirement_with_prereleases <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 99%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_with_python_marker <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 99%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_file_req_with_prerelease <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py FAILED [ 99%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_extra_requirements_no_break_constraints <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [ 99%] ../../../../dev/tests/resolver/test_resolve.py::test_resolve_extra_and_underlying_to_the_same_version <- ../build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py PASSED [100%] =================================== FAILURES =================================== ________________ test_install_wheel_with_inconsistent_dist_info ________________ project = def test_install_wheel_with_inconsistent_dist_info(project): req = parse_requirement("pyfunctional") candidate = Candidate( req, link=Link("http://fixtures.test/artifacts/PyFunctional-1.4.3-py3-none-any.whl"), ) installer = InstallManager(project.environment) > installer.install(candidate) tests/test_installer.py:23: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_install_wheel_with_incons0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _______________________ test_install_with_file_existing ________________________ project = def test_install_with_file_existing(project): req = parse_requirement("demo") candidate = Candidate( req, link=Link("http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl"), ) (project.environment.packages_path / "lib/demo.py").touch() installer = InstallManager(project.environment) > installer.install(candidate) tests/test_installer.py:35: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_install_with_file_existin0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ________________________ test_uninstall_commit_rollback ________________________ project = def test_uninstall_commit_rollback(project): req = parse_requirement("demo") candidate = Candidate( req, link=Link("http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl"), ) installer = InstallManager(project.environment) lib_path = project.environment.get_paths()["purelib"] > installer.install(candidate) tests/test_installer.py:46: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_uninstall_commit_rollback0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. __________________________ test_rollback_after_commit __________________________ project = caplog = <_pytest.logging.LogCaptureFixture object at 0x4005eb4280> def test_rollback_after_commit(project, caplog): caplog.set_level(logging.ERROR, logger="pdm.termui") req = parse_requirement("demo") candidate = Candidate( req, link=Link("http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl"), ) installer = InstallManager(project.environment) lib_path = project.environment.get_paths()["purelib"] > installer.install(candidate) tests/test_installer.py:67: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_rollback_after_commit0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. __________________ test_uninstall_with_console_scripts[False] __________________ project = use_install_cache = False @pytest.mark.parametrize("use_install_cache", [False, True]) def test_uninstall_with_console_scripts(project, use_install_cache): req = parse_requirement("celery") candidate = Candidate( req, link=Link("http://fixtures.test/artifacts/celery-4.4.2-py2.py3-none-any.whl"), ) installer = InstallManager(project.environment, use_install_cache=use_install_cache) > installer.install(candidate) tests/test_installer.py:94: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_uninstall_with_console_sc0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. __________________ test_uninstall_with_console_scripts[True] ___________________ project = use_install_cache = True @pytest.mark.parametrize("use_install_cache", [False, True]) def test_uninstall_with_console_scripts(project, use_install_cache): req = parse_requirement("celery") candidate = Candidate( req, link=Link("http://fixtures.test/artifacts/celery-4.4.2-py2.py3-none-any.whl"), ) installer = InstallManager(project.environment, use_install_cache=use_install_cache) > installer.install(candidate) tests/test_installer.py:94: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_uninstall_with_console_sc1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ________________________ test_install_wheel_with_cache _________________________ project = invoke = .caller at 0x4005ea2830> def test_install_wheel_with_cache(project, invoke): supports_symlink = fs_supports_symlink() req = parse_requirement("future-fstrings") candidate = Candidate( req, link=Link( "http://fixtures.test/artifacts/future_fstrings-1.2.0-py2.py3-none-any.whl" ), ) installer = InstallManager(project.environment, use_install_cache=True) > installer.install(candidate) tests/test_installer.py:114: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_install_wheel_with_cache0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ______________________ test_url_requirement_is_not_cached ______________________ project = def test_url_requirement_is_not_cached(project): req = parse_requirement( "future-fstrings @ http://fixtures.test/artifacts/" "future_fstrings-1.2.0-py2.py3-none-any.whl" ) candidate = Candidate(req) installer = InstallManager(project.environment, use_install_cache=True) > installer.install(candidate) tests/test_installer.py:148: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_url_requirement_is_not_ca0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _________________ test_install_wheel_with_data_scripts[False] __________________ project = use_install_cache = False @pytest.mark.parametrize("use_install_cache", [False, True]) def test_install_wheel_with_data_scripts(project, use_install_cache): req = parse_requirement("jmespath") candidate = Candidate( req, link=Link( "http://fixtures.test/artifacts/jmespath-0.10.0-py2.py3-none-any.whl" ), ) installer = InstallManager(project.environment, use_install_cache=use_install_cache) > installer.install(candidate) tests/test_installer.py:168: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_install_wheel_with_data_s0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. __________________ test_install_wheel_with_data_scripts[True] __________________ project = use_install_cache = True @pytest.mark.parametrize("use_install_cache", [False, True]) def test_install_wheel_with_data_scripts(project, use_install_cache): req = parse_requirement("jmespath") candidate = Candidate( req, link=Link( "http://fixtures.test/artifacts/jmespath-0.10.0-py2.py3-none-any.whl" ), ) installer = InstallManager(project.environment, use_install_cache=use_install_cache) > installer.install(candidate) tests/test_installer.py:168: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/installers/manager.py:39: in install installer(str(prepared.build()), self.environment, prepared.direct_url()) pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_install_wheel_with_data_s1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ___________________________ test_actual_list_freeze ____________________________ project = local_finder = None, invoke = .caller at 0x4005ea1900> def test_actual_list_freeze(project, local_finder, invoke): invoke(["config", "-l", "install.parallel", "false"], obj=project, strict=True) > invoke(["add", "first"], obj=project, strict=True) E RuntimeError: Call command ['add', 'first'] failed(1): See /tmp/pdm-lock-tznc2zso.log for detailed debug log. E [TypeError]: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' E Add '-v' to see the detailed traceback tests/test_integration.py:52: RuntimeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 first INFO pdm.termui:reporters.py:41 python INFO pdm.termui:reporters.py:76 Adding requirement first ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 128, in _find_candidates return self.repository.find_candidates( File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 139, in find_candidates cans = list(self._find_candidates(requirement)) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 321, in _find_candidates with self.environment.get_finder(sources, True) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' __________________________ test_add_editable_package ___________________________ project = working_set = @pytest.mark.usefixtures("repository", "vcs") def test_add_editable_package(project, working_set): # Ensure that correct python version is used. project.environment.python_requires = PySpecSet(">=3.6") actions.do_add(project, True, packages=["demo"]) > actions.do_add( project, True, editables=["git+https://github.com/test-root/demo.git#egg=demo"], ) tests/cli/test_add.py:62: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:277: in do_add resolved = do_lock( pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:252: in matches_gen yield from super_find() pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_editable_package0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Adding packages to dev dev-dependencies: demo 🔒 Lock successful Changes are written to pdm.lock. Changes are written to pyproject.toml. Synchronizing working set with lock file: 2 to add, 0 to update, 0 to remove ✔ Install idna 2.7 successful ✔ Install demo 0.0.1 successful 🎉 All complete! Adding packages to dev dev-dependencies: -e git+https://github.com/test-root/demo.git#egg=demo ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-e5p7zctb.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement python>=3.6 INFO pdm.termui:reporters.py:22 ======== Starting round 0 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: python None INFO pdm.termui:reporters.py:22 ======== Ending round 0 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 1 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement idna(from demo 0.0.1) DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement chardet; os_name == "nt"(from demo 0.0.1) DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: demo 0.0.1 INFO pdm.termui:reporters.py:22 ======== Ending round 1 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 2 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: chardet 3.0.4 INFO pdm.termui:reporters.py:22 ======== Ending round 2 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 3 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: idna 2.7 INFO pdm.termui:reporters.py:22 ======== Ending round 3 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 4 ======== INFO pdm.termui:reporters.py:22 ======== Resolution Result ======== INFO pdm.termui:reporters.py:54 Stable pins: INFO pdm.termui:reporters.py:64 python None INFO pdm.termui:reporters.py:64 demo 0.0.1 INFO pdm.termui:reporters.py:64 chardet 3.0.4 INFO pdm.termui:reporters.py:64 idna 2.7 INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 -e git+https://github.com/test-root/demo.git#egg=demo INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement -e git+https://github.com/test-root/demo.git#egg=demo ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _____________________ test_non_editable_override_editable ______________________ project = working_set = @pytest.mark.usefixtures("repository", "vcs") def test_non_editable_override_editable(project, working_set): project.environment.python_requires = PySpecSet(">=3.6") > actions.do_add( project, dev=True, editables=[ "git+https://github.com/test-root/demo.git#egg=demo", ], ) tests/cli/test_add.py:100: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:277: in do_add resolved = do_lock( pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:252: in matches_gen yield from super_find() pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_editable_package0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Adding packages to dev dev-dependencies: -e git+https://github.com/test-root/demo.git#egg=demo ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-wy1gomva.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 -e git+https://github.com/test-root/demo.git#egg=demo INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement -e git+https://github.com/test-root/demo.git#egg=demo ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ______________________ test_add_remote_package_url[False] ______________________ project = is_dev = False @pytest.mark.usefixtures("repository", "working_set") def test_add_remote_package_url(project, is_dev): project.environment.python_requires = PySpecSet(">=3.6") > actions.do_add( project, is_dev, packages=["http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl"], ) tests/cli/test_add.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:277: in do_add resolved = do_lock( pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:252: in matches_gen yield from super_find() pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_remote_package_url_Fa0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Adding packages to default dependencies: demo @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-8i3kk352.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ______________________ test_add_remote_package_url[True] _______________________ project = is_dev = True @pytest.mark.usefixtures("repository", "working_set") def test_add_remote_package_url(project, is_dev): project.environment.python_requires = PySpecSet(">=3.6") > actions.do_add( project, is_dev, packages=["http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl"], ) tests/cli/test_add.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:277: in do_add resolved = do_lock( pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:252: in matches_gen yield from super_find() pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_remote_package_url_Fa0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Adding packages to dev dev-dependencies: demo @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-l6p_f0oz.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _______________________ test_add_cached_vcs_requirement ________________________ project = mocker = @pytest.mark.usefixtures("repository", "working_set", "vcs") def test_add_cached_vcs_requirement(project, mocker): project.environment.python_requires = PySpecSet(">=3.6") url = "git+https://github.com/test-root/demo.git@1234567890abcdef#egg=demo" built_path = FIXTURES / "artifacts/demo-0.0.1-py2.py3-none-any.whl" wheel_cache = project.make_wheel_cache() cache_path = wheel_cache.get_path_for_link( Link(url), project.environment.target_python ) if not cache_path.exists(): cache_path.mkdir(parents=True) shutil.copy2(built_path, cache_path) downloader = mocker.patch("unearth.finder.unpack_link") builder = mocker.patch("pdm.builders.WheelBuilder.build") > actions.do_add(project, packages=[url], no_self=True) tests/cli/test_add.py:276: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:277: in do_add resolved = do_lock( pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:252: in matches_gen yield from super_find() pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_cached_vcs_requiremen0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Adding packages to default dependencies: demo @ git+https://github.com/test-root/demo.git@1234567890abcdef ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-zrddrdcb.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo @ git+https://github.com/test-root/demo.git@1234567890abcdef INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo @ git+https://github.com/test-root/demo.git@1234567890abcdef ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _____________________ test_build_with_no_isolation[False] ______________________ fixture_project = .func at 0x4030d57c70> invoke = .caller at 0x4030d56950>, isolated = False @pytest.mark.parametrize("isolated", (True, False)) def test_build_with_no_isolation(fixture_project, invoke, isolated): project = fixture_project("demo-failure") project.pyproject = {"project": {"name": "demo", "version": "0.1.0"}} project.write_pyproject() invoke(["add", "first"], obj=project) args = ["build"] if not isolated: args.append("--no-isolation") result = invoke(args, obj=project) > assert result.exit_code == int(isolated) E assert 1 == 0 E + where 1 = RunResult(exit_code=1, stdout='Building sdist...\n', stderr="See /tmp/pdm-build-ns8xbz6e.log for detailed debug log.\n[BuildError]: Call command ['/usr/bin/python', '/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py', 'get_requires_for_build_sdist', '/tmp/tmpdqv3niwa'] return non-zero status(1). Make sure the package is PEP 517-compliant, or you can add `--no-isolation` to the command.\nAdd '-v' to see the detailed traceback\n", exception=None).exit_code E + and 0 = int(False) tests/cli/test_build.py:168: AssertionError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Changes are written to pyproject.toml. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 first INFO pdm.termui:reporters.py:41 python INFO pdm.termui:reporters.py:76 Adding requirement first ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 128, in _find_candidates return self.repository.find_candidates( File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 139, in find_candidates cans = list(self._find_candidates(requirement)) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 321, in _find_candidates with self.environment.get_finder(sources, True) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' INFO pdm.termui:base.py:176 Preparing isolated env for PEP 517 build... DEBUG pdm.termui:base.py:154 Reusing shared build env: /tmp/pdm-build-env-8zndz_im-shared INFO pdm.termui:base.py:62 Traceback (most recent call last): INFO pdm.termui:base.py:62 File "/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 363, in INFO pdm.termui:base.py:62 main() INFO pdm.termui:base.py:62 File "/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 345, in main INFO pdm.termui:base.py:62 json_out['return_val'] = hook(**hook_input['kwargs']) INFO pdm.termui:base.py:62 File "/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 297, in get_requires_for_build_sdist INFO pdm.termui:base.py:62 return hook(config_settings) INFO pdm.termui:base.py:62 File "/tmp/pdm-build-env-8zndz_im-shared/lib/python3.10/site-packages/setuptools/build_meta.py", line 167, in get_requires_for_build_sdist INFO pdm.termui:base.py:62 return self._get_build_requires(config_settings, requirements=[]) INFO pdm.termui:base.py:62 File "/tmp/pdm-build-env-8zndz_im-shared/lib/python3.10/site-packages/setuptools/build_meta.py", line 143, in _get_build_requires INFO pdm.termui:base.py:62 self.run_setup() INFO pdm.termui:base.py:62 File "/tmp/pdm-build-env-8zndz_im-shared/lib/python3.10/site-packages/setuptools/build_meta.py", line 267, in run_setup INFO pdm.termui:base.py:62 super(_BuildMetaLegacyBackend, INFO pdm.termui:base.py:62 File "/tmp/pdm-build-env-8zndz_im-shared/lib/python3.10/site-packages/setuptools/build_meta.py", line 158, in run_setup INFO pdm.termui:base.py:62 exec(compile(code, __file__, 'exec'), locals()) INFO pdm.termui:base.py:62 File "setup.py", line 3, in INFO pdm.termui:base.py:62 import first INFO pdm.termui:base.py:62 ModuleNotFoundError: No module named 'first' ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 530, in do_build loc = SdistBuilder(project.root, project.environment).build( File "/build/python-pdm/src/pdm-2.1.0/pdm/builders/sdist.py", line 17, in build requires = self._hook.get_requires_for_build_sdist(config_settings) File "/usr/lib/python3.10/site-packages/pep517/wrappers.py", line 278, in get_requires_for_build_sdist return self._call_hook('get_requires_for_build_sdist', { File "/usr/lib/python3.10/site-packages/pep517/wrappers.py", line 322, in _call_hook self._subprocess_runner( File "/build/python-pdm/src/pdm-2.1.0/pdm/builders/base.py", line 248, in subprocess_runner return log_subprocessor(cmd, cwd, extra_environ=env) File "/build/python-pdm/src/pdm-2.1.0/pdm/builders/base.py", line 87, in log_subprocessor raise BuildError( pdm.exceptions.BuildError: Call command ['/usr/bin/python', '/usr/lib/python3.10/site-packages/pep517/in_process/_in_process.py', 'get_requires_for_build_sdist', '/tmp/tmpdqv3niwa'] return non-zero status(1). Make sure the package is PEP 517-compliant, or you can add `--no-isolation` to the command. _ test_hash_cache[http://fixtures.test/artifacts/demo-0.0.1.tar.gz-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] _ project = url = 'http://fixtures.test/artifacts/demo-0.0.1.tar.gz' hash = 'sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2' @pytest.mark.parametrize( "url,hash", [ ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( f"file://{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b" "1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa3" "3292682d", "sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6" "c30e269398d01144ee52aa33292682d", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646a" "dde8fd3307e1", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ], ) def test_hash_cache(project, url, hash): > with project.environment.get_finder() as finder: tests/cli/test_cache.py:160: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_hash_cache_http___fixture0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _ test_hash_cache[file:///build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] _ project = url = 'file:///build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz' hash = 'sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2' @pytest.mark.parametrize( "url,hash", [ ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( f"file://{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b" "1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa3" "3292682d", "sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6" "c30e269398d01144ee52aa33292682d", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646a" "dde8fd3307e1", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ], ) def test_hash_cache(project, url, hash): > with project.environment.get_finder() as finder: tests/cli/test_cache.py:160: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_hash_cache_file____build_0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _ test_hash_cache[http://fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d-sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d] _ project = url = 'http://fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d' hash = 'sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d' @pytest.mark.parametrize( "url,hash", [ ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( f"file://{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b" "1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa3" "3292682d", "sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6" "c30e269398d01144ee52aa33292682d", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646a" "dde8fd3307e1", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ], ) def test_hash_cache(project, url, hash): > with project.environment.get_finder() as finder: tests/cli/test_cache.py:160: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_hash_cache_http___fixture1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _ test_hash_cache[http://fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646adde8fd3307e1-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] _ project = url = 'http://fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646adde8fd3307e1' hash = 'sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2' @pytest.mark.parametrize( "url,hash", [ ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( f"file://{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b" "1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa3" "3292682d", "sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6" "c30e269398d01144ee52aa33292682d", ), ( "http://fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646a" "dde8fd3307e1", "sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2", ), ], ) def test_hash_cache(project, url, hash): > with project.environment.get_finder() as finder: tests/cli/test_cache.py:160: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_hash_cache_http___fixture2/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _________________________ test_sync_with_index_change __________________________ project = index = {'/simple/future-fstrings/': b'\n \n \n

future-fstrings

\n \n future_fstrings-1.2.0.tar.gz\n \n \n \n '} def test_sync_with_index_change(project, index): project.project_config["pypi.url"] = "https://my.pypi.org/simple" project.meta["requires-python"] = ">=3.6" project.meta["dependencies"] = ["future-fstrings"] project.write_pyproject() index[ "/simple/future-fstrings/" ] = b"""

future-fstrings

future_fstrings-1.2.0.tar.gz """ > actions.do_lock(project) tests/cli/test_install.py:139: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:128: in _find_candidates return self.repository.find_candidates( pdm/models/repositories.py:139: in find_candidates cans = list(self._find_candidates(requirement)) pdm/models/repositories.py:321: in _find_candidates with self.environment.get_finder(sources, True) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_sync_with_index_change0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://my.pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-dln0z0k1.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 future-fstrings INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement future-fstrings ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 128, in _find_candidates return self.repository.find_candidates( File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 139, in find_candidates cans = list(self._find_candidates(requirement)) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 321, in _find_candidates with self.environment.get_finder(sources, True) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _____________________________ test_search_package ______________________________ invoke = .caller at 0x4032a0e8c0> tmp_path = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_search_package0') @pytest.mark.network def test_search_package(invoke, tmp_path): with cd(tmp_path): result = invoke(["search", "requests"]) > assert result.exit_code == 0 E assert 1 == 0 E + where 1 = RunResult(exit_code=1, stdout='', stderr="[TypeError]: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates'\nAdd '-v' to see the detailed traceback\n", exception=None).exit_code tests/cli/test_others.py:104: AssertionError __________________________ test_show_package_on_pypi ___________________________ invoke = .caller at 0x4031f45120> @pytest.mark.network def test_show_package_on_pypi(invoke): result = invoke(["show", "ipython"]) > assert result.exit_code == 0 E assert 1 == 0 E + where 1 = RunResult(exit_code=1, stdout='', stderr="[TypeError]: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates'\nAdd '-v' to see the detailed traceback\n", exception=None).exit_code tests/cli/test_others.py:113: AssertionError ____________________________ test_show_update_hint _____________________________ invoke = .caller at 0x4032c18d30> project = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x4031e6e4d0> @pytest.mark.network def test_show_update_hint(invoke, project, monkeypatch): monkeypatch.delenv("PDM_CHECK_UPDATE", raising=False) prev_version = project.core.version try: project.core.version = "0.0.0" r = invoke(["config"], obj=project) finally: project.core.version = prev_version > assert "to upgrade." in r.stderr E assert 'to upgrade.' in '' E + where '' = RunResult(exit_code=1, stdout='Site/default configuration (/etc/xdg/pdm/config.toml):\nbuild_isolation = True\ncache_dir = /build/.cache/pdm\ncheck_update = True\nglobal_project.fallback = False\nglobal_project.fallback_verbose = True\nglobal_project.path = /build/.config/pdm/global-project\nglobal_project.user_site = False\ninstall.cache = False\ninstall.cache_method = symlink\ninstall.parallel = True\nproject_max_depth = 5\npypi.json_api = False\npypi.url = https://pypi.org/simple\npypi.verify_ssl = True\npython.use_pyenv = True\npython.use_venv = False\nstrategy.resolve_max_rounds = 10000\nstrategy.save = minimum\nstrategy.update = reuse\nvenv.backend = virtualenv\nvenv.in_project = True\nvenv.location = /build/.local/share/pdm/venvs\n\nHome configuration (/tmp/pytest-of-builduser/pytest-0/test_show_update_hint0/.pdm-home/config.toml):\ncache_dir = /tmp/pytest-of-builduser/pytest-0/test_show_update_hint0/caches\nglobal_project.path = /tmp/pytest-of-builduser/pytest-0/test_show_update_hint0/.pdm-home/global-project\nvenv.location = /tmp/pytest-of-builduser/pytest-0/test_show_update_hint0/venvs\n\nProject configuration (/tmp/pytest-of-builduser/pytest-0/test_show_update_hint0/.pdm.toml):\npython.path = /usr/bin/python\n', stderr='', exception=TypeError("PyPISession.__init__() got an unexpected keyword argument 'ca_certificates'")).stderr tests/cli/test_others.py:189: AssertionError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. ______________ test_remove_editable_packages_while_keeping_normal ______________ project = @pytest.mark.usefixtures("repository", "working_set", "vcs") def test_remove_editable_packages_while_keeping_normal(project): project.environment.python_requires = PySpecSet(">=3.6") actions.do_add(project, packages=["demo"]) > actions.do_add( project, True, editables=["git+https://github.com/test-root/demo.git#egg=demo"], ) tests/cli/test_remove.py:18: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/cli/actions.py:277: in do_add resolved = do_lock( pdm/cli/actions.py:100: in do_lock mapping, dependencies = resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:252: in matches_gen yield from super_find() pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_editable_package0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stdout call ----------------------------- Adding packages to default dependencies: demo 🔒 Lock successful Changes are written to pdm.lock. Changes are written to pyproject.toml. Synchronizing working set with lock file: 2 to add, 0 to update, 0 to remove ✔ Install idna 2.7 successful ✔ Install demo 0.0.1 successful Installing the project as an editable package... ✔ Install test_project 0.0.0 successful 🎉 All complete! Adding packages to dev dev-dependencies: -e git+https://github.com/test-root/demo.git#egg=demo ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-0k_lxxc_.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement python>=3.6 INFO pdm.termui:reporters.py:22 ======== Starting round 0 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: python None INFO pdm.termui:reporters.py:22 ======== Ending round 0 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 1 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement idna(from demo 0.0.1) DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement chardet; os_name == "nt"(from demo 0.0.1) DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: demo 0.0.1 INFO pdm.termui:reporters.py:22 ======== Ending round 1 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 2 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: chardet 3.0.4 INFO pdm.termui:reporters.py:22 ======== Ending round 2 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 3 ======== DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:85 Pinning: idna 2.7 INFO pdm.termui:reporters.py:22 ======== Ending round 3 ======== INFO pdm.termui:reporters.py:22 ======== Starting round 4 ======== INFO pdm.termui:reporters.py:22 ======== Resolution Result ======== INFO pdm.termui:reporters.py:54 Stable pins: INFO pdm.termui:reporters.py:64 python None INFO pdm.termui:reporters.py:64 demo 0.0.1 INFO pdm.termui:reporters.py:64 chardet 3.0.4 INFO pdm.termui:reporters.py:64 idna 2.7 INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo~=0.0 INFO pdm.termui:reporters.py:41 -e git+https://github.com/test-root/demo.git#egg=demo INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo~=0.0 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement -e git+https://github.com/test-root/demo.git#egg=demo ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _________________ test_pep582_launcher_for_python_interpreter __________________ project = local_finder = None, invoke = .caller at 0x4032d74ca0> def test_pep582_launcher_for_python_interpreter(project, local_finder, invoke): project.root.joinpath("main.py").write_text( "import first;print(first.first([0, False, 1, 2]))\n" ) result = invoke(["add", "first"], obj=project) > assert result.exit_code == 0, result.stderr E AssertionError: See /tmp/pdm-lock-yruwn_pj.log for detailed debug log. E [TypeError]: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' E Add '-v' to see the detailed traceback E E assert 1 == 0 E + where 1 = RunResult(exit_code=1, stdout='Adding packages to default dependencies: first\n', stderr="See /tmp/pdm-lock-yruwn_pj.log for detailed debug log.\n[TypeError]: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates'\nAdd '-v' to see the detailed traceback\n", exception=None).exit_code tests/cli/test_run.py:36: AssertionError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 first INFO pdm.termui:reporters.py:41 python INFO pdm.termui:reporters.py:76 Adding requirement first ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 128, in _find_candidates return self.repository.find_candidates( File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 139, in find_candidates cans = list(self._find_candidates(requirement)) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 321, in _find_candidates with self.environment.get_finder(sources, True) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ______________________ test_run_with_another_project_root ______________________ project = local_finder = None, invoke = .caller at 0x4032b0bbe0> capfd = <_pytest.capture.CaptureFixture object at 0x4033057010> def test_run_with_another_project_root(project, local_finder, invoke, capfd): project.meta["requires-python"] = ">=3.6" project.write_pyproject() invoke(["add", "first"], obj=project) with TemporaryDirectory(prefix="pytest-run-") as tmp_dir: Path(tmp_dir).joinpath("main.py").write_text( "import first;print(first.first([0, False, 1, 2]))\n" ) capfd.readouterr() with cd(tmp_dir): ret = invoke(["run", "-p", str(project.root), "python", "main.py"]) out, err = capfd.readouterr() > assert ret.exit_code == 0, err E AssertionError: Traceback (most recent call last): E File "/tmp/pytest-run-64ddq7no/main.py", line 1, in E import first;print(first.first([0, False, 1, 2])) E ModuleNotFoundError: No module named 'first' E E assert 1 == 0 E + where 1 = RunResult(exit_code=1, stdout='', stderr='', exception=None).exit_code tests/cli/test_run.py:310: AssertionError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 first INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement first ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/pdm/cli/actions.py", line 100, in do_lock mapping, dependencies = resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 252, in matches_gen yield from super_find() File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 128, in _find_candidates return self.repository.find_candidates( File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 139, in find_candidates cans = list(self._find_candidates(requirement)) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/repositories.py", line 321, in _find_candidates with self.environment.get_finder(sources, True) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ________________________ test_parse_vcs_metadata[False] ________________________ project = is_editable = False @pytest.mark.usefixtures("vcs", "local_finder") def test_parse_vcs_metadata(project, is_editable): requirement_line = "git+https://github.com/test-root/demo.git@master#egg=demo" req = parse_requirement(requirement_line, is_editable) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:31: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_vcs_metadata_False_0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ________________________ test_parse_vcs_metadata[True] _________________________ project = is_editable = True @pytest.mark.usefixtures("vcs", "local_finder") def test_parse_vcs_metadata(project, is_editable): requirement_line = "git+https://github.com/test-root/demo.git@master#egg=demo" req = parse_requirement(requirement_line, is_editable) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:31: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_vcs_metadata_True_0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _ test_parse_artifact_metadata[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz] _ requirement_line = '/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz' project = @pytest.mark.usefixtures("local_finder") @pytest.mark.parametrize( "requirement_line", [ f"{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", f"{(FIXTURES / 'artifacts/demo-0.0.1-py2.py3-none-any.whl').as_posix()}", ], ) def test_parse_artifact_metadata(requirement_line, project): req = parse_requirement(requirement_line) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:56: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_artifact_metadata__0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _ test_parse_artifact_metadata[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] _ requirement_line = '/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl' project = @pytest.mark.usefixtures("local_finder") @pytest.mark.parametrize( "requirement_line", [ f"{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", f"{(FIXTURES / 'artifacts/demo-0.0.1-py2.py3-none-any.whl').as_posix()}", ], ) def test_parse_artifact_metadata(requirement_line, project): req = parse_requirement(requirement_line) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:56: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_artifact_metadata__1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _______________________ test_parse_metadata_with_extras ________________________ project = @pytest.mark.usefixtures("local_finder") def test_parse_metadata_with_extras(project): req = parse_requirement( f"demo[tests,security] @ file://" f"{(FIXTURES / 'artifacts/demo-0.0.1-py2.py3-none-any.whl').as_posix()}" ) candidate = Candidate(req) prepared = candidate.prepare(project.environment) assert prepared.link.is_wheel > assert sorted(prepared.get_dependencies_from_metadata()) == [ "pytest", 'requests; python_version >= "3.6"', ] tests/models/test_candidates.py:73: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_metadata_with_extra0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _______________________ test_parse_remote_link_metadata ________________________ project = @pytest.mark.usefixtures("local_finder") def test_parse_remote_link_metadata(project): req = parse_requirement( "http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl" ) candidate = Candidate(req) prepared = candidate.prepare(project.environment) assert prepared.link.is_wheel > assert prepared.get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:87: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_remote_link_metadat0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _____________________________ test_extras_warning ______________________________ project = recwarn = WarningsRecorder(record=True) @pytest.mark.usefixtures("local_finder") def test_extras_warning(project, recwarn): req = parse_requirement( "demo[foo] @ http://fixtures.test/artifacts/demo-0.0.1-py2.py3-none-any.whl" ) candidate = Candidate(req) prepared = candidate.prepare(project.environment) assert prepared.link.is_wheel > assert prepared.get_dependencies_from_metadata() == [] tests/models/test_candidates.py:103: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_extras_warning0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ________________________ test_parse_abnormal_specifiers ________________________ project = @pytest.mark.usefixtures("local_finder") def test_parse_abnormal_specifiers(project): req = parse_requirement( "http://fixtures.test/artifacts/celery-4.4.2-py2.py3-none-any.whl" ) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() tests/models/test_candidates.py:116: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_parse_abnormal_specifiers0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. _ test_expand_project_root_in_url[demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] _ req_str = 'demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl' core = @pytest.mark.usefixtures("local_finder") @pytest.mark.parametrize( "req_str", [ "demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts" "/demo-0.0.1-py2.py3-none-any.whl", "demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1.tar.gz", "demo @ file:///${PROJECT_ROOT}/tests/fixtures/projects/demo", "-e ${PROJECT_ROOT}/tests/fixtures/projects/demo", ], ) def test_expand_project_root_in_url(req_str, core): project = core.create_project(FIXTURES.parent.parent) if req_str.startswith("-e "): req = parse_requirement(req_str[3:], True) else: req = parse_requirement(req_str) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:137: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/build/.cache/pdm/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _ test_expand_project_root_in_url[demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1.tar.gz] _ req_str = 'demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1.tar.gz' core = @pytest.mark.usefixtures("local_finder") @pytest.mark.parametrize( "req_str", [ "demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts" "/demo-0.0.1-py2.py3-none-any.whl", "demo @ file:///${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1.tar.gz", "demo @ file:///${PROJECT_ROOT}/tests/fixtures/projects/demo", "-e ${PROJECT_ROOT}/tests/fixtures/projects/demo", ], ) def test_expand_project_root_in_url(req_str, core): project = core.create_project(FIXTURES.parent.parent) if req_str.startswith("-e "): req = parse_requirement(req_str[3:], True) else: req = parse_requirement(req_str) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "idna", 'chardet; os_name == "nt"', ] tests/models/test_candidates.py:137: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/build/.cache/pdm/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. __________________ test_vcs_candidate_in_subdirectory[False] ___________________ project = is_editable = False @pytest.mark.usefixtures("vcs", "local_finder") def test_vcs_candidate_in_subdirectory(project, is_editable): line = ( "git+https://github.com/test-root/demo-parent-package.git" "@master#egg=package-a&subdirectory=package-a" ) req = parse_requirement(line, is_editable) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "flask" ] tests/models/test_candidates.py:219: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_vcs_candidate_in_subdirec0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ___________________ test_vcs_candidate_in_subdirectory[True] ___________________ project = is_editable = True @pytest.mark.usefixtures("vcs", "local_finder") def test_vcs_candidate_in_subdirectory(project, is_editable): line = ( "git+https://github.com/test-root/demo-parent-package.git" "@master#egg=package-a&subdirectory=package-a" ) req = parse_requirement(line, is_editable) candidate = Candidate(req) > assert candidate.prepare(project.environment).get_dependencies_from_metadata() == [ "flask" ] tests/models/test_candidates.py:219: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:488: in get_dependencies_from_metadata self.req.project_name, self.metadata.requires or [], extras # type: ignore pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_vcs_candidate_in_subdirec1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ____________________ test_sdist_candidate_with_wheel_cache _____________________ project = mocker = @pytest.mark.usefixtures("local_finder") def test_sdist_candidate_with_wheel_cache(project, mocker): file_link = Link(path_to_url((FIXTURES / "artifacts/demo-0.0.1.tar.gz").as_posix())) built_path = FIXTURES / "artifacts/demo-0.0.1-py2.py3-none-any.whl" wheel_cache = project.make_wheel_cache() cache_path = wheel_cache.get_path_for_link( file_link, project.environment.target_python ) if not cache_path.exists(): cache_path.mkdir(parents=True) shutil.copy2(built_path, cache_path) req = parse_requirement(file_link.url) downloader = mocker.patch("unearth.finder.unpack_link") prepared = Candidate(req).prepare(project.environment) > prepared.metadata tests/models/test_candidates.py:252: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_sdist_candidate_with_whee0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ______________________ test_cache_vcs_immutable_revision _______________________ project = @pytest.mark.usefixtures("vcs", "local_finder") def test_cache_vcs_immutable_revision(project): req = parse_requirement("git+https://github.com/test-root/demo.git@master#egg=demo") candidate = Candidate(req) > wheel = candidate.prepare(project.environment).build() tests/models/test_candidates.py:267: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_cache_vcs_immutable_revis0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. __________________________ test_cache_egg_info_sdist ___________________________ project = @pytest.mark.usefixtures("local_finder") def test_cache_egg_info_sdist(project): req = parse_requirement("demo @ http://fixtures.test/artifacts/demo-0.0.1.tar.gz") candidate = Candidate(req) > wheel = candidate.prepare(project.environment).build() tests/models/test_candidates.py:290: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:337: in build self.obtain(allow_all=False) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_cache_egg_info_sdist0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ___________________ test_invalidate_incompatible_wheel_link ____________________ project = def test_invalidate_incompatible_wheel_link(project): project.project_config["pypi.url"] = "https://my.pypi.org/simple" req = parse_requirement("demo") prepared = Candidate( req, name="demo", version="0.0.1", link=Link("http://fixtures.test/artifacts/demo-0.0.1-cp36-cp36m-win_amd64.whl"), ).prepare(project.environment) > prepared.obtain(True) tests/models/test_candidates.py:303: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_invalidate_incompatible_w0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://my.pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _________________________ test_legacy_pep345_tag_link __________________________ project = def test_legacy_pep345_tag_link(project): project.project_config["pypi.url"] = "https://my.pypi.org/simple" req = parse_requirement("pep345-legacy") repo = project.get_repository() > candidate = next(iter(repo.find_candidates(req))) tests/models/test_candidates.py:322: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/repositories.py:139: in find_candidates cans = list(self._find_candidates(requirement)) pdm/models/repositories.py:321: in _find_candidates with self.environment.get_finder(sources, True) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_legacy_pep345_tag_link0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://my.pypi.org/simple'], 'trusted_hosts': []} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _____________________ test_find_candidates_from_find_links _____________________ project = def test_find_candidates_from_find_links(project): repo = project.get_repository() repo.sources = [ { "url": "http://fixtures.test/index/demo.html", "verify_ssl": False, "type": "find_links", } ] > candidates = list(repo.find_candidates(parse_requirement("demo"))) tests/models/test_candidates.py:335: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pdm/models/repositories.py:139: in find_candidates cans = list(self._find_candidates(requirement)) pdm/models/repositories.py:321: in _find_candidates with self.environment.get_finder(sources, True) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_find_candidates_from_find0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': [], 'trusted_hosts': ['fixtures.test']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. _____________________ test_resolve_local_artifacts[sdist] ______________________ resolve = .resolve_func at 0x4033551000> requirement_line = '/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz' @pytest.mark.parametrize( "requirement_line", [ f"{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", f"{(FIXTURES / 'artifacts/demo-0.0.1-py2.py3-none-any.whl').as_posix()}", ], ids=["sdist", "wheel"], ) def test_resolve_local_artifacts(resolve, requirement_line): > result = resolve([requirement_line], ">=3.6") tests/resolver/test_resolve.py:103: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_resolve_local_artifacts_s0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-sef64o4z.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo @ file:///build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo @ file:///build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _____________________ test_resolve_local_artifacts[wheel] ______________________ resolve = .resolve_func at 0x40331b5990> requirement_line = '/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl' @pytest.mark.parametrize( "requirement_line", [ f"{(FIXTURES / 'artifacts/demo-0.0.1.tar.gz').as_posix()}", f"{(FIXTURES / 'artifacts/demo-0.0.1-py2.py3-none-any.whl').as_posix()}", ], ids=["sdist", "wheel"], ) def test_resolve_local_artifacts(resolve, requirement_line): > result = resolve([requirement_line], ">=3.6") tests/resolver/test_resolve.py:103: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_resolve_local_artifacts_w0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-xo90qvny.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo @ file:///build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo @ file:///build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _ test_resolve_vcs_and_local_requirements[False-git+https://github.com/test-root/demo.git#egg=demo] _ resolve = .resolve_func at 0x4032eb3640> line = 'git+https://github.com/test-root/demo.git#egg=demo', is_editable = False vcs = None @pytest.mark.parametrize( "line", [ (FIXTURES / "projects/demo").as_posix(), "git+https://github.com/test-root/demo.git#egg=demo", ], ) def test_resolve_vcs_and_local_requirements(resolve, line, is_editable, vcs): editable = "-e " if is_editable else "" > result = resolve([editable + line], ">=3.6") tests/resolver/test_resolve.py:116: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_resolve_vcs_and_local_req1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-e644a6_v.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo @ git+https://github.com/test-root/demo.git INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo @ git+https://github.com/test-root/demo.git ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' _ test_resolve_vcs_and_local_requirements[True-git+https://github.com/test-root/demo.git#egg=demo] _ resolve = .resolve_func at 0x4033312b00> line = 'git+https://github.com/test-root/demo.git#egg=demo', is_editable = True vcs = None @pytest.mark.parametrize( "line", [ (FIXTURES / "projects/demo").as_posix(), "git+https://github.com/test-root/demo.git#egg=demo", ], ) def test_resolve_vcs_and_local_requirements(resolve, line, is_editable, vcs): editable = "-e " if is_editable else "" > result = resolve([editable + line], ">=3.6") tests/resolver/test_resolve.py:116: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_add_editable_package0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-ul7q1fqf.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 -e git+https://github.com/test-root/demo.git#egg=demo INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement -e git+https://github.com/test-root/demo.git#egg=demo ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ____________________ test_resolve_vcs_without_explicit_name ____________________ resolve = .resolve_func at 0x403340f1c0>, vcs = None def test_resolve_vcs_without_explicit_name(resolve, vcs): requirement = "git+https://github.com/test-root/demo.git" > result = resolve([requirement], ">=3.6") tests/resolver/test_resolve.py:122: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_resolve_vcs_without_expli0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-idnrai72.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 git+https://github.com/test-root/demo.git INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement git+https://github.com/test-root/demo.git ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ___________________ test_resolve_local_and_named_requirement ___________________ resolve = .resolve_func at 0x4033260430>, vcs = None def test_resolve_local_and_named_requirement(resolve, vcs): requirements = ["demo", "git+https://github.com/test-root/demo.git#egg=demo"] > result = resolve(requirements, ">=3.6") tests/resolver/test_resolve.py:128: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_resolve_vcs_and_local_req1/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-ae8lnslt.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 demo INFO pdm.termui:reporters.py:41 demo @ git+https://github.com/test-root/demo.git INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement demo DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement demo @ git+https://github.com/test-root/demo.git ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' ____________________ test_resolve_file_req_with_prerelease _____________________ resolve = .resolve_func at 0x40337fee60>, vcs = None def test_resolve_file_req_with_prerelease(resolve, vcs): > result = resolve( [ "using-demo==0.1.0", "demo @ git+https://github.com/test-root/demo-prerelease.git", ], ">=3.6", allow_prereleases=False, ) tests/resolver/test_resolve.py:295: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tests/resolver/test_resolve.py:36: in resolve_func mapping, *_ = _resolve( pdm/resolver/core.py:30: in resolve result = resolver.resolve(requirements, max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:481: in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:348: in resolve self._add_to_criteria(self.state.criteria, r, parent=None) /usr/lib/python3.10/site-packages/resolvelib/resolvers.py:172: in _add_to_criteria if not criterion.candidates: /usr/lib/python3.10/site-packages/resolvelib/structs.py:126: in __bool__ next(self._factory()) pdm/resolver/providers.py:146: in matches_gen candidates = self._find_candidates(reqs[0]) pdm/resolver/providers.py:125: in _find_candidates can.prepare(self.repository.environment).metadata pdm/models/candidates.py:472: in metadata result = self.prepare_metadata() pdm/models/candidates.py:415: in prepare_metadata self.obtain(allow_all=True) pdm/models/candidates.py:370: in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: /usr/lib/python3.10/contextlib.py:135: in __enter__ return next(self.gen) pdm/models/environment.py:138: in get_finder session = PDMSession( tests/conftest.py:242: in get_pypi_session session = PDMSession(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = cache_dir = PosixPath('/tmp/pytest-of-builduser/pytest-0/test_resolve_file_req_with_pre0/caches/http') kwargs = {'ca_certificates': PosixPath('/usr/lib/python3.10/site-packages/certifi/cacert.pem'), 'index_urls': ['https://pypi.org/simple'], 'trusted_hosts': ['']} SafeFileCache = cache = def __init__(self, *, cache_dir: Path, **kwargs: Any) -> None: from pdm.models.caches import SafeFileCache cache = SafeFileCache(str(cache_dir)) self.secure_adapter_cls = functools.partial(CacheControlAdapter, cache=cache) self.insecure_adapter_cls = functools.partial( InsecureCacheControlAdapter, cache=cache ) > super().__init__(**kwargs) E TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' pdm/models/session.py:25: TypeError ---------------------------- Captured stdout setup ----------------------------- Changes are written to pyproject.toml. Changes are written to pyproject.toml. ----------------------------- Captured stderr call ----------------------------- See /tmp/pdm-lock-xq53cryv.log for detailed debug log. ------------------------------ Captured log call ------------------------------- INFO pdm.termui:reporters.py:22 ======== Start resolving requirements ======== INFO pdm.termui:reporters.py:41 using-demo==0.1.0 INFO pdm.termui:reporters.py:41 demo @ git+https://github.com/test-root/demo-prerelease.git INFO pdm.termui:reporters.py:41 python>=3.6 INFO pdm.termui:reporters.py:76 Adding requirement using-demo==0.1.0 DEBUG pdm.termui:repositories.py:186 Found matching candidates: DEBUG pdm.termui:repositories.py:198 INFO pdm.termui:reporters.py:76 Adding requirement demo @ git+https://github.com/test-root/demo-prerelease.git ERROR pdm.termui:termui.py:237 Error occurs Traceback (most recent call last): File "/build/python-pdm/src/pdm-2.1.0/pdm/termui.py", line 234, in logging yield logger File "/build/python-pdm/src/pdm-2.1.0/tests/resolver/test_resolve.py", line 36, in resolve_func mapping, *_ = _resolve( File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/core.py", line 30, in resolve result = resolver.resolve(requirements, max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 481, in resolve state = resolution.resolve(requirements, max_rounds=max_rounds) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 348, in resolve self._add_to_criteria(self.state.criteria, r, parent=None) File "/usr/lib/python3.10/site-packages/resolvelib/resolvers.py", line 172, in _add_to_criteria if not criterion.candidates: File "/usr/lib/python3.10/site-packages/resolvelib/structs.py", line 126, in __bool__ next(self._factory()) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 146, in matches_gen candidates = self._find_candidates(reqs[0]) File "/build/python-pdm/src/pdm-2.1.0/pdm/resolver/providers.py", line 125, in _find_candidates can.prepare(self.repository.environment).metadata File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 472, in metadata result = self.prepare_metadata() File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 415, in prepare_metadata self.obtain(allow_all=True) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py", line 370, in obtain with self.environment.get_finder(ignore_compatibility=allow_all) as finder: File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__ return next(self.gen) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/environment.py", line 138, in get_finder session = PDMSession( File "/build/python-pdm/src/pdm-2.1.0/tests/conftest.py", line 242, in get_pypi_session session = PDMSession(*args, **kwargs) File "/build/python-pdm/src/pdm-2.1.0/pdm/models/session.py", line 25, in __init__ super().__init__(**kwargs) TypeError: PyPISession.__init__() got an unexpected keyword argument 'ca_certificates' =============================== warnings summary =============================== tests/test_integration.py:29 /build/python-pdm/src/pdm-2.1.0/tests/test_integration.py:29: PytestUnknownMarkWarning: Unknown pytest.mark.integration - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.integration tests/test_integration.py:30 /build/python-pdm/src/pdm-2.1.0/tests/test_integration.py:30: PytestUnknownMarkWarning: Unknown pytest.mark.network - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.network tests/test_project.py:166 /build/python-pdm/src/pdm-2.1.0/tests/test_project.py:166: PytestUnknownMarkWarning: Unknown pytest.mark.path - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.path tests/test_project.py:214 /build/python-pdm/src/pdm-2.1.0/tests/test_project.py:214: PytestUnknownMarkWarning: Unknown pytest.mark.path - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.path tests/test_utils.py:56 /build/python-pdm/src/pdm-2.1.0/tests/test_utils.py:56: PytestUnknownMarkWarning: Unknown pytest.mark.path - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.path tests/cli/test_config.py:77 /build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py:77: PytestUnknownMarkWarning: Unknown pytest.mark.deprecated - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.deprecated tests/cli/test_config.py:86 /build/python-pdm/src/pdm-2.1.0/tests/cli/test_config.py:86: PytestUnknownMarkWarning: Unknown pytest.mark.deprecated - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.deprecated tests/cli/test_others.py:100 /build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py:100: PytestUnknownMarkWarning: Unknown pytest.mark.network - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.network tests/cli/test_others.py:110 /build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py:110: PytestUnknownMarkWarning: Unknown pytest.mark.network - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.network tests/cli/test_others.py:180 /build/python-pdm/src/pdm-2.1.0/tests/cli/test_others.py:180: PytestUnknownMarkWarning: Unknown pytest.mark.network - is this a typo? You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html @pytest.mark.network tests/test_formats.py: 22 warnings tests/test_installer.py: 22 warnings tests/test_integration.py: 2 warnings tests/test_plugin.py: 8 warnings tests/test_project.py: 42 warnings tests/test_signals.py: 4 warnings tests/test_utils.py: 18 warnings tests/cli/test_add.py: 46 warnings tests/cli/test_build.py: 26 warnings tests/cli/test_cache.py: 24 warnings tests/cli/test_config.py: 34 warnings tests/cli/test_hooks.py: 182 warnings tests/cli/test_init.py: 12 warnings tests/cli/test_install.py: 38 warnings tests/cli/test_list.py: 24 warnings tests/cli/test_lock.py: 12 warnings tests/cli/test_others.py: 38 warnings tests/cli/test_plugin.py: 6 warnings tests/cli/test_publish.py: 10 warnings tests/cli/test_remove.py: 20 warnings tests/cli/test_run.py: 72 warnings tests/cli/test_update.py: 26 warnings tests/cli/test_use.py: 10 warnings tests/cli/test_venv.py: 44 warnings tests/models/test_candidates.py: 62 warnings tests/resolver/test_resolve.py: 62 warnings /build/python-pdm/src/pdm-2.1.0/pdm/core.py:240: DeprecationWarning: SelectableGroups dict interface is deprecated. Use select. entry_points.get("pdm", []), entry_points.get("pdm.plugin", []) tests/test_formats.py::test_export_setup_py tests/cli/test_build.py::test_build_single_module tests/models/test_candidates.py::test_parse_metadata_with_dynamic_fields /usr/lib/python3.10/site-packages/pdm/pep517/metadata.py:470: DeprecationWarning: DEPRECATED: `version = {from = ...}` is replaced by `version = {source = "file", path = ...}` return DynamicVersion.from_toml(dynamic_version) tests/cli/test_use.py::test_use_invalid_wrapper_python tests/cli/test_use.py::test_use_invalid_wrapper_python tests/cli/test_use.py::test_use_invalid_wrapper_python /usr/lib/python3.10/site-packages/packaging/version.py:111: DeprecationWarning: Creating a LegacyVersion has been deprecated and will be removed in the next major release warnings.warn( tests/models/test_candidates.py::test_parse_project_file_on_build_error tests/models/test_candidates.py::test_parse_project_file_on_build_error_with_extras tests/models/test_candidates.py::test_parse_project_file_on_build_error_no_dep /build/python-pdm/src/pdm-2.1.0/pdm/models/candidates.py:463: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead termui.logger.warn("Failed to build package, try parsing project files.") tests/models/test_specifiers.py::test_normalize_pyspec[>=3.4.*->=3.4] tests/models/test_specifiers.py::test_normalize_pyspec[>3.4.*->=3.5] tests/models/test_specifiers.py::test_normalize_pyspec[<=3.4.*-<3.4] tests/models/test_specifiers.py::test_normalize_pyspec[<3.4.*-<3.4] tests/models/test_specifiers.py::test_pyspec_is_subset_superset[>=3.11*->=3.11.0rc] /usr/lib/python3.10/site-packages/packaging/specifiers.py:255: DeprecationWarning: Creating a LegacyVersion has been deprecated and will be removed in the next major release warnings.warn( ../../../../usr/lib/python3.10/site-packages/_pytest/cacheprovider.py:433 /usr/lib/python3.10/site-packages/_pytest/cacheprovider.py:433: PytestCacheWarning: could not create cache path /dev/.pytest_cache/v/cache/nodeids config.cache.set("cache/nodeids", sorted(self.cached_nodeids)) ../../../../usr/lib/python3.10/site-packages/_pytest/cacheprovider.py:387 /usr/lib/python3.10/site-packages/_pytest/cacheprovider.py:387: PytestCacheWarning: could not create cache path /dev/.pytest_cache/v/cache/lastfailed config.cache.set("cache/lastfailed", self.lastfailed) ../../../../usr/lib/python3.10/site-packages/_pytest/stepwise.py:52 /usr/lib/python3.10/site-packages/_pytest/stepwise.py:52: PytestCacheWarning: could not create cache path /dev/.pytest_cache/v/cache/stepwise session.config.cache.set(STEPWISE_CACHE_DIR, []) -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED ../../../../dev/tests/test_installer.py::test_install_wheel_with_inconsistent_dist_info FAILED ../../../../dev/tests/test_installer.py::test_install_with_file_existing FAILED ../../../../dev/tests/test_installer.py::test_uninstall_commit_rollback FAILED ../../../../dev/tests/test_installer.py::test_rollback_after_commit - ... FAILED ../../../../dev/tests/test_installer.py::test_uninstall_with_console_scripts[False] FAILED ../../../../dev/tests/test_installer.py::test_uninstall_with_console_scripts[True] FAILED ../../../../dev/tests/test_installer.py::test_install_wheel_with_cache FAILED ../../../../dev/tests/test_installer.py::test_url_requirement_is_not_cached FAILED ../../../../dev/tests/test_installer.py::test_install_wheel_with_data_scripts[False] FAILED ../../../../dev/tests/test_installer.py::test_install_wheel_with_data_scripts[True] FAILED ../../../../dev/tests/test_integration.py::test_actual_list_freeze - R... FAILED ../../../../dev/tests/cli/test_add.py::test_add_editable_package - Typ... FAILED ../../../../dev/tests/cli/test_add.py::test_non_editable_override_editable FAILED ../../../../dev/tests/cli/test_add.py::test_add_remote_package_url[False] FAILED ../../../../dev/tests/cli/test_add.py::test_add_remote_package_url[True] FAILED ../../../../dev/tests/cli/test_add.py::test_add_cached_vcs_requirement FAILED ../../../../dev/tests/cli/test_build.py::test_build_with_no_isolation[False] FAILED ../../../../dev/tests/cli/test_cache.py::test_hash_cache[http:/fixtures.test/artifacts/demo-0.0.1.tar.gz-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] FAILED ../../../../dev/tests/cli/test_cache.py::test_hash_cache[file:/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] FAILED ../../../../dev/tests/cli/test_cache.py::test_hash_cache[http:/fixtures.test/artifacts/demo-0.0.1.tar.gz#sha384=9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d-sha384:9130e5e4912bc78b1ffabbf406d56bc74b9165b0adc8c627168b7b563b80d5ff6c30e269398d01144ee52aa33292682d] FAILED ../../../../dev/tests/cli/test_cache.py::test_hash_cache[http:/fixtures.test/artifacts/demo-0.0.1.tar.gz#md5=5218509812c9fcb4646adde8fd3307e1-sha256:d57bf5e3b8723e4fc68275159dcc4ca983d86d4c84220a4d715d491401f27db2] FAILED ../../../../dev/tests/cli/test_install.py::test_sync_with_index_change FAILED ../../../../dev/tests/cli/test_others.py::test_search_package - assert... FAILED ../../../../dev/tests/cli/test_others.py::test_show_package_on_pypi - ... FAILED ../../../../dev/tests/cli/test_others.py::test_show_update_hint - asse... FAILED ../../../../dev/tests/cli/test_remove.py::test_remove_editable_packages_while_keeping_normal FAILED ../../../../dev/tests/cli/test_run.py::test_pep582_launcher_for_python_interpreter FAILED ../../../../dev/tests/cli/test_run.py::test_run_with_another_project_root FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_vcs_metadata[False] FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_vcs_metadata[True] FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_artifact_metadata[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1.tar.gz] FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_artifact_metadata[/build/python-pdm/src/pdm-2.1.0/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_metadata_with_extras FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_remote_link_metadata FAILED ../../../../dev/tests/models/test_candidates.py::test_extras_warning FAILED ../../../../dev/tests/models/test_candidates.py::test_parse_abnormal_specifiers FAILED ../../../../dev/tests/models/test_candidates.py::test_expand_project_root_in_url[demo @ file:/${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1-py2.py3-none-any.whl] FAILED ../../../../dev/tests/models/test_candidates.py::test_expand_project_root_in_url[demo @ file:/${PROJECT_ROOT}/tests/fixtures/artifacts/demo-0.0.1.tar.gz] FAILED ../../../../dev/tests/models/test_candidates.py::test_vcs_candidate_in_subdirectory[False] FAILED ../../../../dev/tests/models/test_candidates.py::test_vcs_candidate_in_subdirectory[True] FAILED ../../../../dev/tests/models/test_candidates.py::test_sdist_candidate_with_wheel_cache FAILED ../../../../dev/tests/models/test_candidates.py::test_cache_vcs_immutable_revision FAILED ../../../../dev/tests/models/test_candidates.py::test_cache_egg_info_sdist FAILED ../../../../dev/tests/models/test_candidates.py::test_invalidate_incompatible_wheel_link FAILED ../../../../dev/tests/models/test_candidates.py::test_legacy_pep345_tag_link FAILED ../../../../dev/tests/models/test_candidates.py::test_find_candidates_from_find_links FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_local_artifacts[sdist] FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_local_artifacts[wheel] FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_and_local_requirements[False-git+https:/github.com/test-root/demo.git#egg=demo] FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_and_local_requirements[True-git+https:/github.com/test-root/demo.git#egg=demo] FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_vcs_without_explicit_name FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_local_and_named_requirement FAILED ../../../../dev/tests/resolver/test_resolve.py::test_resolve_file_req_with_prerelease ==== 53 failed, 508 passed, 1 deselected, 893 warnings in 552.73s (0:09:12) ==== ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/felix14/build receiving incremental file list python-pdm-2.1.0-1-riscv64-build.log python-pdm-2.1.0-1-riscv64-check.log sent 62 bytes received 24,063 bytes 16,083.33 bytes/sec total size is 313,982 speedup is 13.01