-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Pipenv universally removes --no-deps option to pip installs when VCS Dependancies are used #3763
Copy link
Copy link
Closed
Labels
Category: CLIIssue relates to the CLIIssue relates to the CLICategory: Dependency ResolutionIssue relates to dependency resolution.Issue relates to dependency resolution.PR: mergedThe PR related to this issue has been merged.The PR related to this issue has been merged.Priority: LowThis item is low priority and may not be looked at in the next few release cycles.This item is low priority and may not be looked at in the next few release cycles.Type: Enhancement 💡This is a feature or enhancement request.This is a feature or enhancement request.
Metadata
Metadata
Assignees
Labels
Category: CLIIssue relates to the CLIIssue relates to the CLICategory: Dependency ResolutionIssue relates to dependency resolution.Issue relates to dependency resolution.PR: mergedThe PR related to this issue has been merged.The PR related to this issue has been merged.Priority: LowThis item is low priority and may not be looked at in the next few release cycles.This item is low priority and may not be looked at in the next few release cycles.Type: Enhancement 💡This is a feature or enhancement request.This is a feature or enhancement request.
Issue description
In reviewing #3762 for a possible workaround I observed that when VCS dependancies ARE present pip universally removes
--no-depsoption. This will cause most installs to fail due to HashError (#3762) on sub packages.Expected result
--no-depsoption should be not be universally removed unless the user specifically requests it.As reported in the logs without a VCS Dependancy
Actual result
--no-depsare added to all package installs. This fails to install the packages but also fails to report them (Pipenv does not report failed installs of packages with HashErrors when editable VCS Dependencies is used. #3762)As reported in the logs with a VCS Dependancy
Steps to replicate
Docker / Testcase demonstrating failure: https://github.com/pivotal-energy-solutions/pipenv-no-report-fail
This does nothing other than injects a modified pyenv/core.py so we can fake fix it and show the issues more clearly.
To see this bug fail simply do the following
To enable it to pass - simply modify the Pipfile by removing the VCS dependancies and rebuild.
docker-compose build --build-arg --build-arg BUILD_VERSION=0.0.2$ pipenv --support
Pipenv version:
'2018.11.26'Pipenv location:
'/usr/lib/python2.7/site-packages/pipenv'Python location:
'/usr/bin/python2'Python installations found:
2.7.5:/usr/bin/python2.7PEP 508 Information:
System environment variables:
LANGBUILD_DATEAPP_PASSWORDPIP_DISABLE_PIP_VERSION_CHECKSHLVLBUG_FIXHOSTNAMEPIPENV_VENV_IN_PROJECTLABELPYTHONFINDER_IGNORE_UNSUPPORTEDPWDPYTHONDONTWRITEBYTECODEPIP_SHIMS_BASE_MODULELC_ALLBUILD_VERSIONPATHPIP_PYTHON_PATHHOMEFIX_BUG_Pipenv–specific environment variables:
PIPENV_VENV_IN_PROJECT:1Debug–specific environment variables:
PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binLANG:en_US.UTF-8PWD:/data/app/testContents of
Pipfile('/data/app/test/Pipfile'):Contents of
Pipfile.lock('/data/app/test/Pipfile.lock'):{ "_meta": { "hash": { "sha256": "858e5cb30b22ed5fe29404dbd02afce96e356a61329fc5c895249d970e7b0970" }, "pipfile-spec": 6, "requires": { "python_version": "2.7" }, "sources": [ { "name": "pypi", "url": "https://pypi.org/simple", "verify_ssl": true } ] }, "default": { "django": { "hashes": [ "sha256:73cca1dac154e749b39cc91a54dc876109eb0512a5c6804986495305047066a5", "sha256:7ee7d93d407f082e3849c8d10da50ff5b488af37ed1b0066a22dee5f2709ed16" ], "index": "pypi", "version": "==1.11.18" }, "django-appconf": { "hashes": [ "sha256:35f13ca4d567f132b960e2cd4c832c2d03cb6543452d34e29b7ba10371ba80e3", "sha256:c98a7af40062e996b921f5962a1c4f3f0c979fa7885f7be4710cceb90ebe13a6" ], "version": "==1.0.3" }, "django-bootstrap-templatetags": { "git": "https://github.com/pivotal-energy-solutions/django-bootstrap-templatetags", "ref": "2f60b61434b6f2d38968f44422045f8da0ec9a1d" }, "django-input-collection": { "editable": true, "git": "https://github.com/pivotal-energy-solutions/django-input-collection", "ref": "4a1038f309fb9a9e27da0dbdf8d5f5d2d15df95c" }, "django-select2": { "hashes": [ "sha256:7e5a3da54332cb94174a91e0a03177ce44c152049b0876424ba81fc805dbb89f", "sha256:f93b5b626e5c0e8ced24e1e31027eb4850649216e4132cdc3f3880c0bed241c9" ], "index": "pypi", "version": "==6.3.1" }, "djangorestframework": { "hashes": [ "sha256:b6714c3e4b0f8d524f193c91ecf5f5450092c2145439ac2769711f7eba89a9d9", "sha256:c375e4f95a3a64fccac412e36fb42ba36881e52313ec021ef410b40f67cddca4" ], "index": "pypi", "version": "==3.8.2" }, "pytz": { "hashes": [ "sha256:303879e36b721603cc54604edcac9d20401bdbe31e1e4fdee5b9f98d5d31dfda", "sha256:d747dd3d23d77ef44c6a3526e274af6efeb0a6f1afd5a69ba4d5be4098c8e141" ], "version": "==2019.1" }, "six": { "hashes": [ "sha256:3350809f0555b11f552448330d0b52d5f24c91a322ea4a15ef22629740f3761c", "sha256:d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73" ], "version": "==1.12.0" }, "swapper": { "hashes": [ "sha256:bcd162c85d3906f6aabd3970e854041b4327e67d0fc96d07e234a85d96131425" ], "version": "==1.1.0" }, "unidecode": { "hashes": [ "sha256:092cdf7ad9d1052c50313426a625b717dab52f7ac58f859e09ea020953b1ad8f", "sha256:8b85354be8fd0c0e10adbf0675f6dc2310e56fda43fa8fe049123b6c475e52fb" ], "index": "pypi", "version": "==1.0.23" }, "uwsgi": { "hashes": [ "sha256:d2318235c74665a60021a4fc7770e9c2756f9fc07de7b8c22805efe85b5ab277" ], "index": "pypi", "version": "==2.0.17.1" } }, "develop": { "astroid": { "hashes": [ "sha256:87de48a92e29cedf7210ffa853d11441e7ad94cb47bacd91b023499b51cbc756", "sha256:d25869fc7f44f1d9fb7d24fd7ea0639656f5355fc3089cd1f3d18c6ec6b124c7" ], "version": "==1.6.6" }, "backports.functools-lru-cache": { "hashes": [ "sha256:9d98697f088eb1b0fa451391f91afb5e3ebde16bbdb272819fd091151fda4f1a", "sha256:f0b0e4eba956de51238e17573b7087e852dfe9854afd2e9c873f73fc0ca0a6dd" ], "markers": "python_version == '2.7'", "version": "==1.5" }, "configparser": { "hashes": [ "sha256:8be81d89d6e7b4c0d4e44bcc525845f6da25821de80cb5e06e7e0238a2899e32", "sha256:da60d0014fd8c55eb48c1c5354352e363e2d30bbf7057e5e171a468390184c75" ], "markers": "python_version == '2.7'", "version": "==3.7.4" }, "coverage": { "hashes": [ "sha256:3684fabf6b87a369017756b551cef29e505cb155ddb892a7a29277b978da88b9", "sha256:39e088da9b284f1bd17c750ac672103779f7954ce6125fd4382134ac8d152d74", "sha256:3c205bc11cc4fcc57b761c2da73b9b72a59f8d5ca89979afb0c1c6f9e53c7390", "sha256:465ce53a8c0f3a7950dfb836438442f833cf6663d407f37d8c52fe7b6e56d7e8", "sha256:48020e343fc40f72a442c8a1334284620f81295256a6b6ca6d8aa1350c763bbe", "sha256:5296fc86ab612ec12394565c500b412a43b328b3907c0d14358950d06fd83baf", "sha256:5f61bed2f7d9b6a9ab935150a6b23d7f84b8055524e7be7715b6513f3328138e", "sha256:68a43a9f9f83693ce0414d17e019daee7ab3f7113a70c79a3dd4c2f704e4d741", "sha256:6b8033d47fe22506856fe450470ccb1d8ba1ffb8463494a15cfc96392a288c09", "sha256:7ad7536066b28863e5835e8cfeaa794b7fe352d99a8cded9f43d1161be8e9fbd", "sha256:7bacb89ccf4bedb30b277e96e4cc68cd1369ca6841bde7b005191b54d3dd1034", "sha256:839dc7c36501254e14331bcb98b27002aa415e4af7ea039d9009409b9d2d5420", "sha256:8f9a95b66969cdea53ec992ecea5406c5bd99c9221f539bca1e8406b200ae98c", "sha256:932c03d2d565f75961ba1d3cec41ddde00e162c5b46d03f7423edcb807734eab", "sha256:988529edadc49039d205e0aa6ce049c5ccda4acb2d6c3c5c550c17e8c02c05ba", "sha256:998d7e73548fe395eeb294495a04d38942edb66d1fa61eb70418871bc621227e", "sha256:9de60893fb447d1e797f6bf08fdf0dbcda0c1e34c1b06c92bd3a363c0ea8c609", "sha256:9e80d45d0c7fcee54e22771db7f1b0b126fb4a6c0a2e5afa72f66827207ff2f2", "sha256:a545a3dfe5082dc8e8c3eb7f8a2cf4f2870902ff1860bd99b6198cfd1f9d1f49", "sha256:a5d8f29e5ec661143621a8f4de51adfb300d7a476224156a39a392254f70687b", "sha256:aca06bfba4759bbdb09bf52ebb15ae20268ee1f6747417837926fae990ebc41d", "sha256:bb23b7a6fd666e551a3094ab896a57809e010059540ad20acbeec03a154224ce", "sha256:bfd1d0ae7e292105f29d7deaa9d8f2916ed8553ab9d5f39ec65bcf5deadff3f9", "sha256:c62ca0a38958f541a73cf86acdab020c2091631c137bd359c4f5bddde7b75fd4", "sha256:c709d8bda72cf4cd348ccec2a4881f2c5848fd72903c185f363d361b2737f773", "sha256:c968a6aa7e0b56ecbd28531ddf439c2ec103610d3e2bf3b75b813304f8cb7723", "sha256:df785d8cb80539d0b55fd47183264b7002077859028dfe3070cf6359bf8b2d9c", "sha256:f406628ca51e0ae90ae76ea8398677a921b36f0bd71aab2099dfed08abd0322f", "sha256:f46087bbd95ebae244a0eda01a618aff11ec7a069b15a3ef8f6b520db523dcf1", "sha256:f8019c5279eb32360ca03e9fac40a12667715546eed5c5eb59eb381f2f501260", "sha256:fc5f4d209733750afd2714e9109816a29500718b32dd9a5db01c0cb3a019b96a" ], "index": "pypi", "version": "==4.5.3" }, "dodgy": { "hashes": [ "sha256:65e13cf878d7aff129f1461c13cb5fd1bb6dfe66bb5327e09379c3877763280c" ], "version": "==0.1.9" }, "enum34": { "hashes": [ "sha256:2d81cbbe0e73112bdfe6ef8576f2238f2ba27dd0d55752a776c41d38b7da2850", "sha256:644837f692e5f550741432dd3f223bbb9852018674981b1664e5dc339387588a", "sha256:6bd0f6ad48ec2aa117d3d141940d484deccda84d4fcd884f5c3d93c23ecd8c79", "sha256:8ad8c4783bf61ded74527bffb48ed9b54166685e4230386a9ed9b1279e2df5b1" ], "markers": "python_version < '3.4'", "version": "==1.1.6" }, "funcsigs": { "hashes": [ "sha256:330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca", "sha256:a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50" ], "markers": "python_version < '3.3'", "version": "==1.0.2" }, "futures": { "hashes": [ "sha256:9ec02aa7d674acb8618afb127e27fde7fc68994c0437ad759fa094a574adb265", "sha256:ec0a6cb848cc212002b9828c3e34c675e0c9ff6741dc445cab6fdd4e1085d1f1" ], "markers": "python_version < '3.2'", "version": "==3.2.0" }, "isort": { "hashes": [ "sha256:c40744b6bc5162bbb39c1257fe298b7a393861d50978b565f3ccd9cb9de0182a", "sha256:f57abacd059dc3bd666258d1efb0377510a89777fda3e3274e3c01f7c03ae22d" ], "version": "==4.3.20" }, "lazy-object-proxy": { "hashes": [ "sha256:159a745e61422217881c4de71f9eafd9d703b93af95618635849fe469a283661", "sha256:23f63c0821cc96a23332e45dfaa83266feff8adc72b9bcaef86c202af765244f", "sha256:3b11be575475db2e8a6e11215f5aa95b9ec14de658628776e10d96fa0b4dac13", "sha256:3f447aff8bc61ca8b42b73304f6a44fa0d915487de144652816f950a3f1ab821", "sha256:4ba73f6089cd9b9478bc0a4fa807b47dbdb8fad1d8f31a0f0a5dbf26a4527a71", "sha256:4f53eadd9932055eac465bd3ca1bd610e4d7141e1278012bd1f28646aebc1d0e", "sha256:64483bd7154580158ea90de5b8e5e6fc29a16a9b4db24f10193f0c1ae3f9d1ea", "sha256:6f72d42b0d04bfee2397aa1862262654b56922c20a9bb66bb76b6f0e5e4f9229", "sha256:7c7f1ec07b227bdc561299fa2328e85000f90179a2f44ea30579d38e037cb3d4", "sha256:7c8b1ba1e15c10b13cad4171cfa77f5bb5ec2580abc5a353907780805ebe158e", "sha256:8559b94b823f85342e10d3d9ca4ba5478168e1ac5658a8a2f18c991ba9c52c20", "sha256:a262c7dfb046f00e12a2bdd1bafaed2408114a89ac414b0af8755c696eb3fc16", "sha256:acce4e3267610c4fdb6632b3886fe3f2f7dd641158a843cf6b6a68e4ce81477b", "sha256:be089bb6b83fac7f29d357b2dc4cf2b8eb8d98fe9d9ff89f9ea6012970a853c7", "sha256:bfab710d859c779f273cc48fb86af38d6e9210f38287df0069a63e40b45a2f5c", "sha256:c10d29019927301d524a22ced72706380de7cfc50f767217485a912b4c8bd82a", "sha256:dd6e2b598849b3d7aee2295ac765a578879830fb8966f70be8cd472e6069932e", "sha256:e408f1eacc0a68fed0c08da45f31d0ebb38079f043328dce69ff133b95c29dc1" ], "version": "==1.4.1" }, "mccabe": { "hashes": [ "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42", "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f" ], "version": "==0.6.1" }, "mock": { "hashes": [ "sha256:5ce3c71c5545b472da17b72268978914d0252980348636840bd34a00b5cc96c1", "sha256:b158b6df76edd239b8208d481dc46b6afd45a846b7812ff0ce58971cf5bc8bba" ], "index": "pypi", "version": "==2.0.0" }, "pbr": { "hashes": [ "sha256:6901995b9b686cb90cceba67a0f6d4d14ae003cd59bc12beb61549bdfbe3bc89", "sha256:d950c64aeea5456bbd147468382a5bb77fe692c13c9f00f0219814ce5b642755" ], "version": "==5.2.0" }, "pep8-naming": { "hashes": [ "sha256:1b419fa45b68b61cd8c5daf4e0c96d28915ad14d3d5f35fcc1e7e95324a33a2e", "sha256:4eedfd4c4b05e48796f74f5d8628c068ff788b9c2b08471ad408007fc6450e5a" ], "version": "==0.4.1" }, "pipdeptree": { "hashes": [ "sha256:587cd6bb15dc552866e4886665de128ada2a59b8a3bdf4ca8189119c042f304d", "sha256:7d52ae367dcd3051ccf3ffa63772aaf1fceacea841b382c903eb34fefdf7854c", "sha256:9864d199cff666f1ac68f2b6e4db14c6147f04f31dffbfc8ad5850ec5d45d077" ], "index": "pypi", "version": "==0.13.1" }, "prospector": { "hashes": [ "sha256:877d8d361a5c0e04c8587718c22c5d671afcf814945c96b3e592836d772943fd" ], "index": "pypi", "version": "==1.1.6.2" }, "pycodestyle": { "hashes": [ "sha256:cbc619d09254895b0d12c2c691e237b2e91e9b2ecf5e84c26b35400f93dcfb83", "sha256:cbfca99bd594a10f674d0cd97a3d802a1fdef635d4361e1a2658de47ed261e3a" ], "version": "==2.4.0" }, "pydocstyle": { "hashes": [ "sha256:2258f9b0df68b97bf3a6c29003edc5238ff8879f1efb6f1999988d934e432bd8", "sha256:5741c85e408f9e0ddf873611085e819b809fca90b619f5fd7f34bd4959da3dd4", "sha256:ed79d4ec5e92655eccc21eb0c6cf512e69512b4a97d215ace46d17e4990f2039" ], "version": "==3.0.0" }, "pyflakes": { "hashes": [ "sha256:08bd6a50edf8cffa9fa09a463063c425ecaaf10d1eb0335a7e8b1401aef89e6f", "sha256:8d616a382f243dbf19b54743f280b80198be0bca3a5396f1d2e1fca6223e8805" ], "version": "==1.6.0" }, "pylint": { "hashes": [ "sha256:02c2b6d268695a8b64ad61847f92e611e6afcff33fd26c3a2125370c4662905d", "sha256:ee1e85575587c5b58ddafa25e1c1b01691ef172e139fc25585e5d3f02451da93" ], "version": "==1.9.4" }, "pylint-celery": { "hashes": [ "sha256:41e32094e7408d15c044178ea828dd524beedbdbe6f83f712c5e35bde1de4beb" ], "version": "==0.3" }, "pylint-django": { "hashes": [ "sha256:5a9c47660623cd178228a4a8666eedf1f4824df5deb58c21a09b2015f72beda2" ], "version": "==0.8.1" }, "pylint-flask": { "hashes": [ "sha256:8fcdbb7cbf13d8c2ac1f2230b2aa1c1b83bb3ca2bd8b76f95561cb8757a305ec" ], "version": "==0.5" }, "pylint-plugin-utils": { "hashes": [ "sha256:8d9e31d5ea8b7b0003e1f0f136b44a5235896a32e47c5bc2ef1143e9f6ba0b74" ], "version": "==0.5" }, "pyyaml": { "hashes": [ "sha256:1adecc22f88d38052fb787d959f003811ca858b799590a5eaa70e63dca50308c", "sha256:436bc774ecf7c103814098159fbb84c2715d25980175292c648f2da143909f95", "sha256:460a5a4248763f6f37ea225d19d5c205677d8d525f6a83357ca622ed541830c2", "sha256:5a22a9c84653debfbf198d02fe592c176ea548cccce47553f35f466e15cf2fd4", "sha256:7a5d3f26b89d688db27822343dfa25c599627bc92093e788956372285c6298ad", "sha256:9372b04a02080752d9e6f990179a4ab840227c6e2ce15b95e1278456664cf2ba", "sha256:a5dcbebee834eaddf3fa7366316b880ff4062e4bcc9787b78c7fbb4a26ff2dd1", "sha256:aee5bab92a176e7cd034e57f46e9df9a9862a71f8f37cad167c6fc74c65f5b4e", "sha256:c51f642898c0bacd335fc119da60baae0824f2cde95b0330b56c0553439f0673", "sha256:c68ea4d3ba1705da1e0d85da6684ac657912679a649e8868bd850d2c299cce13", "sha256:e23d0cc5299223dcc37885dae624f382297717e459ea24053709675a976a3e19" ], "version": "==5.1" }, "requirements-detector": { "hashes": [ "sha256:9fbc4b24e8b7c3663aff32e3eba34596848c6b91bd425079b386973bd8d08931" ], "version": "==0.6" }, "setoptconf": { "hashes": [ "sha256:5b0b5d8e0077713f5d5152d4f63be6f048d9a1bb66be15d089a11c898c3cf49c" ], "version": "==0.2.0" }, "singledispatch": { "hashes": [ "sha256:5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c", "sha256:833b46966687b3de7f438c761ac475213e53b306740f1abfaa86e1d1aae56aa8" ], "markers": "python_version < '3.4'", "version": "==3.4.0.3" }, "six": { "hashes": [ "sha256:3350809f0555b11f552448330d0b52d5f24c91a322ea4a15ef22629740f3761c", "sha256:d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73" ], "version": "==1.12.0" }, "snowballstemmer": { "hashes": [ "sha256:919f26a68b2c17a7634da993d91339e288964f93c274f1343e3bbbe2096e1128", "sha256:9f3bcd3c401c3e862ec0ebe6d2c069ebc012ce142cce209c098ccb5b09136e89" ], "version": "==1.2.1" }, "wrapt": { "hashes": [ "sha256:4aea003270831cceb8a90ff27c4031da6ead7ec1886023b80ce0dfe0adf61533" ], "version": "==1.11.1" } } }