refactor: simplify pip install command by using sys.executable directly

This commit is contained in:
Paul Gauthier 2024-12-08 18:12:30 -08:00 committed by Paul Gauthier (aider)
parent dd9bdca572
commit fa6c3068c0

View file

@ -194,25 +194,9 @@ def split_chat_history_markdown(text, include_tool=False):
return messages
# Copied from pip, MIT license
# https://github.com/pypa/pip/blob/b989e6ef04810bbd4033a3683020bd4ddcbdb627/src/pip/_internal/utils/entrypoints.py#L73
def get_best_invocation_for_this_python() -> str:
"""Try to figure out the best way to invoke the current Python."""
exe = sys.executable
exe_name = os.path.basename(exe)
# Try to use the basename, if it's the first executable.
found_executable = shutil.which(exe_name)
if found_executable and os.path.samefile(found_executable, exe):
return exe_name
# Use the full executable name, because we couldn't find something simpler.
return exe
def get_pip_install(args):
cmd = [
get_best_invocation_for_this_python(),
sys.executable,
"-m",
"pip",
"install",