Skip to content

Commit deb1ce1

Browse files
authored
pipx install --editable: fix regression (#323)
* Put --no-dependencies first in pip args in `install_package_no_deps()` in `venv.py`. * Move --editable to last in `get_pip_args()` in `main.py`.
1 parent 313bb54 commit deb1ce1

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

docs/changelog.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
dev
2+
3+
- [bugfix] fix regression that caused installing with --editable flag to fail package name determination.
4+
15
0.15.1.0
26

37
- Add Python 3.8 to PyPI classifier and travis test matrix

src/pipx/main.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,11 +102,13 @@ def get_pip_args(parsed_args: Dict) -> List[str]:
102102
if parsed_args.get("index_url"):
103103
pip_args += ["--index-url", parsed_args["index_url"]]
104104

105-
if parsed_args.get("editable"):
106-
pip_args += ["--editable"]
107-
108105
if parsed_args.get("pip_args"):
109106
pip_args += shlex.split(parsed_args.get("pip_args", ""))
107+
108+
# make sure --editable is last because it needs to be right before
109+
# package specification
110+
if parsed_args.get("editable"):
111+
pip_args += ["--editable"]
110112
return pip_args
111113

112114

src/pipx/venv.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ def install_package_no_deps(self, package_or_url: str, pip_args: List[str]) -> s
216216
f"determining package name from {package_or_url!r}", self.do_animation
217217
):
218218
old_package_set = self.list_installed_packages()
219-
cmd = ["install"] + pip_args + ["--no-dependencies"] + [package_or_url]
219+
cmd = ["install"] + ["--no-dependencies"] + pip_args + [package_or_url]
220220
self._run_pip(cmd)
221221
except PipxError as e:
222222
logging.info(e)

0 commit comments

Comments
 (0)