-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Weird issues when depending on github package #571
Comments
Don't depend on pipenv in your project — it's not a library, it's a cli application. Setup.py's and Pipfiles are not meant to be mixed. |
tl;dr: Don't do this. |
Specify your requirements normally, as shown here |
tl;dr: your setup.py is broken. setup.py should not import pipenv. that's horrible practice. and if it did, then pipenv should be in |
Also, this setup would result in your repo requiring many many specific versions of many libraries, which is also not a good practice for sdists/wheels. |
I've sent a PR to your project, cleaning up the setup.py file. |
Thanks for the input! Regarding the pipenv-dependency, it's probably a relic left behind from when I was pulling my hair over the issues I've been having. When it comes to the setup.py and Pipfile combination, I wanted to avoid specifying my dependencies in two different places as that seems to defeat the purpose of dependency tracking all together? The idea to import pipenv in the setup.py and do what I did actually came from a tip from one of this projects collaborators: https://github.com/kennethreitz/pipenv/issues/209, so it's not something of my own device. I don't see anything in your comments regarding the underscores in my dependency being replaced with dashes. Is that as espected? And if so; how do I avoid it? Thanks for the PR! I'll revert to using duplicate dependencies, even though it's probably something that should be looked at further? |
Setup.py is for specifying package dependencies, Pipfile/lock is for managing application dependencies. They are two very different tools for two very different jobs. |
e.g. a pipfile in that repo is for reproducing a dev environment, the setup.py is for installing the package itself. |
Merged your PR. Problem still exists. ➜ dizin git:(master) ✗ rm -rf [removed]/.local/share/virtualenvs/dizin-iLyeLnTE
➜ dizin git:(master) ✗ rm Pipfile.lock
➜ dizin git:(master) ✗ pipenv install
Creating a virtualenv for this project...
⠋New python executable in [removed]/.local/share/virtualenvs/dizin-iLyeLnTE/bin/python
Installing setuptools, pip, wheel...done.
Virtualenv location: [removed]/.local/share/virtualenvs/dizin-iLyeLnTE
No package provided, installing all dependencies.
Pipfile found at [removed]/Repos/dizin/Pipfile. Considering this to be the project home.
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Updated Pipfile.lock!
Installing dependencies from Pipfile.lock...
[================================] 28/28 - 00:00:21
To activate this project's virtualenv, run the following:
$ pipenv shell
➜ dizin git:(master) ✗ ./run_locally.sh
Traceback (most recent call last):
File "run.py", line 11, in <module>
from everest_util.entities.application import Application
File "[removed]/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages/everest_util/entities/application.py", line 11, in <module>
import yaml
ImportError: No module named yaml
➜ dizin git:(master) ✗ |
To further test I used virtualenv and pip to run the same installation, which worked just fine. So there's obviously some difference between between running those two and using pipenv and a PIpfile. ➜ dizin git:(master) ✗ virtualenv env
New python executable in [removed]/Repos/dizin/env/bin/python
Installing setuptools, pip, wheel...done.
➜ dizin git:(master) ✗ cd env
➜ env git:(master) ✗ source bin/activate
(env) ➜ env git:(master) ✗ pip install -e git+https://www.github.com/KTH/everest_util.git#egg=everest_util
Obtaining everest_util from git+https://www.github.com/KTH/everest_util.git#egg=everest_util
Cloning https://www.github.com/KTH/everest_util.git to ./src/everest-util
Requirement already satisfied: flask in ./lib/python2.7/site-packages (from everest_util)
Requirement already satisfied: requests in ./lib/python2.7/site-packages (from everest_util)
Requirement already satisfied: coloredlogs in ./lib/python2.7/site-packages (from everest_util)
Collecting pyyaml (from everest_util)
Requirement already satisfied: click>=2.0 in ./lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: Jinja2>=2.4 in ./lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: Werkzeug>=0.7 in ./lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: itsdangerous>=0.21 in ./lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: humanfriendly>=2.1 in ./lib/python2.7/site-packages (from coloredlogs->everest_util)
Requirement already satisfied: MarkupSafe>=0.23 in ./lib/python2.7/site-packages (from Jinja2>=2.4->flask->everest_util)
Requirement already satisfied: monotonic; python_version == "2.6" or python_version == "2.7" or python_version == "3.0" or python_version == "3.1" or python_version == "3.2" in ./lib/python2.7/site-packages (from humanfriendly>=2.1->coloredlogs->everest_util)
Installing collected packages: pyyaml, everest-util
Running setup.py develop for everest-util
Successfully installed everest-util pyyaml-3.12
(env) ➜ env git:(master) ✗ python ../run.py
2017-09-18 09:21:13 modules.log INFO Log level set to "INFO"
2017-09-18 09:21:13 __main__ INFO Starting application
2017-09-18 09:21:18 werkzeug INFO * Running on http://0.0.0.0:3010/ (Press CTRL+C to quit) |
I've looked at the source for pipenv and found the culprit for the underscore-to-dash rewriting here: https://github.com/kennethreitz/pipenv/blob/master/pipenv/utils.py#L375. This references PEP 423, which in turn references PEP 8 (https://www.python.org/dev/peps/pep-0423/#follow-pep-8-for-syntax-of-package-and-module-names). And if we look at PEP 8 it states that So why the removal of underscores in the package name? |
I don't think that's what's happening here. |
|
We won't resolve it's dependencies, though. |
Uh, I'm not sure I'm following. Care to elaborate on whats happening with the pyyaml dependency and the replacing of characters in the package name? |
What do you mean by this?
|
we just added support for this! |
I'm sorry to come off blunt, but you're not making much sense. Two issues:
This issue is still closed, but these two items of concern have imho not been addressed. |
editable must be true |
|
documented this here: http://docs.pipenv.org/en/latest/advanced.html#a-note-about-vcs-dependencies |
Works! Thanks dude. |
sorry for the confusion :) |
Np! But I might have spoke too soon: ➜ dizin git:(master) ✗ rm -rf /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE
➜ dizin git:(master) ✗ rm Pipfile.lock
➜ dizin git:(master) ✗ pipenv install
Creating a virtualenv for this project...
⠋New python executable in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/bin/python
Installing setuptools, pip, wheel...done.
Virtualenv location: /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE
No package provided, installing all dependencies.
Pipfile found at /Users/tinglev/Repos/dizin/Pipfile. Considering this to be the project home.
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Updated Pipfile.lock!
Installing dependencies from Pipfile.lock...
[================================] 17/17 - 00:00:12
To activate this project's virtualenv, run the following:
$ pipenv shell
➜ dizin git:(master) ✗ ./run_locally.sh
Traceback (most recent call last):
File "run.py", line 11, in <module>
from everest_util.entities.application import Application
File "/Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/src/everest-util/everest_util/entities/application.py", line 11, in <module>
import yaml
ImportError: No module named yaml
➜ dizin git:(master) ✗ And the Pipfile: [[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
[dev-packages]
mock = "*"
green = "*"
coverage = "*"
[packages]
flask = "*"
requests = "*"
coloredlogs = "*"
pydocumentdb = "*"
[packages.everest_util]
git = "https://www.github.com/kth/everest_util.git"
ref = "1.1"
editable = true |
The entry in Pipfile.lock looks like this: "everest-util": {
"editable": true,
"git": "https://www.github.com/kth/everest_util.git",
"ref": "1.1"
}, Besides from the underscore in the top package name (and not in the git url) being replaced with a dash, it seems fine I guess? |
Bypassing the Pipefile still seems to work (as before): ➜ dizin git:(master) ✗ pipenv install -e 'git+https://www.github.com/KTH/everest_util.git@1.1#egg=everest_util'
Installing -e git+https://www.github.com/KTH/everest_util.git@1.1#egg=everest_util...
Obtaining everest_util from git+https://www.github.com/KTH/everest_util.git@1.1#egg=everest_util
Cloning https://www.github.com/KTH/everest_util.git (to 1.1) to /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/src/everest-util
Requirement already satisfied: flask in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from everest_util)
Requirement already satisfied: requests in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from everest_util)
Requirement already satisfied: coloredlogs in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from everest_util)
Collecting pyyaml (from everest_util)
Requirement already satisfied: click>=2.0 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: Jinja2>=2.4 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: Werkzeug>=0.7 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: itsdangerous>=0.21 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from flask->everest_util)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from requests->everest_util)
Requirement already satisfied: certifi>=2017.4.17 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from requests->everest_util)
Requirement already satisfied: urllib3<1.23,>=1.21.1 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from requests->everest_util)
Requirement already satisfied: idna<2.7,>=2.5 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from requests->everest_util)
Requirement already satisfied: humanfriendly>=3.2 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from coloredlogs->everest_util)
Requirement already satisfied: MarkupSafe>=0.23 in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from Jinja2>=2.4->flask->everest_util)
Requirement already satisfied: monotonic; python_version == "2.6" or python_version == "2.7" or python_version == "3.0" or python_version == "3.1" or python_version == "3.2" in /Users/tinglev/.local/share/virtualenvs/dizin-iLyeLnTE/lib/python2.7/site-packages (from humanfriendly>=3.2->coloredlogs->everest_util)
Installing collected packages: pyyaml, everest-util
Found existing installation: everest-util 1.1
Uninstalling everest-util-1.1:
Successfully uninstalled everest-util-1.1
Running setup.py develop for everest-util
Successfully installed everest-util pyyaml-3.12
Adding -e git+https://www.github.com/KTH/everest_util.git@1.1#egg=everest_util to Pipfile's [packages]...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Updated Pipfile.lock!
➜ dizin git:(master) ✗ ./run_locally.sh
2017-09-25 10:06:11 modules.log INFO Log level set to "DEBUG"
2017-09-25 10:06:11 __main__ INFO Starting application
2017-09-25 10:06:11 __main__ WARNING Dizin is running in dry run mode. No actual integrations will be run.
2017-09-25 10:06:11 werkzeug INFO * Running on http://0.0.0.0:3010/ (Press CTRL+C to quit) |
Maybe open this since it's not resolved and the discussion is ongoing? |
Let's see your |
Pipfile: [[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
[dev-packages]
mock = "*"
green = "*"
coverage = "*"
[packages]
flask = "*"
requests = "*"
coloredlogs = "*"
pydocumentdb = "*"
[packages.everest_util]
ref = "1.1"
git = "https://www.github.com/kth/everest_util.git"
editable = true Pipfile.lock: {
"_meta": {
"hash": {
"sha256": "8948464283bd454ebac90fc075e7518552a1cfacab550d9f7fd68a2aca714317"
},
"host-environment-markers": {
"implementation_name": "cpython",
"implementation_version": "0",
"os_name": "posix",
"platform_machine": "x86_64",
"platform_python_implementation": "CPython",
"platform_release": "16.7.0",
"platform_system": "Darwin",
"platform_version": "Darwin Kernel Version 16.7.0: Thu Jun 15 17:36:27 PDT 2017; root:xnu-3789.70.16~2/RELEASE_X86_64",
"python_full_version": "2.7.13",
"python_version": "2.7",
"sys_platform": "darwin"
},
"pipfile-spec": 3,
"requires": {},
"sources": [
{
"url": "https://pypi.python.org/simple",
"verify_ssl": true
}
]
},
"default": {
"certifi": {
"hashes": [
"sha256:54a07c09c586b0e4c619f02a5e94e36619da8e2b053e20f594348c0611803704",
"sha256:40523d2efb60523e113b44602298f0960e900388cf3bb6043f645cf57ea9e3f5"
],
"version": "==2017.7.27.1"
},
"chardet": {
"hashes": [
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691",
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"
],
"version": "==3.0.4"
},
"click": {
"hashes": [
"sha256:29f99fc6125fbc931b758dc053b3114e55c77a6e4c6c3a2674a2dc986016381d",
"sha256:f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b"
],
"version": "==6.7"
},
"coloredlogs": {
"hashes": [
"sha256:537f898c9b22bc1d50c7c159a289020f3418c1b06a4a43bbb74910e46bbf3c18",
"sha256:894641ed5e8c48e01fa0b1d62b15cd32030c6c16e1dda42f6ce5f966ac558cae"
],
"version": "==7.3"
},
"everest-util": {
"editable": true,
"git": "https://www.github.com/kth/everest_util.git",
"ref": "1.1"
},
"flask": {
"hashes": [
"sha256:0749df235e3ff61ac108f69ac178c9770caeaccad2509cb762ce1f65570a8856",
"sha256:49f44461237b69ecd901cc7ce66feea0319b9158743dd27a2899962ab214dac1"
],
"version": "==0.12.2"
},
"humanfriendly": {
"hashes": [
"sha256:43a43575cc5c1506a50fb5a536757aa0c2ae94c0ec10572b368510c878fdc0b9",
"sha256:f1ebb406d37478228b92543c12c27c9a827782d8d241260b3a06512c7f7c3a5e"
],
"version": "==4.4.1"
},
"idna": {
"hashes": [
"sha256:8c7309c718f94b3a625cb648ace320157ad16ff131ae0af362c9f21b80ef6ec4",
"sha256:2c6a5de3089009e3da7c5dde64a141dbc8551d5b7f6cf4ed7c2568d0cc520a8f"
],
"version": "==2.6"
},
"itsdangerous": {
"hashes": [
"sha256:cbb3fcf8d3e33df861709ecaf89d9e6629cff0a217bc2848f1b41cd30d360519"
],
"version": "==0.24"
},
"jinja2": {
"hashes": [
"sha256:2231bace0dfd8d2bf1e5d7e41239c06c9e0ded46e70cc1094a0aa64b0afeb054",
"sha256:ddaa01a212cd6d641401cb01b605f4a4d9f37bfc93043d7f760ec70fb99ff9ff"
],
"version": "==2.9.6"
},
"markupsafe": {
"hashes": [
"sha256:a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"
],
"version": "==1.0"
},
"monotonic": {
"hashes": [
"sha256:a8c7690953546c6bc8a4f05d347718db50de1225b29f4b9f346c0c6f19bdc286",
"sha256:2b469e2d7dd403f7f7f79227fe5ad551ee1e76f8bb300ae935209884b93c7c1b"
],
"version": "==1.3"
},
"pydocumentdb": {
"hashes": [
"sha256:e2caef6f001eec0e1ff09a6b6cf0925e3b20eae277f54166979b577a5b7ed62c",
"sha256:41a2c8becd2cb824433cebc0e955a96e84470e3bbd53474838002c90e9a1de71"
],
"version": "==2.2.0"
},
"requests": {
"hashes": [
"sha256:6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b",
"sha256:9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"
],
"version": "==2.18.4"
},
"six": {
"hashes": [
"sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb",
"sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"
],
"version": "==1.11.0"
},
"urllib3": {
"hashes": [
"sha256:06330f386d6e4b195fbfc736b297f58c5a892e4440e54d294d7004e3a9bbea1b",
"sha256:cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"
],
"version": "==1.22"
},
"werkzeug": {
"hashes": [
"sha256:e8549c143af3ce6559699a01e26fa4174f4c591dbee0a499f3cd4c3781cdec3d",
"sha256:903a7b87b74635244548b30d30db4c8947fe64c5198f58899ddcd3a13c23bb26"
],
"version": "==0.12.2"
}
},
"develop": {
"backports.shutil-get-terminal-size": {
"hashes": [
"sha256:0975ba55054c15e346944b38956a4c9cbee9009391e41b86c68990effb8c1f64",
"sha256:713e7a8228ae80341c70586d1cc0a8caa5207346927e23d09dcbcaf18eadec80"
],
"version": "==1.0.0"
},
"colorama": {
"hashes": [
"sha256:463f8483208e921368c9f306094eb6f725c6ca42b0f97e313cb5d5512459feda",
"sha256:48eb22f4f8461b1df5734a074b57042430fb06e1d61bd1e11b078c0fe6d7a1f1"
],
"version": "==0.3.9"
},
"coverage": {
"hashes": [
"sha256:c1456f66c536010cf9e4633a8853a9153e8fd588393695295afd4d0fc16c1d74",
"sha256:97a7ec51cdde3a386e390b159b20f247ccb478084d925c75f1faa3d26c01335e",
"sha256:83e955b975666b5a07d217135e7797857ce844eb340a99e46cc25525120417c4",
"sha256:483ed14080c5301048128bb027b77978c632dd9e92e3ecb09b7e28f5b92abfcf",
"sha256:ef574ab9640bcfa2f3c671831faf03f65788945fdf8efa4d4a1fffc034838e2a",
"sha256:c5a205b4da3c624f5119dc4d84240789b5906bb8468902ec22dcc4aad8aa4638",
"sha256:5dea90ed140e7fa9bc00463313f9bc4a6e6aff297b4969615e7a688615c4c4d2",
"sha256:f9e83b39d29c2815a38e4118d776b482d4082b5bf9c9147fbc99a3f83abe480a",
"sha256:700040c354f0230287906b1276635552a3def4b646e0145555bc9e2e5da9e365",
"sha256:7f1eacae700c66c3d7362a433b228599c9d94a5a3a52613dddd9474e04deb6bc",
"sha256:13ef9f799c8fb45c446a239df68034de3a6f3de274881b088bebd7f5661f79f8",
"sha256:dfb011587e2b7299112f08a2a60d2601706aac9abde37aa1177ea825adaed923",
"sha256:381be5d31d3f0d912334cf2c159bc7bea6bfe6b0e3df6061a3bf2bf88359b1f6",
"sha256:83a477ac4f55a6ef59552683a0544d47b68a85ce6a80fd0ca6b3dc767f6495fb",
"sha256:dfd35f1979da31bcabbe27bcf78d4284d69870731874af629082590023a77336",
"sha256:9681efc2d310cfc53863cc6f63e88ebe7a48124550fa822147996cb09390b6ab",
"sha256:53770b20ac5b4a12e99229d4bae57af0945be87cc257fce6c6c7571a39f0c5d4",
"sha256:8801880d32f11b6df11c32a961e186774b4634ae39d7c43235f5a24368a85f07",
"sha256:16db2c69a1acbcb3c13211e9f954e22b22a729909d81f983b6b9badacc466eda",
"sha256:ef43a06a960b46c73c018704051e023ee6082030f145841ffafc8728039d5a88",
"sha256:c3e2736664a6074fc9bd54fb643f5af0fc60bfedb2963b3d3f98c7450335e34c",
"sha256:17709e22e4c9f5412ba90f446fb13b245cc20bf4a60377021bbff6c0f1f63e7c",
"sha256:a2f7106d1167825c4115794c2ba57cc3b15feb6183db5328fa66f94c12902d8b",
"sha256:2a08e978f402696c6956eee9d1b7e95d3ad042959b71bafe1f3e4557cbd6e0ac",
"sha256:57f510bb16efaec0b6f371b64a8000c62e7e3b3e48e8b0a5745ade078d849814",
"sha256:0f1883eab9c19aa243f51308751b8a2a547b9b817b721cc0ecf3efb99fafbea7",
"sha256:e00fe141e22ce6e9395aa24d862039eb180c6b7e89df0bbaf9765e9aebe560a9",
"sha256:ec596e4401553caa6dd2e3349ce47f9ef82c1f1bcba5d8ac3342724f0df8d6ff",
"sha256:c820a533a943ebc860acc0ce6a00dd36e0fdf2c6f619ff8225755169428c5fa2",
"sha256:b7f7283eb7badd2b8a9c6a9d6eeca200a0a24db6be79baee2c11398f978edcaa",
"sha256:a5ed27ad3e8420b2d6b625dcbd3e59488c14ccc06030167bcf14ffb0f4189b77",
"sha256:d7b70b7b4eb14d0753d33253fe4f121ca99102612e2719f0993607deb30c6f33",
"sha256:4047dc83773869701bde934fb3c4792648eda7c0e008a77a0aec64157d246801",
"sha256:7a9c44400ee0f3b4546066e0710e1250fd75831adc02ab99dda176ad8726f424",
"sha256:0f649e68db74b1b5b8ca4161d08eb2b8fa8ae11af1ebfb80e80e112eb0ef5300",
"sha256:52964fae0fafef8bd283ad8e9a9665205a9fdf912535434defc0ec3def1da26b",
"sha256:36aa6c8db83bc27346ddcd8c2a60846a7178ecd702672689d3ea1828eb1a4d11",
"sha256:9824e15b387d331c0fc0fef905a539ab69784368a1d6ac3db864b4182e520948",
"sha256:4a678e1b9619a29c51301af61ab84122e2f8cc7a0a6b40854b808ac6be604300",
"sha256:8bb7c8dca54109b61013bc4114d96effbf10dea136722c586bce3a5d9fc4e730",
"sha256:1a41d621aa9b6ab6457b557a754d50aaff0813fad3453434de075496fca8a183",
"sha256:0fa423599fc3d9e18177f913552cdb34a8d9ad33efcf52a98c9d4b644edb42c5",
"sha256:e61a4ba0b2686040cb4828297c7e37bcaf3a1a1c0bc0dbe46cc789dde51a80fa",
"sha256:ce9ef0fc99d11d418662e36fd8de6d71b19ec87c2eab961a117cc9d087576e72"
],
"version": "==4.4.1"
},
"funcsigs": {
"hashes": [
"sha256:330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca",
"sha256:a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50"
],
"version": "==1.0.2"
},
"green": {
"hashes": [
"sha256:0a64e7372079f57643e26e220d1d8ccecb26ba6416963d61e2ec20d2990eda98"
],
"version": "==2.11.0"
},
"mock": {
"hashes": [
"sha256:5ce3c71c5545b472da17b72268978914d0252980348636840bd34a00b5cc96c1",
"sha256:b158b6df76edd239b8208d481dc46b6afd45a846b7812ff0ce58971cf5bc8bba"
],
"version": "==2.0.0"
},
"pbr": {
"hashes": [
"sha256:60c25b7dfd054ef9bb0ae327af949dd4676aa09ac3a9471cdc871d8a9213f9ac",
"sha256:05f61c71aaefc02d8e37c0a3eeb9815ff526ea28b3b76324769e6158d7f95be1"
],
"version": "==3.1.1"
},
"python-termstyle": {
"hashes": [
"sha256:f42a6bb16fbfc5e2c66d553e7ad46524ea833872f75ee5d827c15115fafc94e2",
"sha256:6faf42ba42f2826c38cf70dacb3ac51f248a418e48afc0e36593df11cf3ab1d2"
],
"version": "==0.1.10"
},
"six": {
"hashes": [
"sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb",
"sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"
],
"version": "==1.11.0"
},
"unidecode": {
"hashes": [
"sha256:61f807220eda0203a774a09f84b4304a3f93b5944110cc132af29ddb81366883",
"sha256:280a6ab88e1f2eb5af79edff450021a0d3f0448952847cd79677e55e58bad051"
],
"version": "==0.4.21"
}
}
} |
Still an issue - should probably be opened again. |
Yep, I can confirm this is still broken. Something weird is going on though. I've got --verbose logs showing that |
@nateprewitt is this still broken in v8.3.0? |
@erinxocon as far as I can tell no one has added a patch for this. |
@nateprewitt @jotunskij I am having some problems reproducing this in v8.3.1. With the following Pipfile:
I get the associated Pipfile.lock:
When I run It appears my project can see all the packages installed from the lock file. |
The issue seems to present itself when importing a file in the everes_util package that imports yaml. I made this small test program with which I am able to reproduce the error with your Pipfile:
Then And the error:
|
Thanks @jotunskij for the sample app. This will aid my testing! |
I just did a |
What version were you coming from @jotunskij? |
We have had some changes in the dependency resolution sort of recently.. |
I'm actually not sure what version I was on (any clever pip command you know of that shows installation history?), but probably the latest one when I opened this issue - so 7.2ish according to the release page here on github? Thanks för the help @erinxocon! |
TL;DR at the bottom.
I have written a small library running pipenv which can be found at https://github.com/kth/everest_util, with a setup.py that looks like this:
In another project I then depend on this package with the following PIpfile:
And no errors are given when running
pipenv install
:So far so good. But if I attempt to run the application (
pipenv run python run.py
) I get the following error:So, the pyyaml dependency for everest_util clearly didn't get installed. Running ls on the virtualenv /bin directory seems to confirm this (and that all the other dependencies of everest_util got installed):
So this is the first problem that I'm having. The second part - the weird one - comes next.
Let's try to install the everest_util through the pipenv CLI and not the Pipfile:
So, now all of a sudden the pyyaml dependency got installed. Let's see if the application works.
Sure does. Let's see what our Pipfile looks like now:
Seems ok. But look carefully at the everest_util name. The underscores have been replaced with dashes. Let's try to run
pipenv install
again after removing our virtualenv and Pipfile.lock:TL;DR: All dependencies from package residing on github are not getting installed when using Pipfile, but are installed when using the pipenv CLI. Doing this rewrites the url to the package in the Pipfile making it so that reinstallation is not possible.
The text was updated successfully, but these errors were encountered: