pipenv-setup
pipenv-setup copied to clipboard
Git(hub) dependencies not handled correctly
Context
I have a package dependency in the form of my-repository = {git = "ssh://[email protected]/myorganization/my-repository.git",ref = "feature/my-feature"} in my Pipfile, which gets translated into an install_requires dependency in the form of git+ssh://[email protected]/myorganization/my-repository.git@f2b9a9874d9d112a55ed963e82bdfb2a552a224e#egg=my-repository.
Problem
Trying to install from setup.py produces Invalid requirement, parse error at "'+ssh://g'".
Solution
my-repository @ git+ssh://[email protected]/myorganization/my-repository.git@f2b9a9874d9d112a55ed963e82bdfb2a552a224e#egg=my-repository as found here.
This will get fixed in a later version soon
update: implemented in the deprecate-dependency-links branch. Adding/refactoring tests and adding support for the $ pipenv-setup check command.
pipenv-setup will bump the major version and use the new PEP standards of adding vcs packages in install_requires by default. While a new flag --process-dependency-links can be used to restore the old behavior.
@Madoshakalaka does this fix released at the PyPI?
update: implemented in the deprecate-dependency-links branch. Adding/refactoring tests and adding support for the
$ pipenv-setup checkcommand.pipenv-setup will bump the major version and use the new PEP standards of adding vcs packages in
install_requiresby default. While a new flag--process-dependency-linkscan be used to restore the old behavior.
@Madoshakalaka Will the branch deprecate-dependency-links be merged into master soon?
@thiras @misharigot expect an update this week, thanks for the patience!!
Some update: I was busy dealing with other backlogged pull requests.
3.1.1 with some function-breaking bug fix and a new check --lockfile feature is just published.
I'll publish this fix in one or two more days
@Madoshakalaka Is there any update on when this will be part of a new release? We're interested in implementing this tool as part of our development workflow but need the Git support to be working for this.
I tried installing from the deprecate-dependency-links branch as suggested, but it looks like there isn't support for check yet (still gives vcs package 'some-git-package' in pipfile but not in dependency_links).
I also found that it was truncating some of the #egg values (but not all). Here's an example:
This entry in the Pipfile...
[packages]
tdr-core = {editable = true, git = "git+ssh://[email protected]/some-org/tdr-core.git", ref = "some-branch"}
...gets written as this in setup.py (note #egg=tdr-cor instead of #egg=tdr-core).
install_requires=[
"tdr-core @ git+ssh://[email protected]/some-org/tdr-core.git@some-branch#egg=tdr-cor"
],
Hey, is there an update on this issue?
Hey, can fix this issue on master branch and release a new version?thx