Skip to content
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

'pipenv install' is not updating packages and Pipfile.lock #3772

Closed
v-morlock opened this issue May 28, 2019 · 5 comments
Closed

'pipenv install' is not updating packages and Pipfile.lock #3772

v-morlock opened this issue May 28, 2019 · 5 comments

Comments

@v-morlock
Copy link

Issue description

When running pipenv install <package>, Pipenv is installing the new package and updating all other packages whose version is not locked in the Pipfile. However, when only running pipenv install, e.g. after cloning a folder, Pipenv is just installing the packages as specified in Pipenv.lock - it is basically behaving like pipenv sync.
This is the first issue I'm filing, I hope I'm doing it correct so far :)

Expected result

Considering the Docs...

When no parameters are passed to install, all packages [packages] specified will be installed.
https://docs.pipenv.org/en/latest/

...as well as this Post...

pipenv install (without other arguments) is essentially lock + sync, so it is more like installing from Pipfile instead.
#954 (comment)

..., I would expect pipenv install to always install the latest package version "allowed" by Pipfile.

However, if it would behave like that, I don't really see the difference to pipenv update. But that's another topic.

Actual result

pipenv install does install the package version specified in Pipfile.lock.

$ pipenv install -v
Creating a virtualenv for this project…
Pipfile: /Users/valentinmorlock/Documents/Projekte/hallo3/Pipfile
Using /usr/local/bin/python (3.7.3) to create virtualenv…
⠦ Creating virtual environment...Already using interpreter /usr/local/bin/python
Using base prefix '/usr/local'
New python executable in /root/.local/share/virtualenvs/hallo3-SxOrwuLM/bin/python
Installing setuptools, pip, wheel...
done.

✔ Successfully created virtual environment! 
Virtualenv location: /root/.local/share/virtualenvs/hallo3-SxOrwuLM
Installing dependencies from Pipfile.lock (03d155)…
Installing 'certifi'▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/1 — 00:00:00
$ ['/root/.local/share/virtualenvs/hallo3-SxOrwuLM/bin/pip', 'install', '--verbose', '--upgrade', '--no-deps', '-r', '/tmp/pipenv-14cspaj5-requirements/pipenv-aimfcxv8-requirement.txt', '-i', 'https://pypi.org/simple', '--require-hashes']
Created temporary directory: /tmp/pip-ephem-wheel-cache-h4yxvfta
Created temporary directory: /tmp/pip-req-tracker-ve0qux8y
Created requirements tracker '/tmp/pip-req-tracker-ve0qux8y'
Created temporary directory: /tmp/pip-install-f9nnrl0v
Collecting certifi==2015.9.6.1 (from -r /tmp/pipenv-14cspaj5-requirements/pipenv-aimfcxv8-requirement.txt (line 1))
  1 location(s) to search for versions of certifi:
  * https://pypi.org/simple/certifi/
  Getting page https://pypi.org/simple/certifi/
  Looking up "https://pypi.org/simple/certifi/" in the cache
  Request header has "max_age" as 0, cache bypassed
  Starting new HTTPS connection (1): pypi.org:443
  https://pypi.org:443 "GET /simple/certifi/ HTTP/1.1" 304 0
  Analyzing links from page https://pypi.org/simple/certifi/
    Found link https://files.pythonhosted.org/packages/55/bf/e1094f052b5932a452b12ac5a6c229f3d7dbf41a66cfc8d5832fe3fb6463/certifi-0.0.1.tar.gz#sha256=a6f0d79b2b63a43c71bc128929be3a17bdf5d0a5f74208d7ad9563b3bf8210e9 (from https://pypi.org/simple/certifi/), version: 0.0.1
    Found link https://files.pythonhosted.org/packages/0c/4d/6e036d6158e533499272f7b82d0ffa115ecc7c930994475b7bf8f4047489/certifi-0.0.2.tar.gz#sha256=678b7a44338228d55bc4569a575b4734bbbcb9da109328f3b10e3435ec6abdee (from https://pypi.org/simple/certifi/), version: 0.0.2
    Found link https://files.pythonhosted.org/packages/17/3d/7d037b5aadde37d95c067e5b26f064ae53f791201a89b5b38ee315409264/certifi-0.0.3.tar.gz#sha256=1418bce4a32cd409b9766a7c92556be4d23f287da581945be4076eea299fbeac (from https://pypi.org/simple/certifi/), version: 0.0.3
    Found link https://files.pythonhosted.org/packages/cd/b9/ad866737dfde6b459fa3188b13d249e50101fa06bab408e6d9e5029b6838/certifi-0.0.4.tar.gz#sha256=8aed314d0d133c70fd9c56ee13cabe0910c0f6ff423da266841512af0e3d68c4 (from https://pypi.org/simple/certifi/), version: 0.0.4
    Found link https://files.pythonhosted.org/packages/84/b9/a5aac1c71b154f18dad87b39e42a118a538ce4f95fe10f3f651b0c3d0ac2/certifi-0.0.5.tar.gz#sha256=c1c47a7545e39e19357d51c2e5291de158508024658d6860815359566ac65c02 (from https://pypi.org/simple/certifi/), version: 0.0.5
    Found link https://files.pythonhosted.org/packages/76/4a/92995898df84d15c42d49e38b814caa94502cbf28be9b9732703303f2107/certifi-0.0.6.tar.gz#sha256=e839718ce80daa9853b1f47a333757d4a22cdf422e2fd8de5e579d5634a89585 (from https://pypi.org/simple/certifi/), version: 0.0.6
    Found link https://files.pythonhosted.org/packages/43/10/aafebf9677ccec8b227f15eef20a4aac65fbff7f14fc9462f06855fecdd2/certifi-0.0.7.tar.gz#sha256=6dec7d3c6f3d4ed0a50fb15f8fd41c0bb1b17998eb8c103d0f34d61c19061e36 (from https://pypi.org/simple/certifi/), version: 0.0.7
    Found link https://files.pythonhosted.org/packages/38/70/d777da670969367780cb0cb66f43799e17e050dcdeb0fa4e26189519f9f2/certifi-0.0.8.tar.gz#sha256=46ecf5f7526a08cc1f8bc8232adf0cffce046f46ceff95539daec42ebc4849ef (from https://pypi.org/simple/certifi/), version: 0.0.8
    Found link https://files.pythonhosted.org/packages/eb/fe/3ba38b686003664a75c01c42c6f1be02f9837d007c0f15727e6f8f2040a3/certifi-1.0.0.tar.gz#sha256=d4f8e89c9e709f67221bf21231d0fa66a00d3712bcb69d4b5aef3705339c8dcd (from https://pypi.org/simple/certifi/), version: 1.0.0
    Found link https://files.pythonhosted.org/packages/4e/58/86422944e1f228a4e90c291388bf69675826c995f163b2894541365f1f0e/certifi-1.0.1-py2.py3-none-any.whl#sha256=44964ac783fca598e723da5fa2ef3631b5b2f94f445749bfc6043d4afb20de75 (from https://pypi.org/simple/certifi/), version: 1.0.1
    Found link https://files.pythonhosted.org/packages/ff/3a/ec07518540a090d463aa20c615a170d52a3633057fde480bd462883a0de2/certifi-1.0.1.tar.gz#sha256=f2c18c7edd349ec10378ef43ff16f81ae1d0af61d5d2858a8b383e8f6814a9cc (from https://pypi.org/simple/certifi/), version: 1.0.1
    Found link https://files.pythonhosted.org/packages/c1/ed/4a424a55f77679700452972e583393b64160583c80ffa893b4be9391f3ae/certifi-14.05.14.tar.gz#sha256=1e1bcbacd6357c151ae37cf0290dcc809721d32ce21fd6b7339568f3ddef1b69 (from https://pypi.org/simple/certifi/), version: 14.05.14
    Found link https://files.pythonhosted.org/packages/86/35/9758a67004a266047c779ae40a3d937869bfc6fc3422f6c606b8afbc9d23/certifi-2015.04.28-py2.py3-none-any.whl#sha256=268fa00c27de756d71663dd61f73a4a8d8727569bb1b474b2ce6020553826872 (from https://pypi.org/simple/certifi/), version: 2015.04.28
    Found link https://files.pythonhosted.org/packages/4a/41/52617061e93551d5c8041b70d35db395ad647cc356beb764cd9b278e3114/certifi-2015.04.28.tar.gz#sha256=99785e6cf715cdcde59dee05a676e99f04835a71e7ced201ca317401c322ba96 (from https://pypi.org/simple/certifi/), version: 2015.04.28
    Found link https://files.pythonhosted.org/packages/c6/aa/85432217f85f1553dc0926a3e00b48e00819b80097dd056e482c19766f11/certifi-2015.9.6-py2.py3-none-any.whl#sha256=499d154e26c642108248be45b4e09d3b978d2e7c6a72e0a147a2e81448a61a7d (from https://pypi.org/simple/certifi/), version: 2015.9.6
    Found link https://files.pythonhosted.org/packages/e2/ec/ab8442e4d6cf92ea4df67ed81e078bd6a9e092c96ffcd03dbd910e1eb389/certifi-2015.9.6.tar.gz#sha256=7e5646f75d2779719b3400c009e3461f921823e4592657f8e00fb2b6e14b8b92 (from https://pypi.org/simple/certifi/), version: 2015.9.6
    Found link https://files.pythonhosted.org/packages/cc/7f/fb45b6c47ff3a1e119b8fa0aec4a9d1812f0c9f774d877eca582065ef21e/certifi-2015.9.6.1-py2.py3-none-any.whl#sha256=4cbb1f8b30948895f36bb94402598506808833747e0a2e1ca5b1f152ff341da4 (from https://pypi.org/simple/certifi/), version: 2015.9.6.1
    Found link https://files.pythonhosted.org/packages/d6/8d/700b62e1cbcd0264450b8bb476757808ef2c3f6060ee552c3717d010b616/certifi-2015.9.6.1.tar.gz#sha256=f924457bd89178e565fe1b90359d90639f524e7da1a99988292474f52defbf34 (from https://pypi.org/simple/certifi/), version: 2015.9.6.1
    Found link https://files.pythonhosted.org/packages/58/41/b16d4787c30bfb27d608fd2383ab2a7823afa0491fa16df04336d7b7519b/certifi-2015.9.6.2-py2.py3-none-any.whl#sha256=7486e08ffd0a9bea8c66e76fd1f0f0150294c572e78cb16b14d8589beafd3564 (from https://pypi.org/simple/certifi/), version: 2015.9.6.2
    Found link https://files.pythonhosted.org/packages/63/71/422814652028afbff99347da9f3d102f53113a1d2389e255a2dde15c5d8d/certifi-2015.9.6.2.tar.gz#sha256=dc3a2b2d9d1033dbf27586366ae61b9d7c44d8c3a6f29694ffcbb0618ea7aea6 (from https://pypi.org/simple/certifi/), version: 2015.9.6.2
    Found link https://files.pythonhosted.org/packages/a5/2b/83904abc08c3d95808d098163b049e923cbf9fa04f6fa5c0f3750959da8e/certifi-2015.11.20-py2.py3-none-any.whl#sha256=12e141bb3e0f1b3ea4d5a8af804fc59ff94d5ece040cf8d22232ddf87eec096b (from https://pypi.org/simple/certifi/), version: 2015.11.20
    Found link https://files.pythonhosted.org/packages/c5/8a/d007319d95bd2424adb3f2a41ffb29de76f2c07b3dd5fd98f3651f9a14f5/certifi-2015.11.20.tar.gz#sha256=7168668372f07219439e82878b484d6216ff63224fd4e7ff4f39c56ad0b487de (from https://pypi.org/simple/certifi/), version: 2015.11.20
    Found link https://files.pythonhosted.org/packages/df/21/86903664789d010c7693523aa44cd6f96f9d60c7bc813761ff3db5fa8aad/certifi-2015.11.20.1-py2.py3-none-any.whl#sha256=ad86683448f7483d4147a64d96856e551734e594c4563747e9fbe2368df13d3f (from https://pypi.org/simple/certifi/), version: 2015.11.20.1
    Found link https://files.pythonhosted.org/packages/08/59/d39d98454a4fd2c9e0955590398bcfc4047f8e6dde00d7731cefdb32b403/certifi-2015.11.20.1.tar.gz#sha256=30b0a7354a1b32caa8b4705d3f5fb2dadefac7ba4bf8af8a2176869f93e38f16 (from https://pypi.org/simple/certifi/), version: 2015.11.20.1
    Found link https://files.pythonhosted.org/packages/db/60/1ed0106bde7b14b363b15b17cc308aad93ba57d3582570f3ad7180ae0fae/certifi-2016.2.28-py2.py3-none-any.whl#sha256=75c33d546e0a732a4606749cbadcd81929f30d8b814061ca93cde49933dbb860 (from https://pypi.org/simple/certifi/), version: 2016.2.28
    Found link https://files.pythonhosted.org/packages/5c/f8/f6c54727c74579c6bbe5926f5deb9677c5810a33e11da58d1a4e2d09d041/certifi-2016.2.28.tar.gz#sha256=5e8eccf95924658c97b990b50552addb64f55e1e3dfe4880456ac1f287dc79d0 (from https://pypi.org/simple/certifi/), version: 2016.2.28
    Found link https://files.pythonhosted.org/packages/65/da/116b7b175ecdb089406ec24238d1fe668b52d3f25e4e7ba88983807eac6a/certifi-2016.8.2-py2.py3-none-any.whl#sha256=c6290b32cfccf569a621d0449fcaf9283a3e0c77108bc808545b41c779d42e0a (from https://pypi.org/simple/certifi/), version: 2016.8.2
    Found link https://files.pythonhosted.org/packages/60/d8/e4dbd7239f1dd3854135949cc2cc8344602b1545a7929b7bf652ac69fbb6/certifi-2016.8.2.tar.gz#sha256=65ddc34fd9c8509851031d7075b8325393b87e6dbe5875a723959a20266d7a41 (from https://pypi.org/simple/certifi/), version: 2016.8.2
    Found link https://files.pythonhosted.org/packages/dd/ed/e9bf6a9dc79e23c68385c4ea692f0e9e1a7880518872564f88be013b552f/certifi-2016.8.8-py2.py3-none-any.whl#sha256=04f0e6677e6a5a64ba83ade859bcdda254c1ccf58545eb72bc2067f51a01873c (from https://pypi.org/simple/certifi/), version: 2016.8.8
    Found link https://files.pythonhosted.org/packages/41/bf/88a3269c7c95fc94a2c581c4b1b3d3ec21af7a268d6a3a4e54578adccfd6/certifi-2016.8.8.tar.gz#sha256=99864ed602d8a9d212e339b15ffa438895002eda7b7db20dca5309dac9605ae9 (from https://pypi.org/simple/certifi/), version: 2016.8.8
    Found link https://files.pythonhosted.org/packages/34/21/ebb383f944dfc3a14461ee021089da90477be919a5554117c184ae3d44be/certifi-2016.8.31-py2.py3-none-any.whl#sha256=172844a3e2896c924e6aa2657b2e56586a724f27edd0e9592be9353f3a3f6c73 (from https://pypi.org/simple/certifi/), version: 2016.8.31
    Found link https://files.pythonhosted.org/packages/1c/d1/0133a5084f0d17db0270c6061e824a11b0e417d743f5ff4c594f4090ed89/certifi-2016.8.31.tar.gz#sha256=f7708a42d86f29ccc7c8c4ff9d34a8d854d8d78eb2973d1f28406bb43d6b8919 (from https://pypi.org/simple/certifi/), version: 2016.8.31
    Found link https://files.pythonhosted.org/packages/a2/35/b7b457c95fdd661d4c179201e9e58a2181934695943b08ccfcba09284b4e/certifi-2016.9.26-py2.py3-none-any.whl#sha256=a60073d7bb5cb01671877efda875e8dab755b98baedfbb9b8b3d9be2d52ad022 (from https://pypi.org/simple/certifi/), version: 2016.9.26
    Found link https://files.pythonhosted.org/packages/4f/75/e1bc6e363a2c76f8d7e754c27c437dbe4086414e1d6d2f6b2a3e7846f22b/certifi-2016.9.26.tar.gz#sha256=8275aef1bbeaf05c53715bfc5d8569bd1e04ca1e8e69608cc52bcaac2604eb19 (from https://pypi.org/simple/certifi/), version: 2016.9.26
    Found link https://files.pythonhosted.org/packages/21/f7/7bb6b1c5ba1db21515950bc16b22cd7ef7d27024100f326a19921efd2ce0/certifi-2017.1.23-py2.py3-none-any.whl#sha256=f74a224a9860fd5a2e9757230a7ea3eba82d6d46914780abc18e70c8b58d4bf8 (from https://pypi.org/simple/certifi/), version: 2017.1.23
    Found link https://files.pythonhosted.org/packages/b6/fa/ca682d5ace0700008d246664e50db8d095d23750bb212c0086305450c276/certifi-2017.1.23.tar.gz#sha256=81877fb7ac126e9215dfb15bfef7115fdc30e798e0013065158eed0707fd99ce (from https://pypi.org/simple/certifi/), version: 2017.1.23
    Found link https://files.pythonhosted.org/packages/eb/01/c1f58987b777d6c4ec535b4e004a4a07bfc9db06f0c7533367ca6da8f2a6/certifi-2017.4.17-py2.py3-none-any.whl#sha256=f4318671072f030a33c7ca6acaef720ddd50ff124d1388e50c1bda4cbd6d7010 (from https://pypi.org/simple/certifi/), version: 2017.4.17
    Found link https://files.pythonhosted.org/packages/dd/0e/1e3b58c861d40a9ca2d7ea4ccf47271d4456ae4294c5998ad817bd1b4396/certifi-2017.4.17.tar.gz#sha256=f7527ebf7461582ce95f7a9e03dd141ce810d40590834f4ec20cddd54234c10a (from https://pypi.org/simple/certifi/), version: 2017.4.17
    Found link https://files.pythonhosted.org/packages/dc/ec/38df4e406cfca294fd6e242ea38bd943f47885d95e4dbf1783146f80e391/certifi-2017.7.27-py2.py3-none-any.whl#sha256=f0c0494d4a43fc862826a8ac731538ac68120524d4438e864a1ce2a2916e495d (from https://pypi.org/simple/certifi/), version: 2017.7.27
    Found link https://files.pythonhosted.org/packages/fa/70/bf24052d94f00bfdb70ac70840bfa1ba61e6d56ee7da5f62ecbca743c87e/certifi-2017.7.27.tar.gz#sha256=a7e03cbaf96baad108e34602848d0e4f04e59185325a61e63c96fcf67cee5fcd (from https://pypi.org/simple/certifi/), version: 2017.7.27
    Found link https://files.pythonhosted.org/packages/40/66/06130724e8205fc8c105db7edb92871c7fff7d31324d7f4405c762624a43/certifi-2017.7.27.1-py2.py3-none-any.whl#sha256=54a07c09c586b0e4c619f02a5e94e36619da8e2b053e20f594348c0611803704 (from https://pypi.org/simple/certifi/), version: 2017.7.27.1
    Found link https://files.pythonhosted.org/packages/20/d0/3f7a84b0c5b89e94abbd073a5f00c7176089f526edb056686751d5064cbd/certifi-2017.7.27.1.tar.gz#sha256=40523d2efb60523e113b44602298f0960e900388cf3bb6043f645cf57ea9e3f5 (from https://pypi.org/simple/certifi/), version: 2017.7.27.1
    Found link https://files.pythonhosted.org/packages/29/9b/25ef61e948321296f029f53c9f67cc2b54e224db509eb67ce17e0df6044a/certifi-2017.11.5-py2.py3-none-any.whl#sha256=244be0d93b71e93fc0a0a479862051414d0e00e16435707e5bf5000f92e04694 (from https://pypi.org/simple/certifi/), version: 2017.11.5
    Found link https://files.pythonhosted.org/packages/23/3f/8be01c50ed24a4bd6b8da799839066ce0288f66f5e11f0367323467f0cbc/certifi-2017.11.5.tar.gz#sha256=5ec74291ca1136b40f0379e1128ff80e866597e4e2c1e755739a913bbc3613c0 (from https://pypi.org/simple/certifi/), version: 2017.11.5
    Found link https://files.pythonhosted.org/packages/fa/53/0a5562e2b96749e99a3d55d8c7df91c9e4d8c39a9da1f1a49ac9e4f4b39f/certifi-2018.1.18-py2.py3-none-any.whl#sha256=14131608ad2fd56836d33a71ee60fa1c82bc9d2c8d98b7bdbc631fe1b3cd1296 (from https://pypi.org/simple/certifi/), version: 2018.1.18
    Found link https://files.pythonhosted.org/packages/15/d4/2f888fc463d516ff7bf2379a4e9a552fef7f22a94147655d9b1097108248/certifi-2018.1.18.tar.gz#sha256=edbc3f203427eef571f79a7692bb160a2b0f7ccaa31953e99bd17e307cf63f7d (from https://pypi.org/simple/certifi/), version: 2018.1.18
    Found link https://files.pythonhosted.org/packages/7c/e6/92ad559b7192d846975fc916b65f667c7b8c3a32bea7372340bfe9a15fa5/certifi-2018.4.16-py2.py3-none-any.whl#sha256=9fa520c1bacfb634fa7af20a76bcbd3d5fb390481724c597da32c719a7dca4b0 (from https://pypi.org/simple/certifi/), version: 2018.4.16
    Found link https://files.pythonhosted.org/packages/4d/9c/46e950a6f4d6b4be571ddcae21e7bc846fcbb88f1de3eff0f6dd0a6be55d/certifi-2018.4.16.tar.gz#sha256=13e698f54293db9f89122b0581843a782ad0934a4fe0172d2a980ba77fc61bb7 (from https://pypi.org/simple/certifi/), version: 2018.4.16
    Found link https://files.pythonhosted.org/packages/16/1f/50d729c104b21c1042aa51560da6141d1cab476ba7015d92b2111c8db841/certifi-2018.8.13-py2.py3-none-any.whl#sha256=b6e8b28b2b7e771a41ecdd12d4d43262ecab52adebbafa42c77d6b57fb6ad3a4 (from https://pypi.org/simple/certifi/), version: 2018.8.13
    Found link https://files.pythonhosted.org/packages/53/0d/d1d13a63563cc50a27b310f5612645bef06d29a5022a7e79ac659dd0fc50/certifi-2018.8.13.tar.gz#sha256=4c1d68a1408dd090d2f3a869aa94c3947cc1d967821d1ed303208c9f41f0f2f4 (from https://pypi.org/simple/certifi/), version: 2018.8.13
    Found link https://files.pythonhosted.org/packages/df/f7/04fee6ac349e915b82171f8e23cee63644d83663b34c539f7a09aed18f9e/certifi-2018.8.24-py2.py3-none-any.whl#sha256=456048c7e371c089d0a77a5212fb37a2c2dce1e24146e3b7e0261736aaeaa22a (from https://pypi.org/simple/certifi/), version: 2018.8.24
    Found link https://files.pythonhosted.org/packages/e1/0f/f8d5e939184547b3bdc6128551b831a62832713aa98c2ccdf8c47ecc7f17/certifi-2018.8.24.tar.gz#sha256=376690d6f16d32f9d1fe8932551d80b23e9d393a8578c5633a2ed39a64861638 (from https://pypi.org/simple/certifi/), version: 2018.8.24
    Found link https://files.pythonhosted.org/packages/56/9d/1d02dd80bc4cd955f98980f28c5ee2200e1209292d5f9e9cc8d030d18655/certifi-2018.10.15-py2.py3-none-any.whl#sha256=339dc09518b07e2fa7eda5450740925974815557727d6bd35d319c1524a04a4c (from https://pypi.org/simple/certifi/), version: 2018.10.15
    Found link https://files.pythonhosted.org/packages/41/b6/4f0cefba47656583217acd6cd797bc2db1fede0d53090fdc28ad2c8e0716/certifi-2018.10.15.tar.gz#sha256=6d58c986d22b038c8c0df30d639f23a3e6d172a05c3583e766f4c0b785c0986a (from https://pypi.org/simple/certifi/), version: 2018.10.15
    Found link https://files.pythonhosted.org/packages/9f/e0/accfc1b56b57e9750eba272e24c4dddeac86852c2bebd1236674d7887e8a/certifi-2018.11.29-py2.py3-none-any.whl#sha256=993f830721089fef441cdfeb4b2c8c9df86f0c63239f06bd025a76a7daddb033 (from https://pypi.org/simple/certifi/), version: 2018.11.29
    Found link https://files.pythonhosted.org/packages/55/54/3ce77783acba5979ce16674fc98b1920d00b01d337cfaaf5db22543505ed/certifi-2018.11.29.tar.gz#sha256=47f9c83ef4c0c621eaef743f133f09fa8a74a9b75f037e8624f83bd1b6626cb7 (from https://pypi.org/simple/certifi/), version: 2018.11.29
    Found link https://files.pythonhosted.org/packages/60/75/f692a584e85b7eaba0e03827b3d51f45f571c2e793dd731e598828d380aa/certifi-2019.3.9-py2.py3-none-any.whl#sha256=59b7658e26ca9c7339e00f8f4636cdfe59d34fa37b9b04f6f9e9926b3cece1a5 (from https://pypi.org/simple/certifi/), version: 2019.3.9
    Found link https://files.pythonhosted.org/packages/06/b8/d1ea38513c22e8c906275d135818fee16ad8495985956a9b7e2bb21942a1/certifi-2019.3.9.tar.gz#sha256=b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae (from https://pypi.org/simple/certifi/), version: 2019.3.9
  Using version 2015.9.6.1 (newest of versions: 2015.9.6.1)
  Created temporary directory: /tmp/pip-unpack-6rd_07tz
  Looking up "https://files.pythonhosted.org/packages/cc/7f/fb45b6c47ff3a1e119b8fa0aec4a9d1812f0c9f774d877eca582065ef21e/certifi-2015.9.6.1-py2.py3-none-any.whl" in the cache
  Current age based on date: 6122
  Ignoring unknown cache-control directive: immutable
  Freshness lifetime from max-age: 365000000
  The response is "fresh", returning cached response
  365000000 > 6122
  Using cached https://files.pythonhosted.org/packages/cc/7f/fb45b6c47ff3a1e119b8fa0aec4a9d1812f0c9f774d877eca582065ef21e/certifi-2015.9.6.1-py2.py3-none-any.whl
  Downloading from URL https://files.pythonhosted.org/packages/cc/7f/fb45b6c47ff3a1e119b8fa0aec4a9d1812f0c9f774d877eca582065ef21e/certifi-2015.9.6.1-py2.py3-none-any.whl#sha256=4cbb1f8b30948895f36bb94402598506808833747e0a2e1ca5b1f152ff341da4 (from https://pypi.org/simple/certifi/)
  Added certifi==2015.9.6.1 from https://files.pythonhosted.org/packages/cc/7f/fb45b6c47ff3a1e119b8fa0aec4a9d1812f0c9f774d877eca582065ef21e/certifi-2015.9.6.1-py2.py3-none-any.whl#sha256=4cbb1f8b30948895f36bb94402598506808833747e0a2e1ca5b1f152ff341da4 (from -r /tmp/pipenv-14cspaj5-requirements/pipenv-aimfcxv8-requirement.txt (line 1)) to build tracker '/tmp/pip-req-tracker-ve0qux8y'
  Removed certifi==2015.9.6.1 from https://files.pythonhosted.org/packages/cc/7f/fb45b6c47ff3a1e119b8fa0aec4a9d1812f0c9f774d877eca582065ef21e/certifi-2015.9.6.1-py2.py3-none-any.whl#sha256=4cbb1f8b30948895f36bb94402598506808833747e0a2e1ca5b1f152ff341da4 (from -r /tmp/pipenv-14cspaj5-requirements/pipenv-aimfcxv8-requirement.txt (line 1)) from build tracker '/tmp/pip-req-tracker-ve0qux8y'
Installing collected packages: certifi

Successfully installed certifi-2015.9.6.1
Cleaning up...
Removed build tracker '/tmp/pip-req-tracker-ve0qux8y'
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 1/1 — 00:00:00
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.

Steps to replicate

Create a Pipfile and Pipfile.lock as it can be seen below and run pipenv install. The (old) version of Certifi, as specified in Pipfile.lock, is being installed.


$ pipenv --support

Pipenv version: '2018.11.26'

Pipenv location: '/usr/local/lib/python3.7/site-packages/pipenv'

Python location: '/usr/local/bin/python'

Python installations found:

  • 3.7.3: /usr/local/bin/python
  • 3.7.3: /usr/local/bin/python3.7m
  • 3.5.3: /usr/bin/python3.5m
  • 3.5.3: /usr/bin/python3.5
  • 2.7.13: /usr/bin/python2.7

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '3.7.3',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.9.125-linuxkit',
 'platform_system': 'Linux',
 'platform_version': '#1 SMP Fri Sep 7 08:20:28 UTC 2018',
 'python_full_version': '3.7.3',
 'python_version': '3.7',
 'sys_platform': 'linux'}

System environment variables:

  • LANG
  • HOSTNAME
  • GPG_KEY
  • PWD
  • HOME
  • TERM
  • PYTHON_VERSION
  • SHLVL
  • PATH
  • PYTHON_PIP_VERSION
  • _
  • OLDPWD
  • PIP_DISABLE_PIP_VERSION_CHECK
  • PYTHONDONTWRITEBYTECODE
  • PIP_SHIMS_BASE_MODULE
  • PIP_PYTHON_PATH
  • PYTHONFINDER_IGNORE_UNSUPPORTED

Pipenv–specific environment variables:

Debug–specific environment variables:

  • PATH: /usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
  • LANG: C.UTF-8
  • PWD: /Users/valentinmorlock/Documents/Projekte/hallo

Contents of Pipfile ('/Users/valentinmorlock/Documents/Projekte/hallo/Pipfile'):

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]
certifi = "*"

[requires]
python_version = "3.7"

Contents of Pipfile.lock ('/Users/valentinmorlock/Documents/Projekte/hallo/Pipfile.lock'):

{
    "_meta": {
        "hash": {
            "sha256": "90b2ef1f5d2291cd91f95158453754fb557d6eb377f4b1d5472eec41f703d155"
        },
        "pipfile-spec": 6,
        "requires": {
            "python_version": "3.7"
        },
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "certifi": {
            "hashes": [
                "sha256:4cbb1f8b30948895f36bb94402598506808833747e0a2e1ca5b1f152ff341da4",
                "sha256:f924457bd89178e565fe1b90359d90639f524e7da1a99988292474f52defbf34"
            ],
            "index": "pypi",
            "version": "==2015.9.6.1"
        }
   },
    "develop": {}
}
@frostming
Copy link
Contributor

frostming commented May 29, 2019

Pipenv provides three similar commands to achieve the same thing with minor differences:

  • pipenv sync never relock lock files and performs install only.
  • pipenv update always relock and install afterwards.
  • pipenv install relock only when Pipfile.lock mismatches the Pipfile.

Depending on your needs, you can choose from the above three commands, which is very flexible. If you change the behavior of pipenv install to either sync or update then we will probably have a redundant command. So nothing will be changed here.

@v-morlock
Copy link
Author

@frostming thank you for clarifying. So as I understand, it's only relocking when the (hash of the) Pipfile changes...
Could you maybe explain a bit further what this behavior is intended for or in which situation I would need updates only in case I changed the projects requirements?

@frostming
Copy link
Contributor

The behavior is given to pipenv install, the most used command so that Pipfile and Pipfile.lock will be kept consistent in case people forget to relock after he adds some packages (by manually editing the Pipfile). This is important because Pipenv is a tool to reproduce the environment on the production server. If Pipfile.lock is outdated the environment produced will be probably broken.

@ychennay
Copy link

ychennay commented Nov 5, 2020

@frostming you said

pipenv install relock only when Pipfile.lock mismatches the Pipfile.

Could you explain again - how does pipenv install know that the Pipfile.lock does not match the Pipfile, unless it computes the hashes first?

@frostming
Copy link
Contributor

@ychennay

how does pipenv install know that the Pipfile.lock does not match the Pipfile, unless it computes the hashes first?

Correct, Pipenv calculates the content hash of Pipfile and stores the value in Pipfile.lock

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants