Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TypeError: dist must be a Distribution instance #11256

Closed
1 task done
zhuofeng6 opened this issue Jul 14, 2022 · 16 comments · Fixed by #11291
Closed
1 task done

TypeError: dist must be a Distribution instance #11256

zhuofeng6 opened this issue Jul 14, 2022 · 16 comments · Fixed by #11291
Labels
C: tests Testing and related things

Comments

@zhuofeng6
Copy link

zhuofeng6 commented Jul 14, 2022

Description

when i run tests with nox -s test-3.9 -- -n auto tests/functional/test_bad_url.py -v

it is occurred an error, and can not passed. a lot of errors occurred when running the full number of test cases. i seek the answer on the internet, and some man say the reason is that setuptools is too new.

my setuptools is : 59.4.0

Expected behavior

it should be running test PASSED

pip version

21.3.1

Python version

3.9.9

OS

x86_64 linux

How to Reproduce

nox -s test-3.9 -- -n auto tests/functional/test_bad_url.py -v

Output

nox > Running session test-3.9
nox > Re-using existing virtual environment at .nox/test-3-9.
nox > Re-using existing common-wheels at tests/data/common_wheels.
nox > python setup.py sdist --formats=zip --dist-dir /root/pip/.nox/test-3-9/sdist
nox > python tools/tox_pip.py install /root/pip/.nox/test-3-9/sdist/pip-21.3.1.zip
nox > python tools/tox_pip.py install -r tests/requirements.txt
nox > pytest -n auto tests/functional/test_bad_url.py -v
=============================================== test session starts ================================================
platform linux -- Python 3.9.9, pytest-7.1.2, pluggy-1.0.0 -- /root/pip/.nox/test-3-9/bin/python
cachedir: .pytest_cache
rootdir: /root/pip, configfile: setup.cfg
plugins: forked-1.4.0, rerunfailures-10.2, xdist-2.5.0, cov-3.0.0
[gw0] linux Python 3.9.9 cwd: /root/pip
[gw1] linux Python 3.9.9 cwd: /root/pip
[gw2] linux Python 3.9.9 cwd: /root/pip
[gw3] linux Python 3.9.9 cwd: /root/pip
[gw0] Python 3.9.9 (main, May 16 2022, 00:00:00)  -- [GCC 10.3.1]
[gw1] Python 3.9.9 (main, May 16 2022, 00:00:00)  -- [GCC 10.3.1]
[gw2] Python 3.9.9 (main, May 16 2022, 00:00:00)  -- [GCC 10.3.1]
[gw3] Python 3.9.9 (main, May 16 2022, 00:00:00)  -- [GCC 10.3.1]
gw0 [1] / gw1 [1] / gw2 [1] / gw3 [1]
scheduling tests via LoadScheduling

tests/functional/test_bad_url.py::test_filenotfound_error_message 
[gw0] [100%] ERROR tests/functional/test_bad_url.py::test_filenotfound_error_message 

====================================================== ERRORS ======================================================
________________________________ ERROR at setup of test_filenotfound_error_message _________________________________
[gw0] linux -- Python 3.9.9 /root/pip/.nox/test-3-9/bin/python

tmpdir_factory = TempdirFactory(_tmppath_factory=TempPathFactory(_given_basetemp=PosixPath('/tmp/pytest-of-root/pytest-43/popen-gw0'), ...luggy._tracing.TagTracerSub object at 0x7f64540d04f0>, _basetemp=PosixPath('/tmp/pytest-of-root/pytest-43/popen-gw0')))
common_wheels = Path('/root/pip/tests/data/common_wheels')

    @pytest.fixture(scope="session")
    def setuptools_install(
        tmpdir_factory: pytest.TempdirFactory, common_wheels: Path
    ) -> Path:
>       return _common_wheel_editable_install(tmpdir_factory, common_wheels, "setuptools")

tests/conftest.py:335: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/conftest.py:325: in _common_wheel_editable_install
    Wheel(wheel_candidates[0]).install_as_egg(install_dir)
.nox/test-3-9/lib/python3.9/site-packages/setuptools/wheel.py:96: in install_as_egg
    self._install_as_egg(destination_eggdir, zf)
.nox/test-3-9/lib/python3.9/site-packages/setuptools/wheel.py:104: in _install_as_egg
    self._convert_metadata(zf, destination_eggdir, dist_info, egg_info)
.nox/test-3-9/lib/python3.9/site-packages/setuptools/wheel.py:164: in _convert_metadata
    setup_dist.get_command_obj('egg_info'),
.nox/test-3-9/lib/python3.9/site-packages/setuptools/_distutils/dist.py:860: in get_command_obj
    cmd_obj = self.command_obj[command] = klass(self)
.nox/test-3-9/lib/python3.9/site-packages/setuptools/__init__.py:106: in __init__
    super().__init__(dist)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <setuptools.command.egg_info.egg_info object at 0x7f644fba3ee0>
dist = <setuptools.dist.Distribution object at 0x7f644fb859d0>

    def __init__(self, dist):
        """Create and initialize a new Command object.  Most importantly,
        invokes the 'initialize_options()' method, which is the real
        initializer and depends on the actual command being
        instantiated.
        """
        # late import because of mutual dependence between these classes
        from distutils.dist import Distribution
    
        if not isinstance(dist, Distribution):
>           raise TypeError("dist must be a Distribution instance")
E           TypeError: dist must be a Distribution instance

.nox/test-3-9/lib/python3.9/site-packages/setuptools/_distutils/cmd.py:57: TypeError
================================================= warnings summary =================================================
.nox/test-3-9/lib/python3.9/site-packages/_distutils_hack/__init__.py:33
.nox/test-3-9/lib/python3.9/site-packages/_distutils_hack/__init__.py:33
.nox/test-3-9/lib/python3.9/site-packages/_distutils_hack/__init__.py:33
.nox/test-3-9/lib/python3.9/site-packages/_distutils_hack/__init__.py:33
.nox/test-3-9/lib/python3.9/site-packages/_distutils_hack/__init__.py:33
  /root/pip/.nox/test-3-9/lib/python3.9/site-packages/_distutils_hack/__init__.py:33: UserWarning: Setuptools is replacing distutils.
    warnings.warn("Setuptools is replacing distutils.")

.nox/test-3-9/lib/python3.9/site-packages/pip/_vendor/packaging/version.py:111: 540 warnings
  /root/pip/.nox/test-3-9/lib/python3.9/site-packages/pip/_vendor/packaging/version.py:111: DeprecationWarning: Creating a LegacyVersion has been deprecated and will be removed in the next major release
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================================= short test summary info ==============================================
ERROR tests/functional/test_bad_url.py::test_filenotfound_error_message - TypeError: dist must be a Distribution ...
========================================== 545 warnings, 1 error in 2.97s ==========================================
nox > Command pytest -n auto tests/functional/test_bad_url.py -v failed with exit code 1
nox > Session test-3.9 failed.

Code of Conduct

@zhuofeng6 zhuofeng6 added S: needs triage Issues/PRs that need to be triaged type: bug A confirmed bug or unintended behavior labels Jul 14, 2022
@uranusjr
Copy link
Member

This is caused by setuptools having issues with your environment and not something pip can help.

@uranusjr uranusjr added resolution: wrong project Should be reported elsewhere and removed type: bug A confirmed bug or unintended behavior S: needs triage Issues/PRs that need to be triaged labels Jul 14, 2022
@uranusjr uranusjr closed this as not planned Won't fix, can't repro, duplicate, stale Jul 14, 2022
@zhuofeng6
Copy link
Author

if i test with version=22.0, the case of test is ok. but version=21.3.1 is occurred an error, maybe it is something wrong with 21.3.1.

am i right?

@pradyunsg
Copy link
Member

Are you checking out the test suite of 21.3.1, to test 21.3.1?

@zhuofeng6
Copy link
Author

Are you checking out the test suite of 21.3.1, to test 21.3.1?

yes, of course

@uranusjr
Copy link
Member

I believe the difference you observe is due to pip changing the default editable build method to use isolated environments and masking the setuptools bug. The root issue is in setuptools.

@zhuofeng6
Copy link
Author

zhuofeng6 commented Jul 15, 2022

i don't know, but how do you explain if i test is ok with version>=22.0, and i occurred many error with version=21.3.1, i don't change other.

test command: nox -s test-3.7 -- -n auto -v, version=21.3.1
output:

============================================= short test summary info ==============================================
ERROR tests/functional/test_check.py::test_check_complicated_name_clean - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_install.py::test_pep518_refuses_invalid_requires - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install.py::test_pep518_uses_build_env[bad_setuptools-install] - TypeError: dist must...
ERROR tests/functional/test_install.py::test_basic_install_editable_from_git - TypeError: dist must be a Distribu...
ERROR tests/functional/test_debug.py::test_debug[sys.getdefaultencoding: ] - TypeError: dist must be a Distributi...
ERROR tests/functional/test_freeze.py::test_freeze_with_requirement_option_file_url_egg_not_installed - TypeError...
ERROR tests/functional/test_configuration.py::TestBasicLoading::test_global_config_file - TypeError: dist must be...
ERROR tests/functional/test_debug.py::test_debug__tags[args0] - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_installed_files_recorded_in_deterministic_order - TypeError: dist mu...
ERROR tests/functional/test_download.py::test_basic_download_setuptools - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_freeze.py::test_freeze_pep610_editable - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_download.py::test_download_wheel - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_completion.py::test_completion_uses_same_executable_name[--bash] - TypeError: dist mu...
ERROR tests/functional/test_install.py::test_pep518_refuses_invalid_build_system - TypeError: dist must be a Dist...
ERROR tests/functional/test_completion.py::test_completion_path_after_option - TypeError: dist must be a Distribu...
ERROR tests/functional/test_debug.py::test_debug[sys.implementation:] - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_freeze.py::test_freeze_with_requirement_option_package_repeated_one_file - TypeError:...
ERROR tests/functional/test_install.py::test_pep518_with_namespace_package - TypeError: dist must be a Distributi...
ERROR tests/functional/test_freeze.py::test_freeze_with_requirement_option - TypeError: dist must be a Distributi...
ERROR tests/functional/test_completion.py::test_completion_uses_same_executable_name[--zsh] - TypeError: dist mus...
ERROR tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject - TypeError: ...
ERROR tests/functional/test_download.py::test_only_binary_set_then_download_specific_platform - TypeError: dist m...
ERROR tests/functional/test_install.py::test_pep518_forkbombs[pep518_forkbomb-wheel] - TypeError: dist must be a ...
ERROR tests/functional/test_debug.py::test_debug__tags[args1] - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_package_that_emits_unicode - TypeError: dist must be a Distr...
ERROR tests/functional/test_freeze.py::test_basic_freeze - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_download.py::TestDownloadPlatformManylinuxes::test_download_compatible_manylinuxes[manylinux2010_x86_64-manylinux2014_x86_64]
ERROR tests/functional/test_fast_deps.py::test_hash_mismatch - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_pep518_with_extra_and_markers - TypeError: dist must be a Distributi...
ERROR tests/functional/test_download.py::TestDownloadPlatformManylinuxes::test_explicit_platform_only - TypeError...
ERROR tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed[True] - TypeError: dist must be ...
ERROR tests/functional/test_install_reqs.py::test_install_unsupported_wheel_file - TypeError: dist must be a Dist...
ERROR tests/functional/test_install.py::test_ignore_yanked_file - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_reqs.py::test_multiple_constraints_files - TypeError: dist must be a Distribu...
ERROR tests/functional/test_hash.py::test_bad_algo_option - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject - TypeErro...
ERROR tests/functional/test_install.py::test_install_log - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_fast_deps.py::test_build_wheel_with_deps - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_freeze.py::test_freeze_git_remote - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_pep518_forkbombs[pep518_twin_forkbombs_second-install] - TypeError: ...
ERROR tests/functional/test_download.py::test_download_prefer_binary_when_only_tarball_exists - TypeError: dist m...
ERROR tests/functional/test_download.py::test_download_vcs_link - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_subprocess_output_handling - TypeError: dist must be a Distr...
ERROR tests/functional/test_install.py::test_install_package_conflict_prefix_and_user - TypeError: dist must be a...
ERROR tests/functional/test_install_config.py::test_do_not_prompt_for_authentication - TypeError: dist must be a ...
ERROR tests/functional/test_install.py::test_install_from_test_pypi_with_ext_url_dep_is_blocked[https://pypi.org/simple]
ERROR tests/functional/test_install.py::test_install_nonlocal_compatible_wheel - TypeError: dist must be a Distri...
ERROR tests/functional/test_install.py::test_install_verify_package_name_normalization[simple.package] - TypeErro...
ERROR tests/functional/test_install.py::test_install_topological_sort - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_install_force_reinstall.py::test_force_reinstall_with_same_version_specifier - TypeEr...
ERROR tests/functional/test_install.py::test_pep518_forkbombs[pep518_twin_forkbombs_first-install] - TypeError: d...
ERROR tests/functional/test_download.py::test_download_prefer_binary_when_tarball_higher_than_wheel - TypeError: ...
ERROR tests/functional/test_install.py::test_install_conflict_results_in_warning - TypeError: dist must be a Dist...
ERROR tests/functional/test_install.py::test_target_install_ignores_distutils_config_install_prefix - TypeError: ...
ERROR tests/functional/test_download.py::test_download_should_skip_existing_files - TypeError: dist must be a Dis...
ERROR tests/functional/test_install.py::test_install_editable_uninstalls_existing_from_path - TypeError: dist mus...
ERROR tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied[False-install_args0-Requirement already satisfied: pip]
ERROR tests/functional/test_freeze.py::test_freeze_user - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_editable_with_prefix_setup_py - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_install_from_local_directory_with_no_setup_py - TypeError: dist must...
ERROR tests/functional/test_install.py::test_pep518_forkbombs[pep518_twin_forkbombs_first-wheel] - TypeError: dis...
ERROR tests/functional/test_install.py::test_install_conflict_warning_can_be_suppressed - TypeError: dist must be...
ERROR tests/functional/test_install.py::test_install_editable_uninstalls_existing - TypeError: dist must be a Dis...
ERROR tests/functional/test_install.py::test_install_package_to_usersite_with_target_must_fail[-t] - TypeError: d...
ERROR tests/functional/test_install_reqs.py::test_schema_check_in_requirements_file - TypeError: dist must be a D...
ERROR tests/functional/test_install_config.py::test_command_line_options_override_env_vars - TypeError: dist must...
ERROR tests/functional/test_install_config.py::test_env_vars_override_config_file - TypeError: dist must be a Dis...
ERROR tests/functional/test_install.py::test_pep518_build_env_uses_same_pip - TypeError: dist must be a Distribut...
ERROR tests/functional/test_install_reqs.py::test_constraints_only_causes_error - TypeError: dist must be a Distr...
ERROR tests/functional/test_install_compat.py::test_debian_egg_name_workaround - TypeError: dist must be a Distri...
ERROR tests/functional/test_install_vcs_git.py::test_editable__no_revision - TypeError: dist must be a Distributi...
ERROR tests/functional/test_download.py::test_prefer_binary_when_only_tarball_exists_req_file - TypeError: dist m...
ERROR tests/functional/test_install.py::test_install_package_with_prefix - TypeError: dist must be a Distribution...
ERROR tests/functional/test_install.py::test_pep518_forkbombs[pep518_twin_forkbombs_second-wheel] - TypeError: di...
ERROR tests/functional/test_install.py::test_install_package_with_utf8_setup - TypeError: dist must be a Distribu...
ERROR tests/functional/test_help.py::test_help_command_should_exit_status_error_when_cmd_does_not_exist - TypeErr...
ERROR tests/functional/test_freeze.py::test_freeze_path - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg - TypeError: dist must be a D...
ERROR tests/functional/test_help.py::test_help_command_should_exit_status_ok_when_command_exists - TypeError: dis...
ERROR tests/functional/test_install_upgrade.py::test_uninstall_rollback - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_install.py::test_install_package_with_latin1_setup - TypeError: dist must be a Distri...
ERROR tests/functional/test_install.py::test_pep518_uses_build_env[missing_setuptools-install] - TypeError: dist ...
ERROR tests/functional/test_install_reqs.py::test_install_unsupported_wheel_link_with_marker - TypeError: dist mu...
ERROR tests/functional/test_download.py::test_prefer_binary_when_wheel_doesnt_satisfy_req_req_file - TypeError: d...
ERROR tests/functional/test_freeze.py::test_freeze_with_requirement_option_package_repeated_multi_file - TypeErro...
ERROR tests/functional/test_install.py::test_install_quiet - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_compat.py::test_setup_py_with_dos_line_endings - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_installing_scripts_on_path_does_not_print_warning - TypeError: dist ...
ERROR tests/functional/test_install.py::test_install_verify_package_name_normalization[simple_package] - TypeErro...
ERROR tests/functional/test_install_wheel.py::test_wheel_install_fails_with_unrelated_dist_info - TypeError: dist...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo.bar-foo_bar]
ERROR tests/functional/test_install_reqs.py::test_install_with_extras_from_install - TypeError: dist must be a Di...
ERROR tests/functional/test_install_reqs.py::test_install_with_extras_joined - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install_reqs.py::test_constrained_to_url_install_same_url - TypeError: dist must be a...
ERROR tests/functional/test_install.py::test_pep518_refuses_conflicting_requires - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_config.py::test_command_line_append_flags - TypeError: dist must be a Distrib...
ERROR tests/functional/test_install.py::test_install_using_install_option_and_editable - TypeError: dist must be ...
ERROR tests/functional/test_download.py::test_download_ignore_requires_python_dont_fail_with_wrong_python - TypeE...
ERROR tests/functional/test_install_config.py::test_options_from_env_vars - TypeError: dist must be a Distributio...
ERROR tests/functional/test_install.py::test_hashed_install_success - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_install.py::test_install_global_option - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_wheel.py::test_wheel_record_lines_have_hash_for_data_files - TypeError: dist ...
ERROR tests/functional/test_install_config.py::test_command_line_appends_correctly - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_install_package_to_usersite_with_target_must_fail[--target] - TypeEr...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_ambiguous_revs - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo-bar-foo-bar]
ERROR tests/functional/test_install.py::test_install_compatible_python_requires - TypeError: dist must be a Distr...
ERROR tests/functional/test_install_reqs.py::test_constraints_not_installed_by_default - TypeError: dist must be ...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_no_setuptools_entrypoint - TypeError: dist ...
ERROR tests/functional/test_install_vcs_git.py::test_git_install_branch_again_after_branch_changes - TypeError: d...
ERROR tests/functional/test_install_vcs_git.py::test_install_git_logs_commit_sha[-5547fa909e83df8bd743d3978d6667497983a4b7]
ERROR tests/functional/test_install_vcs_git.py::test_install_git_logs_commit_sha[@0.1.1-7d654e66c8fa7149c165ddeffa5b56bc06619458]
ERROR tests/functional/test_install_vcs_git.py::test_git_with_tag_name_as_revision - TypeError: dist must be a Di...
ERROR tests/functional/test_install_reqs.py::test_install_with_extras_editable_joined - TypeError: dist must be a...
ERROR tests/functional/test_install_reqs.py::test_install_with_extras_from_constraints - TypeError: dist must be ...
ERROR tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied[False-install_args1-Requirement already {}: pip in]
ERROR tests/functional/test_install.py::test_install_pep508_with_url - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_install.py::test_pep518_uses_build_env[bad_setuptools-wheel] - TypeError: dist must b...
ERROR tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied[True-install_args1-Requirement already {}: pip in]
ERROR tests/functional/test_install_reqs.py::test_install_distribution_full_union - TypeError: dist must be a Dis...
ERROR tests/functional/test_install.py::test_install_verify_package_name_normalization[simple-package] - TypeErro...
ERROR tests/functional/test_install_wheel.py::test_wheel_install_with_no_cache_dir - TypeError: dist must be a Di...
ERROR tests/functional/test_install_extras.py::test_install_extra_merging[[extra1,extra2]-1.0-True] - TypeError: ...
ERROR tests/functional/test_install_vcs_git.py::test_git_install_again_after_changes - TypeError: dist must be a ...
ERROR tests/functional/test_install_vcs_git.py::test_install_git_logs_commit_sha[@65cf0a5bdd906ecf48a0ac241c17d656d2071d56-65cf0a5bdd906ecf48a0ac241c17d656d2071d56]
ERROR tests/functional/test_install_vcs_git.py::test_git_install_then_install_ref - TypeError: dist must be a Dis...
ERROR tests/functional/test_install_reqs.py::test_package_in_constraints_and_dependencies - TypeError: dist must ...
ERROR tests/functional/test_install_force_reinstall.py::test_force_reinstall_with_no_version_specifier - TypeErro...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_tag_name_and_update - TypeError: dist must be a Dis...
ERROR tests/functional/test_install_reqs.py::test_install_option_in_requirements_file_overrides_cli - TypeError: ...
ERROR tests/functional/test_install_upgrade.py::test_upgrade_to_same_version_from_url - TypeError: dist must be a...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_reset_env_system_site_packages_usersite - TypeE...
ERROR tests/functional/test_install_upgrade.py::test_upgrade_from_reqs_file - TypeError: dist must be a Distribut...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_no_deps - TypeError: dist must be a Distrib...
ERROR tests/functional/test_install.py::test_install_editable_from_git_autobuild_wheel - TypeError: dist must be ...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_install_user_in_global_virtualenv_with_conflict_fails
ERROR tests/functional/test_install_wheel.py::test_wheel_install_fails_with_extra_dist_info - TypeError: dist mus...
ERROR tests/functional/test_install_wheel.py::test_wheel_record_lines_in_deterministic_order - TypeError: dist mu...
ERROR tests/functional/test_install.py::test_install_nonlocal_compatible_wheel_path - TypeError: dist must be a D...
ERROR tests/functional/test_install.py::test_install_wheel_broken - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_no_binary_builds_pep_517_wheel - TypeError: dist must be a D...
ERROR tests/functional/test_install.py::test_install_folder_using_relative_path - TypeError: dist must be a Distr...
ERROR tests/functional/test_list.py::test_outdated_editables_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_basic_install_relative_directory[rel_url-True] - TypeError: dist mus...
ERROR tests/functional/test_install.py::test_basic_install_relative_directory[rel_url-False] - TypeError: dist mu...
ERROR tests/functional/test_install.py::test_pip_second_command_line_interface_works - TypeError: dist must be a ...
ERROR tests/functional/test_install.py::test_basic_install_from_local_directory[--use-deprecated=legacy-resolver]
ERROR tests/functional/test_list.py::test_multiple_exclude_and_normalization - TypeError: dist must be a Distribu...
ERROR tests/functional/test_list.py::test_uptodate_editables_columns_flag - TypeError: dist must be a Distributio...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_requires_python[<2-True-0.2.0] - TypeError: dist m...
ERROR tests/functional/test_install.py::test_install_package_with_root - TypeError: dist must be a Distribution i...
ERROR tests/functional/test_list.py::test_uptodate_columns_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installs_extras[base[add] >= 0.1.0] - TypeError: d...
ERROR tests/functional/test_install_extras.py::test_extras_after_wheel - TypeError: dist must be a Distribution i...
ERROR tests/functional/test_list.py::test_basic_list - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_handles_prerelease[default] - TypeError: dist must...
ERROR tests/functional/test_download.py::test_download__python_version_used_for_python_requires - TypeError: dist...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_no_fetch_no_satisfying - TypeError: dist must be a...
ERROR tests/functional/test_list.py::test_user_columns_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_list.py::test_outdated_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_list.py::test_outdated_columns_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_url_incorrect_case_file_index - TypeError: dist must be a Distributi...
ERROR tests/functional/test_install.py::test_basic_install_relative_directory[rel_path-False] - TypeError: dist m...
ERROR tests/functional/test_install.py::test_install_logs_pip_version_in_debug - TypeError: dist must be a Distri...
ERROR tests/functional/test_install_wheel.py::test_wheel_with_file_in_data_dir_has_reasonable_error[abc] - TypeEr...
ERROR tests/functional/test_install.py::test_basic_install_from_local_directory[] - TypeError: dist must be a Dis...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_force_reinstall - TypeError: dist must be a Distri...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_install_different_version - TypeError: dist must b...
ERROR tests/functional/test_install.py::test_basic_install_relative_directory[embedded_rel_path-True] - TypeError...
ERROR tests/functional/test_install_wheel.py::test_wheel_with_unknown_subdir_in_data_dir_has_reasonable_error - T...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_ignore_dependencies - TypeError: dist must be a Di...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installs_extras[base[add]] - TypeError: dist must ...
ERROR tests/functional/test_freeze.py::test_freeze_multiple_exclude_with_all - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install.py::test_install_tar_xz - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_direct_url.py::test_install_archive_direct_url - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_install_curdir - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_upgrade_strategy - TypeError: dist must be a Distr...
ERROR tests/functional/test_install.py::test_install_folder_using_dot_slash - TypeError: dist must be a Distribut...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-None-None-fakepy]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_ignores_unneeded_conflicting_constraints - TypeErr...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_handles_incompatible_wheel_tags_in_constraint_url
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-None-None-None]
ERROR tests/functional/test_install_reqs.py::test_constraints_local_editable_install_causes_error - TypeError: di...
ERROR tests/functional/test_list.py::test_uptodate_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_pardir - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_help.py::test_help_command_redact_auth_from_url_with_extra_index_url - TypeError: dis...
ERROR tests/functional/test_install.py::test_install_no_binary_uses_local_backend - TypeError: dist must be a Dis...
ERROR tests/functional/test_freeze.py::test_freeze_direct_url_archive - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_prefers_installed_in_upgrade_if_latest - TypeError...
ERROR tests/functional/test_show.py::test_package_name_is_canonicalized - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[different-keys] - TypeError:...
ERROR tests/functional/test_uninstall.py::test_uninstall_editable_with_source_outside_venv - TypeError: dist must...
ERROR tests/functional/test_install.py::test_install_tar_lzma - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_editable_with_wrong_egg_name - TypeError: dist must be a Dis...
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[IsADirectoryError] - TypeError: dis...
ERROR tests/functional/test_install.py::test_install_folder_using_slash_in_the_end - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_basic_install_from_pypi - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_install.py::test_install_from_local_directory_with_socket_file - TypeError: dist must...
ERROR tests/functional/test_vcs_git.py::test_partial_clone - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_sends_client_cert[install_args0] - TypeError: dist must be a...
ERROR tests/functional/test_install.py::test_double_install_fail - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_vcs_git.py::test_get_current_branch - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_url_req_case_mismatch_no_index - TypeError: dist must be a Distribut...
ERROR tests/functional/test_warning.py::test_deprecation_warnings_can_be_silenced - TypeError: dist must be a Dis...
ERROR tests/functional/test_install.py::test_install_incompatible_python_requires - TypeError: dist must be a Dis...
ERROR tests/functional/test_install.py::test_install_from_local_directory_with_symlinks_to_directories - TypeErro...
ERROR tests/functional/test_new_resolver.py::TestExtraMerge::test_new_resolver_extra_merge_in_package[_local_with_setup]
ERROR tests/functional/test_install_upgrade.py::test_invalid_upgrade_strategy_causes_error - TypeError: dist must...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[different-values] - TypeErro...
ERROR tests/functional/test_pep660.py::test_download_editable_pep660_basic - TypeError: dist must be a Distributi...
ERROR tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied[True-install_args0-Requirement already satisfied: pip]
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-None-None-fakepy]
ERROR tests/functional/test_install.py::test_install_from_local_directory_with_in_tree_build - TypeError: dist mu...
ERROR tests/functional/test_install_requested.py::test_install_requested_dep_in_requirements - TypeError: dist mu...
ERROR tests/functional/test_install.py::test_basic_install_relative_directory[rel_path-True] - TypeError: dist mu...
ERROR tests/functional/test_vcs_git.py::test_get_remote_url - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_no_binary_disables_cached_wheels - TypeError: dist must be a...
ERROR tests/functional/test_install_extras.py::test_install_extra_merging[-3.0-False] - TypeError: dist must be a...
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[] - TypeError: dist must be a Distr...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-None-1-None]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_presents_messages_when_backtracking_a_lot[2] - Typ...
ERROR tests/functional/test_install_extras.py::test_nonexistent_extra_warns_user_no_wheel - TypeError: dist must ...
ERROR tests/functional/test_install.py::test_install_upgrade_editable_depending_on_other_editable - TypeError: di...
ERROR tests/functional/test_install_extras.py::test_install_requirements_no_r_flag - TypeError: dist must be a Di...
ERROR tests/functional/test_vcs_git.py::test_get_remote_url__no_remote - TypeError: dist must be a Distribution i...
ERROR tests/functional/test_install_upgrade.py::test_upgrade_force_reinstall_newest - TypeError: dist must be a D...
ERROR tests/functional/test_install_extras.py::test_install_fails_if_extra_at_end - TypeError: dist must be a Dis...
ERROR tests/functional/test_install_reqs.py::test_install_local_editable_with_subdirectory - TypeError: dist must...
ERROR tests/functional/test_install_vcs_git.py::test_install_editable_from_git_with_https - TypeError: dist must ...
ERROR tests/functional/test_show.py::test_show_required_by_packages_basic - TypeError: dist must be a Distributio...
ERROR tests/functional/test_show.py::test_show_required_by_packages_capitalized - TypeError: dist must be a Distr...
ERROR tests/functional/test_warning.py::test_version_warning_is_not_shown_if_python_version_is_not_2 - TypeError:...
ERROR tests/functional/test_install.py::test_install_yanked_file_and_print_warning - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_install_incompatible_python_requires_wheel - TypeError: dist must be...
ERROR tests/functional/test_install_extras.py::test_install_extra_merging[[extra2]-1.0-True] - TypeError: dist mu...
ERROR tests/functional/test_requests.py::test_timeout - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_installing_scripts_outside_path_can_suppress_warning - TypeError: di...
ERROR tests/functional/test_install.py::test_valid_index_url_argument - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_install_config.py::test_prompt_for_authentication - TypeError: dist must be a Distrib...
ERROR tests/functional/test_install_extras.py::test_nonexistent_extra_warns_user_with_wheel - TypeError: dist mus...
ERROR tests/functional/test_list.py::test_verbose_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_upgrade.py::test_upgrade_with_newest_already_installed - TypeError: dist must...
ERROR tests/functional/test_install.py::test_user_config_accepted - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_reqs.py::test_relative_requirements_file[rel_url-True] - TypeError: dist must...
ERROR tests/functional/test_install_cleanup.py::test_pep517_no_legacy_cleanup - TypeError: dist must be a Distrib...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_fails_on_needed_conflicting_constraints - TypeErro...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_fails_on_conflicting_constraint_and_requirement - ...
ERROR tests/functional/test_install_direct_url.py::test_install_find_links_no_direct_url - TypeError: dist must b...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_does_not_install_unneeded_packages_with_url_constraint
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installs_packages_with_url_constraint - TypeError:...
ERROR tests/functional/test_install_direct_url.py::test_install_vcs_editable_no_direct_url - TypeError: dist must...
ERROR tests/functional/test_install_wheel.py::test_install_from_broken_wheel - TypeError: dist must be a Distribu...
ERROR tests/functional/test_list.py::test_list_path_exclude_user - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_vcs_git.py::test_partial_clone_without_server_support - TypeError: dist must be a Dis...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_install_user_conflict_in_globalsite - TypeError...
ERROR tests/functional/test_install_reqs.py::test_install_local_editable_with_extras - TypeError: dist must be a ...
ERROR tests/functional/test_install.py::test_install_no_binary_disables_building_wheels - TypeError: dist must be...
ERROR tests/functional/test_install_extras.py::test_simple_extras_install_from_pypi - TypeError: dist must be a D...
ERROR tests/functional/test_install_reqs.py::test_relative_requirements_file[embedded_rel_path-False] - TypeError...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_avoids_incompatible_wheel_tags_in_constraint_url
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[drop-depend-egg] - TypeError...
ERROR tests/functional/test_install_wheel.py::test_install_wheel_with_target_and_data_files - TypeError: dist mus...
ERROR tests/functional/test_install_extras.py::test_nonexistent_options_listed_in_order - TypeError: dist must be...
ERROR tests/functional/test_install_upgrade.py::test_eager_does_upgrade_dependecies_when_no_longer_satisfied - Ty...
ERROR tests/functional/test_install_requested.py::test_install_requested_basic - TypeError: dist must be a Distri...
ERROR tests/functional/test_install.py::test_basic_install_relative_directory[embedded_rel_path-False] - TypeErro...
ERROR tests/functional/test_install.py::test_install_incompatible_python_requires_editable - TypeError: dist must...
ERROR tests/functional/test_install_reqs.py::test_install_collected_dependencies_first - TypeError: dist must be ...
ERROR tests/functional/test_install_upgrade.py::test_upgrade_to_specific_version - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_index.py::test_find_links_relative_path - TypeError: dist must be a Distribut...
ERROR tests/functional/test_install_upgrade.py::test_eager_does_upgrade_dependecies_when_currently_satisfied - Ty...
ERROR tests/functional/test_install_upgrade.py::test_no_upgrade_unless_requested - TypeError: dist must be a Dist...
ERROR tests/functional/test_install.py::test_url_incorrect_case_no_index - TypeError: dist must be a Distribution...
ERROR tests/functional/test_vcs_git.py::test_clone_without_partial_clone_support - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_wheel.py::test_basic_install_from_unicode_wheel - TypeError: dist must be a D...
ERROR tests/functional/test_install_reqs.py::test_relative_requirements_file[rel_path-True] - TypeError: dist mus...
ERROR tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed[False] - TypeError: dist must be...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_presents_messages_when_backtracking_a_lot[10] - Ty...
ERROR tests/functional/test_install.py::test_install_from_test_pypi_with_ext_url_dep_is_blocked[https://test.pypi.org/simple]
ERROR tests/functional/test_install_vcs_git.py::test_check_submodule_addition - TypeError: dist must be a Distrib...
ERROR tests/functional/test_list.py::test_not_required_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_reqs.py::test_requirements_file - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_install.py::test_install_package_with_same_name_in_curdir - TypeError: dist must be a...
ERROR tests/functional/test_install.py::test_invalid_index_url_argument - TypeError: dist must be a Distribution ...
ERROR tests/lib/test_lib.py::test_correct_pip_version - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[drop-request-egg] - TypeErro...
ERROR tests/functional/test_install_extras.py::test_no_extras_uninstall - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_install_upgrade.py::test_only_if_needed_does_not_upgrade_deps_when_satisfied - TypeEr...
ERROR tests/functional/test_pep517.py::test_pep517_and_build_options - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_install_reqs.py::test_location_related_install_option_fails - TypeError: dist must be...
ERROR tests/functional/test_install_reqs.py::test_relative_requirements_file[rel_url-False] - TypeError: dist mus...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo-bar-foo.bar]
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-None-1-fakepy]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_reinstall_link_requirement_with_constraint - TypeE...
ERROR tests/functional/test_install_extras.py::test_install_extra_merging[[extra1]-2.0-True] - TypeError: dist mu...
ERROR tests/functional/test_install.py::test_double_install - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-None-1-None]
ERROR tests/functional/test_install_wheel.py::test_install_wheel_with_root - TypeError: dist must be a Distributi...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo.bar-foo.bar]
ERROR tests/functional/test_uninstall.py::test_uninstall_wheel - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_warning.py::test_flag_does_nothing_if_python_version_is_not_2 - TypeError: dist must ...
ERROR tests/functional/test_install_reqs.py::test_relative_requirements_file[rel_path-False] - TypeError: dist mu...
ERROR tests/functional/test_install_reqs.py::test_respect_order_in_requirements_file - TypeError: dist must be a ...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_non_editable_where_egg_contains_dev_string - TypeEr...
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[FileNotFoundError] - TypeError: dis...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo.bar-foo-bar]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_presents_messages_when_backtracking_a_lot[20] - Ty...
ERROR tests/functional/test_list.py::test_uptodate_editables_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo_bar-foo-bar]
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_with_headers - TypeError: dist must be a Di...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_install_user_venv_nositepkgs_fails - TypeError:...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo_bar-foo.bar]
ERROR tests/functional/test_install_wheel.py::test_basic_install_from_wheel_file - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_upgrade.py::test_uninstall_before_upgrade - TypeError: dist must be a Distrib...
ERROR tests/functional/test_install_upgrade.py::test_only_if_needed_does_upgrade_deps_when_no_longer_satisfied - ...
ERROR tests/functional/test_install_index.py::test_find_links_requirements_file_relative_path - TypeError: dist m...
ERROR tests/functional/test_install_reqs.py::test_install_options_local_to_package - TypeError: dist must be a Di...
ERROR tests/functional/test_install.py::test_install_builds_wheels - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_vcs_git.py::test_editable__non_master_default_branch - TypeError: dist must b...
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo_bar-foo_bar]
ERROR tests/functional/test_install_direct_url.py::test_install_vcs_constraint_direct_file_url - TypeError: dist ...
ERROR tests/functional/test_install_reqs.py::test_constraints_constrain_to_local_editable - TypeError: dist must ...
ERROR tests/functional/test_install_upgrade.py::test_uninstall_before_upgrade_from_url - TypeError: dist must be ...
ERROR tests/functional/test_install_requested.py::test_install_requested_in_reqs_and_constraints - TypeError: dis...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[drop-egg-only] - TypeError: ...
ERROR tests/functional/test_install_wheel.py::test_basic_install_from_wheel - TypeError: dist must be a Distribut...
ERROR tests/functional/test_pep517.py::test_pep517_and_global_options - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_install_extras.py::test_install_special_extra - TypeError: dist must be a Distributio...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_installs_deps - TypeError: dist must be a D...
ERROR tests/functional/test_install_wheel.py::test_install_from_future_wheel_version - TypeError: dist must be a ...
ERROR tests/functional/test_show.py::test_show_verbose_with_classifiers - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_succeeds_on_matching_constraint_and_requirement[False]
ERROR tests/functional/test_install_upgrade.py::test_install_with_ignoreinstalled_requested - TypeError: dist mus...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-fakeabi-None-None]
ERROR tests/functional/test_install.py::test_cleanup_after_failed_wheel - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_install_wheel.py::test_correct_package_name_while_creating_wheel_bug[simple-package]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_check_wheel_version_normalized[file_underscore-meta_underscore]
ERROR tests/functional/test_install.py::test_url_req_case_mismatch_file_index - TypeError: dist must be a Distrib...
ERROR tests/functional/test_install_config.py::test_options_from_venv_config - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install_reqs.py::test_relative_requirements_file[embedded_rel_path-True] - TypeError:...
ERROR tests/functional/test_install_config.py::test_config_file_override_stack - TypeError: dist must be a Distri...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_short_sha1_revisions - TypeError: dist must be a Di...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_succeeds_on_matching_constraint_and_requirement[True]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_prefers_url_constraint - TypeError: dist must be a...
ERROR tests/functional/test_list.py::test_local_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_direct_url.py::test_install_vcs_constraint_direct_url - TypeError: dist must ...
ERROR tests/functional/test_install_wheel.py::test_install_wheel_with_prefix - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install_upgrade.py::test_should_not_install_always_from_cache - TypeError: dist must ...
ERROR tests/functional/test_install_reqs.py::test_install_distribution_duplicate_extras - TypeError: dist must be...
ERROR tests/functional/test_install_wheel.py::test_skipping_setuptools_doesnt_skip_legacy - TypeError: dist must ...
ERROR tests/functional/test_install_wheel.py::test_install_user_wheel - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_warning.py::test_pip_works_with_warnings_as_errors - TypeError: dist must be a Distri...
ERROR tests/functional/test_new_resolver.py::TestExtraMerge::test_new_resolver_extra_merge_in_package[_direct_wheel]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_check_wheel_version_normalized[file_dot-meta_dot]
ERROR tests/functional/test_install.py::test_install_with_target_or_prefix_and_scripts_no_warning[--target] - Typ...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_install_from_current_directory_into_usersite - ...
ERROR tests/functional/test_install_direct_url.py::test_install_vcs_non_editable_direct_url - TypeError: dist mus...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-None-1-fakepy]
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_install_user_conflict_in_usersite - TypeError: ...
ERROR tests/functional/test_install_vcs_git.py::test_editable__branch_with_sha_same_as_default - TypeError: dist ...
ERROR tests/functional/test_install_wheel.py::test_wheel_compiles_pyc - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_install_wheel.py::test_wheel_install_fails_with_badly_encoded_metadata - TypeError: d...
ERROR tests/functional/test_show.py::test_show_required_by_packages_requiring_capitalized - TypeError: dist must ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_prefers_url_constraint_on_update - TypeError: dist...
ERROR tests/functional/test_new_resolver_errors.py::test_new_resolver_conflict_constraints_file - TypeError: dist...
ERROR tests/functional/test_vcs_git.py::test_get_current_branch__branch_and_tag_same_name - TypeError: dist must ...
ERROR tests/functional/test_show.py::test_show_verbose_installer - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_index.py::test_file_index_url_quoting - TypeError: dist must be a Distributio...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[drop-egg-still-different] - ...
ERROR tests/functional/test_list.py::test_list_pep610_editable - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_upgrade.py::test_upgrade_vcs_req_with_dist_found - TypeError: dist must be a ...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_warning_false_error_with_expect_stderr
ERROR tests/functional/test_list.py::test_list_path - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_can_install - TypeError: dist must be a Distributi...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-fakeabi-None-fakepy]
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-fakeabi-1-None]
ERROR tests/functional/test_install_vcs_git.py::test_install_git_sha_cached - TypeError: dist must be a Distribut...
ERROR tests/lib/test_lib.py::test_as_import - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_wheel.py::test_basic_install_from_wheel_with_extras - TypeError: dist must be...
ERROR tests/functional/test_vcs_git.py::test_get_revision_sha - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::TestExtraMerge::test_new_resolver_extra_merge_in_package[_wheel_from_index]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_build_directory_error_zazo_19 - TypeError: dist mu...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_applies_url_constraint_to_dep - TypeError: dist mu...
ERROR tests/functional/test_install_upgrade.py::test_upgrade_if_requested - TypeError: dist must be a Distributio...
ERROR tests/functional/test_install_wheel.py::test_install_wheel_with_target - TypeError: dist must be a Distribu...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_error[WARNING] - TypeError: dist must...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_warning_false_error[expect_error] - T...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_warning_false_error[allow_stderr_error]
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-fakeabi-None-None]
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-fakeabi-None-fakepy]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_requires_python_error - TypeError: dist must be a ...
ERROR tests/functional/test_show.py::test_show_skip_work_dir_pkg - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_upgrade.py::test_install_find_existing_package_canonicalize[foo-bar-foo_bar]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_with_extras - TypeError: dist must be a...
ERROR tests/functional/test_install_wheel.py::test_wheel_no_compiles_pyc - TypeError: dist must be a Distribution...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_gen_entrypoint - TypeError: dist must be a ...
ERROR tests/functional/test_pep660.py::test_install_pep517_basic - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[\n] - TypeError: dist must be a Dis...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_gui_entrypoint - TypeError: dist must be a ...
ERROR tests/functional/test_pep660.py::test_install_pep660_basic - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_vcs_git.py::test_editable__branch_with_sha_different_from_default - TypeError...
ERROR tests/functional/test_install_check.py::test_check_install_canonicalization - TypeError: dist must be a Dis...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_check_wheel_version_normalized[file_dot-meta_underscore]
ERROR tests/functional/test_install.py::test_install_with_target_or_prefix_and_scripts_no_warning[--prefix] - Typ...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__expect_error_fails_when_zero_returncode - TypeErro...
ERROR tests/functional/test_new_resolver_errors.py::test_new_resolver_requires_python_error - TypeError: dist mus...
ERROR tests/functional/test_list.py::test_outdated_pre - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_vcs_git.py::test_is_commit_id_equal - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_vcs_git.py::test_is_immutable_rev_checkout - TypeError: dist must be a Distribution i...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_requires_python[>=2-True-0.2.0] - TypeError: dist ...
ERROR tests/functional/test_install_requested.py::test_install_requested_reqs_and_constraints - TypeError: dist m...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__no_expect_error_fails_when_nonzero_returncode - Ty...
ERROR tests/functional/test_list.py::test_list_json - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_show.py::test_show_verbose - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_modifies_installed_incompatible - TypeError: dist ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_upgrade_same_version - TypeError: dist must be a D...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_uninstalls_old_version - TypeError: dist mu...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_file_url_normalize[path-localhost] - TypeError: di...
ERROR tests/functional/test_uninstall.py::test_uninstall_overlapping_package - TypeError: dist must be a Distribu...
ERROR tests/functional/test_list.py::test_list_skip_work_dir_pkg - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_handles_prerelease[exact-pre] - TypeError: dist mu...
ERROR tests/functional/test_install_reqs.py::test_double_install_spurious_hash_mismatch - TypeError: dist must be...
ERROR tests/functional/test_install_vcs_git.py::test_install_git_branch_not_cached - TypeError: dist must be a Di...
ERROR tests/functional/test_install_reqs.py::test_constraints_constrain_to_local - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_config.py::test_install_no_binary_via_config_disables_cached_wheels - TypeErr...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_fails_with_url_constraint_and_incompatible_version[--constraint]
ERROR tests/functional/test_vcs_git.py::test_get_repository_root - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_reqs.py::test_install_distribution_union_with_versions - TypeError: dist must...
ERROR tests/functional/test_install_requested.py::test_install_requested_requirements - TypeError: dist must be a...
ERROR tests/functional/test_install_vcs_git.py::test_reinstalling_works_with_editable_non_master_branch - TypeErr...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_with_legacy - TypeError: dist must be a Dis...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_editable_where_egg_contains_dev_string - TypeError:...
ERROR tests/functional/test_show.py::test_all_fields - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_requires_python[>=2-False-0.2.0] - TypeError: dist...
ERROR tests/functional/test_show.py::test_show_include_work_dir_pkg - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_transitively_depends_on_unnamed_local - TypeError:...
ERROR tests/functional/test_install_index.py::test_install_from_file_index_hash_link - TypeError: dist must be a ...
ERROR tests/functional/test_list.py::test_outdated_formats - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_vcs_git.py::test_git_with_branch_name_as_revision - TypeError: dist must be a...
ERROR tests/functional/test_list.py::test_local_columns_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[\xc0\xff\xee] - TypeError: dist mus...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_requires_python[<2-False-0.1.0] - TypeError: dist ...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allowed_stderr[DEBUG] - TypeError: dist must be a ...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allowed_stderr[INFO] - TypeError: dist must be a D...
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[pip] - TypeError: dist must be a Di...
ERROR tests/functional/test_install_vcs_git.py::test_git_branch_should_not_be_changed - TypeError: dist must be a...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_reject_invalid[dist.zip-Unnamed requirements are not allowed as constraints]
ERROR tests/functional/test_install_reqs.py::test_install_distribution_union_with_constraints - TypeError: dist m...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_gen_unicode_entrypoint - TypeError: dist mu...
ERROR tests/functional/test_new_resolver_errors.py::test_new_resolver_checks_requires_python_before_dependencies
ERROR tests/functional/test_show.py::test_show_with_files_from_wheel - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_install_vcs_git.py::test_git_install_ref - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_non_editable_unpacking - TypeError: dist must be a ...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_intersect_empty[one-each] - TypeError:...
ERROR tests/functional/test_list.py::test_list_include_work_dir_pkg - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_uninstall.py::test_uninstall_entry_point_colon_in_name[test_ = distutils_install] - T...
ERROR tests/functional/test_show.py::test_show_with_files_from_legacy - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_uninstall.py::test_uninstall_editable_and_pip_install - TypeError: dist must be a Dis...
ERROR tests/functional/test_pep660.py::test_install_no_pep660_setup_py_fallback - TypeError: dist must be a Distr...
ERROR tests/functional/test_uninstall.py::test_uninstall_without_record_fails[MegaCorp Cloud Install-O-Matic] - T...
ERROR tests/functional/test_uninstall.py::test_uninstall_with_symlink - TypeError: dist must be a Distribution in...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[fragment-ordering] - TypeErr...
ERROR tests/functional/test_pep660.py::test_install_no_pep660_setup_cfg_fallback - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_check.py::test_check_install_does_not_warn_for_out_of_graph_issues - TypeErro...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allowed_stderr[FOO] - TypeError: dist must be a Di...
ERROR tests/functional/test_install_upgrade.py::test_upgrade_vcs_req_with_no_dists_found - TypeError: dist must b...
ERROR tests/functional/test_show.py::test_basic_show - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_local_and_req - TypeError: dist must be a Distribu...
ERROR tests/functional/test_uninstall.py::test_uninstall_entry_point_colon_in_name[test_:test_ = distutils_install]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installs_extras_warn_missing - TypeError: dist mus...
ERROR tests/functional/test_install_reqs.py::test_constraints_local_editable_install_pep518 - TypeError: dist mus...
ERROR tests/functional/test_install_vcs_git.py::test_install_noneditable_git - TypeError: dist must be a Distribu...
ERROR tests/functional/test_show.py::test_missing_argument - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_wheel.py::test_wheel_compile_syntax_error - TypeError: dist must be a Distrib...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_warning - TypeError: dist must be a D...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_intersect[identical] - TypeError: dist...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_error[ERROR] - TypeError: dist must b...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_does_reinstall_local_sdists - TypeError: dist must...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_file_url_normalize[emptyhost-emptyhost] - TypeErro...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-fakeabi-1-fakepy]
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user - TypeError: dist must be a Dist...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_file_url_normalize[emptyhost-localhost] - TypeErro...
ERROR tests/functional/test_install_wheel.py::test_install_from_wheel_gen_uppercase_entrypoint - TypeError: dist ...
ERROR tests/functional/test_show.py::test_pip_show_is_short - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_wheel.py::test_pip_wheel_builds_when_no_binary_set - TypeError: dist must be a Distri...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_handles_prerelease[explicit-pre] - TypeError: dist...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_handles_prerelease[no-stable] - TypeError: dist mu...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_does_reinstall_local_paths - TypeError: dist must ...
ERROR tests/functional/test_uninstall.py::test_basic_uninstall_distutils - TypeError: dist must be a Distribution...
ERROR tests/functional/test_pep517.py::test_no_use_pep517_without_setup_py - TypeError: dist must be a Distributi...
ERROR tests/functional/test_show.py::test_report_single_not_found - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_uninstall.py::test_uninstall_gui_scripts - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_does_not_reinstall_when_from_a_local_index - TypeE...
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user_satisfied_by_global_site - TypeE...
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user_conflict_in_global_and_user_sites
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_reject_invalid[-e git+https://example.com/dist.git#egg=req-Editable requirements are not allowed as constraints]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_reject_invalid[pkg[extra]-Constraints cannot have extras]
ERROR tests/functional/test_no_color.py::test_no_color - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install_reqs.py::test_constraints_local_install_causes_error - TypeError: dist must b...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_on_dependency - TypeError: dist must be...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_on_path_empty[1.0-True-Cannot install foo 2.0]
ERROR tests/functional/test_uninstall.py::test_uninstall_editable_and_pip_install_easy_install_remove - TypeError...
ERROR tests/functional/test_uninstall.py::test_basic_uninstall_with_scripts - TypeError: dist must be a Distribut...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_intersect[intersect] - TypeError: dist...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_intersect_empty_from_constraint - Type...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__unexpected_stderr[DEPRECATION-stderr has an unexpected warning]
ERROR tests/functional/test_pep517.py::test_conflicting_pep517_backend_requirements - TypeError: dist must be a D...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_skip_inconsistent_metadata - TypeError: dist must ...
ERROR tests/functional/test_wheel.py::test_pip_wheel_readonly_cache - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_requirement_and_url_constraint_can_succeed[False]
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__unexpected_stderr[WARNING-stderr has an unexpected warning]
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__unexpected_stderr[ERROR-stderr has an unexpected error]
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_intersect_from_constraint - TypeError:...
ERROR tests/functional/test_pep517.py::test_pep517_backend_requirements_already_satisfied - TypeError: dist must ...
ERROR tests/functional/test_show.py::test_report_mixed_not_found - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_uninstall.py::test_uninstall_ignores_missing_packages - TypeError: dist must be a Dis...
ERROR tests/functional/test_uninstall.py::test_uninstall_ignores_missing_packages_and_uninstalls_rest - TypeError...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_lazy_fetch_candidates[upgrade] - TypeError: dist m...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_file_url_normalize[localhost-emptyhost] - TypeErro...
ERROR tests/functional/test_pep517.py::test_pep517_install_with_no_cache_dir - TypeError: dist must be a Distribu...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__logging_error - TypeError: dist must be a Distribu...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_requirement_and_url_constraint_can_succeed[True]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_on_path_empty[2.0-False-Successfully installed foo-2.0]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_file_url_normalize[localhost-localhost] - TypeErro...
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user_conflict_in_user_site - TypeErro...
ERROR tests/functional/test_install_vcs_git.py::test_git_with_sha1_revisions - TypeError: dist must be a Distribu...
ERROR tests/functional/test_wheel.py::test_pip_wheel_builds_editable_deps - TypeError: dist must be a Distributio...
ERROR tests/functional/test_install.py::test_install_package_which_contains_dev_in_name - TypeError: dist must be...
ERROR tests/functional/test_pep517.py::test_no_build_system_section - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_uninstall.py::test_uninstall_invalid_parameter[GTrolls.tar.gz] - TypeError: dist must...
ERROR tests/functional/test_new_resolver.py::test_new_reolver_skips_marker[pkg_deps0-root_deps0] - TypeError: dis...
ERROR tests/functional/test_uninstall.py::test_uninstall_invalid_parameter[https://guyto.com/archives/] - TypeErr...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_dont_backtrack_on_extra_if_base_constrained - Type...
ERROR tests/functional/test_wheel.py::test_pip_wheel_builds_editable - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_uninstall.py::test_uninstall_easy_install_after_import - TypeError: dist must be a Di...
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_requirement_and_url_constraint_can_fail[False]
ERROR tests/functional/test_uninstall.py::test_uninstall_console_scripts - TypeError: dist must be a Distribution...
ERROR tests/functional/test_install.py::test_install_sends_client_cert[install_args1] - TypeError: dist must be a...
ERROR tests/functional/test_wheel.py::test_pip_wheel_with_pep518_build_reqs - TypeError: dist must be a Distribut...
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user_in_virtualenv_with_conflict_fails
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_requirement_and_url_constraint_can_fail[True]
ERROR tests/functional/test_new_resolver.py::test_new_reolver_skips_marker[pkg_deps1-root_deps1] - TypeError: dis...
ERROR tests/functional/test_uninstall.py::test_uninstall_console_scripts_uppercase_name - TypeError: dist must be...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_only_marker_match - TypeError: dist mus...
ERROR tests/functional/test_uninstall.py::test_uninstall_trailing_newline - TypeError: dist must be a Distributio...
ERROR tests/functional/test_wheel.py::test_pip_wheel_git_editable_keeps_clone - TypeError: dist must be a Distrib...
ERROR tests/functional/test_uninstall_user.py::Tests_UninstallUserSite::test_uninstall_from_usersite - TypeError:...
ERROR tests/functional/test_pep517.py::test_no_build_backend_entry - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_ignore_installed - TypeError: dist must be a Distr...
ERROR tests/functional/test_wheel.py::test_pip_wheel_with_pep518_build_reqs_no_isolation - TypeError: dist must b...
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user_reinstall_global_site - TypeErro...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_picks_latest_version - TypeError: dist must be a D...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_picks_installed_version - TypeError: dist must be ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraints[constraints0] - TypeError: dist must b...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installs_dependencies - TypeError: dist must be a ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installed - TypeError: dist must be a Distribution...
ERROR tests/functional/test_wheel.py::test_wheel_exit_status_code_when_no_requirements - TypeError: dist must be ...
ERROR tests/functional/test_uninstall_user.py::Tests_UninstallUserSite::test_uninstall_from_usersite_with_dist_in_global_site
ERROR tests/functional/test_install_reqs.py::test_install_local_with_subdirectory - TypeError: dist must be a Dis...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraints[constraints1] - TypeError: dist must b...
ERROR tests/functional/test_install_wheel.py::test_wheel_installs_ok_with_badly_encoded_irrelevant_dist_info_file
ERROR tests/functional/test_warning.py::test_deprecation_warnings_are_correct - TypeError: dist must be a Distrib...
ERROR tests/functional/test_wheel.py::test_wheel_exit_status_code_when_blank_requirements_file - TypeError: dist ...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_handles_compatible_wheel_tags_in_constraint_url - ...
ERROR tests/functional/test_wheel.py::test_pip_wheel_builds_editable_does_not_create_zip - TypeError: dist must b...
ERROR tests/functional/test_list.py::test_list_path_multiple - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_check_wheel_version_normalized[file_underscore-meta_dot]
ERROR tests/functional/test_install_wheel.py::test_wheel_installs_ok_with_nested_dist_info - TypeError: dist must...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_picks_installed_version_if_no_match_found - TypeEr...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_upgrade_user_conflict_in_globalsite - TypeError...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_direct_url_equivalent[query-opordering] - TypeErro...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installs_editable - TypeError: dist must be a Dist...
ERROR tests/functional/test_list.py::test_exclude_editable_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_wheel.py::test_pip_wheel_with_user_set_in_config - TypeError: dist must be a Distribu...
ERROR tests/functional/test_list.py::test_outdated_not_required_flag - TypeError: dist must be a Distribution ins...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[fakeplat-fakeabi-1-None]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_installed_message - TypeError: dist must be a Dist...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-fakeabi-1-fakepy]
ERROR tests/functional/test_wheel.py::test_pip_wheel_fail - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_list.py::test_outdated_editables_columns_flag - TypeError: dist must be a Distributio...
ERROR tests/functional/test_wheel.py::test_pip_wheel_ext_module_with_tmpdir_inside - TypeError: dist must be a Di...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_fails_with_url_constraint_and_incompatible_version[--requirement]
ERROR tests/functional/test_wheel.py::test_pip_wheel_success - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_wheel.py::test_pip_wheel_source_deps - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_install.py::test_install_package_with_target - TypeError: dist must be a Distribution...
ERROR tests/functional/test_wheel.py::test_pep517_wheels_are_not_confused_with_other_files - TypeError: dist must...
ERROR tests/functional/test_show.py::test_show_with_files_not_found - TypeError: dist must be a Distribution inst...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_can_install_with_version - TypeError: dist must be...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_file_url_normalize[path-emptyhost] - TypeError: di...
ERROR tests/functional/test_pep660.py::test_wheel_editable_pep660_basic - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_wheel.py::test_pip_wheel_build_cache - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_list.py::test_columns_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_only_builds_sdists_when_needed - TypeError: dist m...
ERROR tests/functional/test_list.py::test_editables_columns_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_list.py::test_editables_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver_hashes.py::test_new_resolver_hash_intersect_empty[both-requirements] - T...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_no_deps_checks_requires_python - TypeError: dist m...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_no_dist_message - TypeError: dist must be a Distri...
ERROR tests/functional/test_uninstall.py::test_basic_uninstall - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_show.py::test_pip_show_divider - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_wheel.py::test_basic_pip_wheel_downloads_wheels - TypeError: dist must be a Distribut...
ERROR tests/functional/test_vcs_git.py::test_resolve_commit_not_on_branch - TypeError: dist must be a Distributio...
ERROR tests/functional/test_wheel.py::test_legacy_wheels_are_not_confused_with_other_files - TypeError: dist must...
ERROR tests/functional/test_uninstall.py::test_uninstall_setuptools_develop_install - TypeError: dist must be a D...
ERROR tests/functional/test_list.py::test_list_freeze - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_uninstall.py::test_uninstall_easy_installed_console_scripts - TypeError: dist must be...
ERROR tests/functional/test_install.py::test_install_skip_work_dir_pkg - TypeError: dist must be a Distribution i...
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_error[DEPRECATION] - TypeError: dist ...
ERROR tests/functional/test_list.py::test_user_flag - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_new_resolver.py::test_new_resolver_lazy_fetch_candidates[no-upgrade] - TypeError: dis...
ERROR tests/unit/test_direct_url_helpers.py::test_from_link_vcs_with_source_dir_obtains_commit_id - TypeError: di...
ERROR tests/functional/test_install_reqs.py::test_wheel_user_with_prefix_in_pydistutils_cfg - TypeError: dist mus...
ERROR tests/functional/test_new_resolver.py::test_new_resolver_upgrade_needs_option - TypeError: dist must be a D...
ERROR tests/functional/test_list.py::test_format_priority - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_uninstall_user.py::Tests_UninstallUserSite::test_uninstall_editable_from_usersite - T...
ERROR tests/functional/test_pep517.py::test_explicit_setuptools_backend - TypeError: dist must be a Distribution ...
ERROR tests/functional/test_new_resolver_user.py::test_new_resolver_install_user_conflict_in_global_site - TypeEr...
ERROR tests/functional/test_install_wheel.py::test_correct_package_name_while_creating_wheel_bug[simple_package]
ERROR tests/functional/test_new_resolver_errors.py::test_new_resolver_conflict_requirements_file - TypeError: dis...
ERROR tests/functional/test_uninstall.py::test_basic_uninstall_namespace_package - TypeError: dist must be a Dist...
ERROR tests/functional/test_install_user.py::Tests_UserSite::test_install_user_conflict_in_globalsite_and_usersite
ERROR tests/lib/test_lib.py::TestPipTestEnvironment::test_run__allow_stderr_error_false_error_with_expect_error
ERROR tests/unit/test_direct_url_helpers.py::test_from_link_vcs_without_source_dir - TypeError: dist must be a Di...
ERROR tests/functional/test_new_resolver_target.py::test_new_resolver_target_checks_compatibility_failure[None-None-None-None]
ERROR tests/functional/test_new_resolver.py::test_new_resolver_constraint_no_specifier - TypeError: dist must be ...
ERROR tests/functional/test_wheel.py::test_wheel_package_with_latin1_setup - TypeError: dist must be a Distributi...
ERROR tests/lib/test_lib.py::test_tmp_dir_exists_in_env - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_wheel.py::test_pip_wheel_build_relative_cachedir - TypeError: dist must be a Distribu...
ERROR tests/functional/test_install_wheel.py::test_wheel_with_file_in_data_dir_has_reasonable_error[purelib] - Ty...
ERROR tests/unit/test_wheel_builder.py::test_should_cache_git_sha - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_pep517.py::test_pep517_install - TypeError: dist must be a Distribution instance
ERROR tests/functional/test_pep517.py::test_pep517_install_with_reqs - TypeError: dist must be a Distribution ins...
FAILED tests/unit/test_operations_prepare.py::test_copy_source_tree_with_socket_fails_with_no_socket_error - Fail...
FAILED tests/unit/test_operations_prepare.py::test_copy_source_tree_with_unreadable_dir_fails - Failed: DID NOT R...
FAILED tests/unit/test_utils_filesystem.py::test_copy2_fixed_raises_appropriate_errors[make_unreadable_file-OSError]
FAILED tests/unit/test_req_file.py::TestParseRequirements::test_remote_reqs_parse - pip._vendor.requests.exceptio...
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_std_install_with_direct_url - AssertionError: 0o600
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_std_install - AssertionError: 0o600
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_dist_info_contains_empty_dir - AssertionError: 0o600
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_std_install_requested - AssertionError: 0o600
FAILED tests/unit/test_network_lazy_wheel.py::test_dist_from_wheel_url_not_zip - pip._vendor.requests.exceptions....
========== 9 failed, 1424 passed, 51 skipped, 10 xfailed, 8471 warnings, 781 errors in 170.98s (0:02:50) ===========
nox > Command pytest -n auto -v failed with exit code 1
nox > Session test-3.7 failed.

test command: nox -s test-3.7 -- -n auto -v, version=22.0
output:

============================================= short test summary info ==============================================
FAILED tests/unit/test_network_session.py::TestPipSession::test_proxy - pip._vendor.requests.exceptions.InvalidPr...
FAILED tests/functional/test_wheel.py::test_pip_wheel_readonly_cache - AssertionError: Script result: python -m p...
FAILED tests/unit/test_req_file.py::TestParseRequirements::test_remote_reqs_parse - pip._vendor.requests.exceptio...
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_std_install - AssertionError: 0o600
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_dist_info_contains_empty_dir - AssertionError: 0o600
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_std_install_with_direct_url - AssertionError: 0o600
FAILED tests/unit/test_wheel.py::TestInstallUnpackedWheel::test_std_install_requested - AssertionError: 0o600
FAILED tests/functional/test_install.py::test_install_from_test_pypi_with_ext_url_dep_is_blocked[https://test.pypi.org/simple]
FAILED tests/unit/test_network_lazy_wheel.py::test_dist_from_wheel_url_not_zip - pip._vendor.requests.exceptions....
FAILED tests/functional/test_install_vcs_git.py::test_check_submodule_addition - AssertionError: Script returned ...
FAILED tests/functional/test_download.py::test_basic_download_should_download_dependencies - AssertionError: Scri...
FAILED tests/functional/test_install_vcs_git.py::test_git_with_non_editable_where_egg_contains_dev_string - Asser...
FAILED tests/functional/test_install.py::test_pep518_allows_missing_requires - AssertionError: Script returned co...
FAILED tests/functional/test_freeze.py::test_freeze_user - AssertionError: Script returned code: 2
FAILED tests/functional/test_fast_deps.py::test_install_from_pypi[Paste[flup]==3.4.2-expected1] - AssertionError:...
FAILED tests/functional/test_install.py::test_install_no_binary_uses_local_backend - AssertionError: Script retur...
FAILED tests/functional/test_pep517.py::test_pep517_and_build_options - AssertionError: Script returned code: 1
================ 17 failed, 2248 passed, 52 skipped, 10 xfailed, 8294 warnings in 477.14s (0:07:57) ================
nox > Command pytest -n auto -v failed with exit code 1
nox > Session test-3.7 failed.

@zhuofeng6
Copy link
Author

The log is too long and can't upload, so I deleted the part

@zhuofeng6
Copy link
Author

My setuptools is automatically downloaded during the test, and the environment related should also be automatically set. It should be downloaded automatically when pip test it.

So why do you say it's a problem with the environment of my setuptools?

@pfmoore
Copy link
Member

pfmoore commented Jul 23, 2022

Let's put this another way. It's not happening on anyone else's system, so it's fairly likely to be something about your system that's the issue here. The information you've provided so far suggests that something outside of pip is causing the types not to match up. In our experience this is typically down to the complexities in how setuptools and distutils interact (which is something the setuptools team are familiar with, but we are not).

There's nothing the pip team can do here. If you can demonstrate a bug in pip that can be reproduced on environments other than your own PC, then that would be useful. But the pip team can't help you with that. The setuptools team might be able to - as I say, they are familiar with how the relevant interactions work - so you may get somewhere by reaching out to them. But you're not going to make much progress asking here, as we're the wrong people to ask.

@sbidoul
Copy link
Member

sbidoul commented Jul 23, 2022

I thought I had seen that before and this issue encouraged me to try and reproduce. It turns out I can reproduce reliably:

  • on ubuntu 20
  • with python 3.8
  • in a virtualenv where I installed pip main in editable mode as well as tests/requirements.txt and where I got setuptools 62.6.0

Running pytest tests/functional/test_install_report.py reproduces the same issue.
With SETUPTOOLS_USE_DISTUTILS=stdlib it works fine.

I'll try to understand where and when distutils is imported.

@sbidoul
Copy link
Member

sbidoul commented Jul 23, 2022

Raising a RuntimeError in the stdlib distutils/__init__.py gives this:

ImportError while loading conftest '/home/me/FOSS/pip/tests/conftest.py'.
tests/conftest.py:37: in <module>
    from tests.lib import DATA_DIR, SRC_DIR, PipTestEnvironment, TestData
tests/lib/__init__.py:43: in <module>
    from tests.lib.venv import VirtualEnvironment
tests/lib/venv.py:11: in <module>
    import virtualenv as _virtualenv
../../.virtualenvs/pip/lib/python3.8/site-packages/virtualenv.py:24: in <module>
    import distutils.spawn
/usr/lib/python3.8/distutils/__init__.py:11: in <module>
    raise RuntimeError()

So distutils is imported indirectly by our testsuite, via virtualenv.

But actually our noxfile session has SETUPTOOLS_USE_DISTUTILS=stdlib, so I'd say it's the only supported way to run tests for now? I'm not super familiar with that area. [edit: I'm not ]

@sbidoul
Copy link
Member

sbidoul commented Jul 23, 2022

Digging further, it appears the "bug" is triggered by our use of setuptools.wheel.Wheel.install_as_egg in our test suite (in _common_wheel_editable_install). Since this function does not seem to be a public api of setuptools, maybe we should use something else?

@pradyunsg pradyunsg added C: tests Testing and related things and removed resolution: wrong project Should be reported elsewhere labels Jul 23, 2022
@pradyunsg pradyunsg reopened this Jul 23, 2022
@pradyunsg
Copy link
Member

But actually our noxfile session has SETUPTOOLS_USE_DISTUTILS=stdlib, so I'd say it's the only supported way to run tests for now? I'm not super familiar with that area. [edit: I'm not ]

Pretty much.

Digging further, it appears the "bug" is triggered by our use of setuptools.wheel.Wheel.install_as_egg in our test suite (in _common_wheel_editable_install). Since this function does not seem to be a public api of setuptools, maybe we should use something else?

Maybe?

@sbidoul
Copy link
Member

sbidoul commented Jul 23, 2022

our noxfile session has SETUPTOOLS_USE_DISTUTILS=stdlib

@pradyunsg maybe that explains why our tests did not catch #11294 ?

@pradyunsg
Copy link
Member

Aha! Indeed, it does, yes.

IIRC, I'd added this because our tests started failing with this error when the new setuptools release came out which didn't default that way, and none of us had the bandwidth to investigate what exactly had changed on setuptools' end -- especially how it interacted with our quirky test isolation setup.

@sbidoul
Copy link
Member

sbidoul commented Jul 23, 2022

Thanks for reporting, @alittlesir !

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 23, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
C: tests Testing and related things
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants