Closed scott-vsi closed 5 years ago
This issue is a duplicate of #2662.
Markers are sometimes parsed nondeterministically, in most cases (all cases that I've seen) it is not meaningful but it does create a lot of clutter in version control. We will fix this when we get better at set math.
Sorry for the annoyance
FYI this is a case where it matters. iPython will not install on the first pass. You must run pipenv install
twice. The first time it errors with the output listed above.
@scott-vsi I believe that is an artifact of a bug in the resolver implementation which causes it to be nondeterministic -- that will be fixed in the coming release (next few hrs)
Great. Thanks!
Issue description
Running
pipenv lock
twice produces a different Pipfile.lockExpected result
I would expect it to produce the same lock file both times
Actual result and Steps to replicate
output
``` Creating a virtualenv for this project... Pipfile: /Users/sgrichar/loki/test/Pipfile Using /usr/local/bin/python2.7 (2.7.14) to create virtualenv... Running virtualenv with interpreter /usr/local/bin/python2.7 New python executable in /Users/sgrichar/.local/share/virtualenvs/test-CrH5_LA2/bin/python2.7 Also creating executable in /Users/sgrichar/.local/share/virtualenvs/test-CrH5_LA2/bin/python Installing setuptools, pip, wheel...done. Setting project for test-CrH5_LA2 to /Users/sgrichar/loki/test Virtualenv location: /Users/sgrichar/.local/share/virtualenvs/test-CrH5_LA2 Locking [dev-packages] dependencies... Locking [packages] dependencies... using sources: [{u'url': u'https://pypi.org/simple', u'verify_ssl': True, u'name': u'pypi'}] Using pip: -i https://pypi.org/simple ROUND 1 Current constraints: ipython (from -r /var/folders/g9/pytwf10x5y58h92hx7x70qnh000105/T/pipenv-7iWEdP-requirements/pipenv-Ek2M6Q-constraints.txt (line 2)) Finding the best candidates: found candidate ipython==5.8.0 (constraint wasIn this form, pathlib is not actually installed after running
pipenv install
(so ipython is broken). Now, after re-running the command, the lock file has changed:output
``` Locking [dev-packages] dependencies... Locking [packages] dependencies... using sources: [{u'url': u'https://pypi.org/simple', u'verify_ssl': True, u'name': u'pypi'}] Using pip: -i https://pypi.org/simple ROUND 1 Current constraints: ipython (from -r /var/folders/g9/pytwf10x5y58h92hx7x70qnh000105/T/pipenv-QdaxJp-requirements/pipenv-rV2j1p-constraints.txt (line 2)) Finding the best candidates: found candidate ipython==5.8.0 (constraint wasNow, after running
pipenv install
, ipython works.$ pipenv --support
Pipenv version: `'2018.7.1'` Pipenv location: `'/usr/local/lib/python2.7/site-packages/pipenv'` Python location: `'/usr/local/opt/python@2/bin/python2.7'` Other Python installations in `PATH`: - `2.7`: `/usr/local/bin/python2.7` - `2.7`: `/usr/local/bin/python2.7` - `2.7`: `/usr/bin/python2.7` - `2.7`: `/usr/local/bin/python2.7` - `3.6`: `/usr/local/bin/python3.6m` - `3.6`: `/usr/local/bin/python3.6` - `3.6`: `/usr/local/bin/python3.6` - `2.7.14`: `/usr/local/bin/python` - `2.7.10`: `/usr/bin/python` - `2.7.14`: `/usr/local/bin/python` - `2.7.14`: `/usr/local/bin/python2` - `2.7.14`: `/usr/local/bin/python2` - `3.6.5`: `/usr/local/bin/python3` - `3.6.5`: `/usr/local/bin/python3` PEP 508 Information: ``` {'implementation_name': 'cpython', 'implementation_version': '0', 'os_name': 'posix', 'platform_machine': 'x86_64', 'platform_python_implementation': 'CPython', 'platform_release': '17.7.0', 'platform_system': 'Darwin', 'platform_version': 'Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64', 'python_full_version': '2.7.14', 'python_version': '2.7', 'sys_platform': 'darwin'} ``` System environment variables: - `_` - `TERM_PROGRAM_VERSION` - `LOGNAME` - `USER` - `PATH` - `HOME` - `DISPLAY` - `TERM_PROGRAM` - `LANG` - `__CF_USER_TEXT_ENCODING` - `TERM` - `Apple_PubSub_Socket_Render` - `SHLVL` - `SECURITYSESSIONID` - `XPC_FLAGS` - `EDITOR` - `FIGNORE` - `TERM_SESSION_ID` - `XPC_SERVICE_NAME` - `SSH_AUTH_SOCK` - `VISUAL` - `SHELL` - `PYTHONDONTWRITEBYTECODE` - `PIP_PYTHON_PATH` - `TMPDIR` - `LSCOLORS` - `PYTHONSTARTUP` - `OLDPWD` - `CLICOLOR` - `HISTCONTROL` - `PWD` Pipenv–specific environment variables: Debug–specific environment variables: - `PATH`: `/usr/local/bin:/usr/local/sbin:/Users/user/.bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/opt/X11/bin` - `SHELL`: `/bin/bash` - `EDITOR`: `nvim` - `LANG`: `en_US.UTF-8` - `PWD`: `/Users/user/loki/test` --------------------------- Contents of `Pipfile` ('/Users/user/loki/test/Pipfile'): ```toml [[source]] url = "https://pypi.org/simple" verify_ssl = true name = "pypi" [dev-packages] [packages] ipython = "*" [requires] python_version = "2.7" ``` Contents of `Pipfile.lock` ('/Users/user/loki/test/Pipfile.lock'): ```json { "_meta": { "hash": { "sha256": "bd21cf36543e0331955e6f1443bc021c6e4cc23e157f5b6a1a29bdf9147152c9" }, "pipfile-spec": 6, "requires": { "python_version": "2" }, "sources": [ { "name": "pypi", "url": "https://pypi.org/simple", "verify_ssl": true } ] }, "default": { "appnope": { "hashes": [ "sha256:5b26757dc6f79a3b7dc9fab95359328d5747fcb2409d331ea66d0272b90ab2a0", "sha256:8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71" ], "markers": "sys_platform == 'darwin'", "version": "==0.1.0" }, "backports.shutil-get-terminal-size": { "hashes": [ "sha256:0975ba55054c15e346944b38956a4c9cbee9009391e41b86c68990effb8c1f64", "sha256:713e7a8228ae80341c70586d1cc0a8caa5207346927e23d09dcbcaf18eadec80" ], "markers": "python_version == '2.7'", "version": "==1.0.0" }, "decorator": { "hashes": [ "sha256:2c51dff8ef3c447388fe5e4453d24a2bf128d3a4c32af3fabef1f01c6851ab82", "sha256:c39efa13fbdeb4506c476c9b3babf6a718da943dab7811c206005a4a956c080c" ], "version": "==4.3.0" }, "enum34": { "hashes": [ "sha256:2d81cbbe0e73112bdfe6ef8576f2238f2ba27dd0d55752a776c41d38b7da2850", "sha256:644837f692e5f550741432dd3f223bbb9852018674981b1664e5dc339387588a", "sha256:6bd0f6ad48ec2aa117d3d141940d484deccda84d4fcd884f5c3d93c23ecd8c79", "sha256:8ad8c4783bf61ded74527bffb48ed9b54166685e4230386a9ed9b1279e2df5b1" ], "markers": "python_version == '2.7'", "version": "==1.1.6" }, "ipython": { "hashes": [ "sha256:0371b7e4bd74954a35086eac949beeac5b1c9f5ce231e2e77df2286a293765e3", "sha256:37101b8cbe072fe17bff100bc03d096404e4a9a0357097aeb5b61677c042cab1", "sha256:4bac649857611baaaf76bc82c173aa542f7486446c335fe1a6c05d0d491c8906" ], "index": "pypi", "version": "==5.8.0" }, "ipython-genutils": { "hashes": [ "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8", "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8" ], "version": "==0.2.0" }, "pathlib2": { "hashes": [ "sha256:8eb170f8d0d61825e09a95b38be068299ddeda82f35e96c3301a8a5e7604cb83", "sha256:d1aa2a11ba7b8f7b21ab852b1fb5afb277e1bb99d5dfc663380b5015c0d80c5a" ], "markers": "python_version in '2.6 2.7 3.2 3.3'", "version": "==2.3.2" }, "pexpect": { "hashes": [ "sha256:2a8e88259839571d1251d278476f3eec5db26deb73a70be5ed5dc5435e418aba", "sha256:3fbd41d4caf27fa4a377bfd16fef87271099463e6fa73e92a52f92dfee5d425b" ], "markers": "sys_platform != 'win32'", "version": "==4.6.0" }, "pickleshare": { "hashes": [ "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca", "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56" ], "version": "==0.7.5" }, "prompt-toolkit": { "hashes": [ "sha256:1df952620eccb399c53ebb359cc7d9a8d3a9538cb34c5a1344bdbeb29fbcc381", "sha256:3f473ae040ddaa52b52f97f6b4a493cfa9f5920c255a12dc56a7d34397a398a4", "sha256:858588f1983ca497f1cf4ffde01d978a3ea02b01c8a26a8bbc5cd2e66d816917" ], "version": "==1.0.15" }, "ptyprocess": { "hashes": [ "sha256:923f299cc5ad920c68f2bc0bc98b75b9f838b93b599941a6b63ddbc2476394c0", "sha256:d7cc528d76e76342423ca640335bd3633420dc1366f258cb31d05e865ef5ca1f" ], "version": "==0.6.0" }, "pygments": { "hashes": [ "sha256:78f3f434bcc5d6ee09020f92ba487f95ba50f1e3ef83ae96b9d5ffa1bab25c5d", "sha256:dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc" ], "version": "==2.2.0" }, "scandir": { "hashes": [ "sha256:04b8adb105f2ed313a7c2ef0f1cf7aff4871aa7a1883fa4d8c44b5551ab052d6", "sha256:1444134990356c81d12f30e4b311379acfbbcd03e0bab591de2696a3b126d58e", "sha256:1b5c314e39f596875e5a95dd81af03730b338c277c54a454226978d5ba95dbb6", "sha256:346619f72eb0ddc4cf355ceffd225fa52506c92a2ff05318cfabd02a144e7c4e", "sha256:44975e209c4827fc18a3486f257154d34ec6eaec0f90fef0cca1caa482db7064", "sha256:61859fd7e40b8c71e609c202db5b0c1dbec0d5c7f1449dec2245575bdc866792", "sha256:a5e232a0bf188362fa00123cc0bb842d363a292de7126126df5527b6a369586a", "sha256:c14701409f311e7a9b7ec8e337f0815baf7ac95776cc78b419a1e6d49889a383", "sha256:c7708f29d843fc2764310732e41f0ce27feadde453261859ec0fca7865dfc41b", "sha256:c9009c527929f6e25604aec39b0a43c3f831d2947d89d6caaab22f057b7055c8", "sha256:f5c71e29b4e2af7ccdc03a020c626ede51da471173b4a6ad1e904f2b2e04b4bd" ], "markers": "python_version < '3.5'", "version": "==1.9.0" }, "simplegeneric": { "hashes": [ "sha256:dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173" ], "version": "==0.8.1" }, "six": { "hashes": [ "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9", "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb" ], "version": "==1.11.0" }, "traitlets": { "hashes": [ "sha256:9c4bd2d267b7153df9152698efb1050a5d84982d3384a37b2c1f7723ba3e7835", "sha256:c6cb5e6f57c5a9bdaa40fa71ce7b4af30298fbab9ece9815b5d995ab6217c7d9" ], "version": "==4.3.2" }, "wcwidth": { "hashes": [ "sha256:3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e", "sha256:f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c" ], "version": "==0.1.7" } }, "develop": {} } ```