Closed jugmac00 closed 3 years ago
If '-e .' is passed to pip install as a single argument it fails:
$ pip install '-e .'
ERROR: . is not a valid editable requirement. It should either be a path to a local project or a VCS URL (beginning with bzr+http, bzr+https, bzr+ssh, bzr+sftp, bzr+ftp, bzr+lp, bzr+file, git+http, git+https, git+ssh, git+git, git+file, hg+file, hg+http, hg+https, hg+ssh, hg+static-http, svn+ssh, svn+http, svn+https, svn+svn, svn+file).
'-e.' (note: no space in between) works fine:
$ pip install '-e.'
Obtaining file:///home/user/hello-tox
Installing build dependencies ... done
Getting requirements to build wheel ... done
Installing backend dependencies ... done
Preparing wheel metadata ... done
Installing collected packages: UNKNOWN
Running setup.py develop for UNKNOWN
Successfully installed UNKNOWN
Passing -e and . as separate arguments also works:
$ pip install -e .
Obtaining file:///home/user/hello-tox
Installing build dependencies ... done
Getting requirements to build wheel ... done
Installing backend dependencies ... done
Preparing wheel metadata ... done
Installing collected packages: UNKNOWN
Running setup.py develop for UNKNOWN
Successfully installed UNKNOWN
tox3 works around that by turning '-e .' into '-e.'
This is the downside of rewrites. This bug have already been fixed once. Now we have to fix it again. https://github.com/tox-dev/tox/blob/32e74a804635ba790deef706b57c10f8219de1db/src/tox/config/__init__.py#L177-L187
This is the downside of rewrites. This bug have already been fixed once. Now we have to fix it again.
It's a trade-off, on one end some old bugs might creep in, but on the upside, the codebase will be in a better place after it. No need to lament over this. For example, here I think tox 3 solution is incorrect, we should turn this into Passing -e and . as separate arguments
.
This has been fixed by #1991 - thanks a lot, @gaborbernat!
repo https://github.com/plone/plone.autoinclude
tox3 works
This should be the problem: