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 :)
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.
https://github.com/pypa/pipenv/issues/954#issuecomment-405224696
..., 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.
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.
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": {}
}
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.
@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?
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.
@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?
@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
Most helpful comment
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 eithersync
orupdate
then we will probably have a redundant command. So nothing will be changed here.