-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pip requires the "-e" option to install from a scheme that starts with "git+git@" #2994
Comments
+1 |
1 similar comment
+1 |
isnt it ssh+git? |
whops, the other way around |
+1 |
1 similar comment
+1 |
Well the valid url: I'd be more in favor of dropping support of the unholy, pip-specific |
@xavfernandez minus the |
I understand that, I just find it strange we needed to invent our own url like syntax.
cc @rbtcollins @dstufft whether this needs to be added to PEP508 (For the record, I'd be in favor of dropping it) |
git+git@github.com: is not a URL - its an ssh style host reference, not a URL/URI.. https://www.ietf.org/proceedings/59/I-D/draft-ietf-secsh-scp-sftp-ssh-uri-01.txt covers ssh uri's, though its only a draft, and http://www.iana.org/assignments/uri-schemes/prov/git covers git:// urls - dropping support for the host reference stuff from pip is entirely appropriate. |
@dstufft @pfmoore @xavfernandez @rbtcollins Thoughts on this? I'm in favour of deprecating and then dropping support for |
It's actually the same problem with Here's what I get: # git+git doesn't work:
pip install git+git@github.com:shelldweller/etlite.git#egg=etlite
Invalid requirement: 'git+git@github.com:shelldweller/etlite.git#egg=etlite'
It looks like a path. File 'git+git@github.com:shelldweller/etlite.git#egg=etlite' does not exist.
# neither does git+ssh:
pip install git+ssh@github.com:shelldweller/etlite.git#egg=etlite
Invalid requirement: 'git+ssh@github.com:shelldweller/etlite.git#egg=etlite'
It looks like a path. File 'git+ssh@github.com:shelldweller/etlite.git#egg=etlite' does not exist.
# But git+https does:
pip install git+https://github.com/shelldweller/etlite.git
Collecting git+https://github.com/shelldweller/etlite.git
...
# And so does "editable" mode:
pip install -e git+git@github.com:shelldweller/etlite.git#egg=etlite
Obtaining etlite from git+git@github.com:shelldweller/etlite.git#egg=etlite
Cloning git@github.com:shelldweller/etlite.git to ./.venv/src/etlite
... Additionally on Windows, non-editable mode is broken in a different way: pip install git+git@github.com:shelldweller/etlite.git#egg=etlite
Invalid requirement: 'git+git@github.com:shelldweller/etlite.git#egg=etlite'
= is not a valid operator. Did you mean == ?
# but in editable mode it's fine:
install -e git+git@github.com:shelldweller/etlite.git#egg=etlite
Obtaining etlite from git+git@github.com:shelldweller/etlite.git#egg=etlite
Cloning git@github.com:shelldweller/etlite.git
... All examples are reproduced with |
What you want is |
Um... I was saying that |
The documentation might be clearer but from https://pip.pypa.io/en/latest/reference/pip_install/#git: |
I see. Thanks @xavfernandez. The confusion (at least for me) comes from the differences in URL format: |
Closing as we propose to remove the |
Looks like it's not recognized and passed further into pkg_resources:
The text was updated successfully, but these errors were encountered: