Skip to content

Commit

Permalink
Fix --target not working with --editable as setup.py develop does not…
Browse files Browse the repository at this point in the history
… understand --home but instead requires the --install-dir option.

Parially fixes pypa#4390
  • Loading branch information
dwt committed Feb 20, 2021
1 parent 8f1bd0e commit 9485c4e
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/pip/_internal/utils/setuptools_build.py
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,8 @@ def make_setuptools_develop_args(
if prefix:
args += ["--prefix", prefix]
if home is not None:
args += ["--home", home]
# args += ["--home", home]
args += ["--install-dir", home]

if use_user_site:
args += ["--user", "--prefix="]
Expand Down
22 changes: 22 additions & 0 deletions tests/functional/test_install.py
Original file line number Diff line number Diff line change
Expand Up @@ -1059,6 +1059,28 @@ def test_install_editable_with_prefix(script):
result.did_create(install_path)


@pytest.mark.network
def test_install_editable_with_target(script):
pkg_path = script.scratch_path / 'pkg'
pkg_path.mkdir()
pkg_path.joinpath("setup.py").write_text(textwrap.dedent("""
from setuptools import setup
setup(
name='pkg',
install_requires=['watching_testrunner']
)
"""))

target = script.scratch_path / 'target'
target.mkdir()
result = script.pip(
'install', '--editable', pkg_path, '--target', target
)

result.did_create(script.scratch / 'target' / 'pkg.egg-link')
result.did_create(script.scratch / 'target' / 'watching_testrunner.py')


def test_install_package_conflict_prefix_and_user(script, data):
"""
Test installing a package using pip install --prefix --user errors out
Expand Down

0 comments on commit 9485c4e

Please sign in to comment.