Skip to content

Commit

Permalink
Merge pull request #11298 from pradyunsg/remove-distutils-shim
Browse files Browse the repository at this point in the history
  • Loading branch information
pradyunsg authored Jul 26, 2022
2 parents 0231a1d + a14f141 commit fcb0c84
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
4 changes: 4 additions & 0 deletions news/11298.bugfix.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Ensure that things work correctly in environments where setuptools-injected
``distutils`` is available by default. This is done by cooperating with
setuptools' injection logic to ensure that pip uses the ``distutils`` from the
Python standard library instead.
11 changes: 11 additions & 0 deletions src/pip/_internal/locations/_distutils.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,17 @@
# The following comment should be removed at some point in the future.
# mypy: strict-optional=False

# If pip's going to use distutils, it should not be using the copy that setuptools
# might have injected into the environment. This is done by removing the injected
# shim, if it's injected.
#
# See https://github.com/pypa/pip/issues/8761 for the original discussion and
# rationale for why this is done within pip.
try:
__import__("_distutils_hack").remove_shim()
except ImportError:
pass

import logging
import os
import sys
Expand Down

0 comments on commit fcb0c84

Please sign in to comment.