question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Pipenv locks package to a post-release version without all platform support.

See original GitHub issue

Issue description

At this time, docutils package on PyPI has different versions for Python 2 (0.15.post1) and for Python 3 (0.15).

docutils

When I try to install this package using Pipenv with Python 3, dependencies will lock successfully, however they will contain py2-specific version 0.15.post1, which then fails to install. (Manually forcing version docutils==0.15 works, and pip install docutils installs the correct version).

Expected result

In a new folder, run pipenv install --three docutils. Pipenv creates a new virtualenv and installs docutils.

Actual result

Package installation fails:

% rm -r ~/.cache/pipenv
% pipenv install --verbose --three docutils
Creating a virtualenv for this project…
Pipfile: /home/adam/tmp/reproducer/Pipfile
Using /usr/bin/python3 (3.7.3) to create virtualenv…
⠧ Creating virtual environment...Using base prefix '/usr'
New python executable in /home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/bin/python3
Also creating executable in /home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/bin/python
Installing setuptools, pip, wheel...
done.
Running virtualenv with interpreter /usr/bin/python3

✔ Successfully created virtual environment! 
Virtualenv location: /home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl
Creating a Pipfile for this project…
Installing docutils…
⠋ Installing...Installing 'docutils'
$ ['/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/bin/pip', 'install', '--verbose', '--upgrade', 'docutils', '-i', 'https://pypi.org/simple']
Adding docutils to Pipfile's [packages]…
✔ Installation Succeeded 
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
✔ Success! 
Using pip: -i https://pypi.org/simple
Using pip: -i https://pypi.org/simple
Using pip: -i https://pypi.org/simple

                          ROUND 1                           
Current constraints:
  docutils

Finding the best candidates:
  found candidate docutils==0.15.post1 (constraint was <any>)

Finding secondary dependencies:
  docutils==0.15.post1      requires -
------------------------------------------------------------
Result of round 1: stable, done


Updated Pipfile.lock (c8fbe9)!
Installing dependencies from Pipfile.lock (c8fbe9)…
Installing 'docutils'▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/1 — 00:00:00
$ ['/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/bin/pip', 'install', '--verbose', '--upgrade', '--no-deps', '-r', '/tmp/pipenv-7ry13eyx-requirements/pipenv-_7eioysf-requirement.txt', '-i', 'https://pypi.org/simple', '--require-hashes']
Created temporary directory: /tmp/pip-ephem-wheel-cache-l_vczto7
Created temporary directory: /tmp/pip-req-tracker-_bavf9s6
Created requirements tracker '/tmp/pip-req-tracker-_bavf9s6'
Created temporary directory: /tmp/pip-install-pqe6tgxy
Collecting docutils==0.15.post1 (from -r /tmp/pipenv-7ry13eyx-requirements/pipenv-_7eioysf-requirement.txt (line 1))
  1 location(s) to search for versions of docutils:
  * https://pypi.org/simple/docutils/
  Getting page https://pypi.org/simple/docutils/
  Looking up "https://pypi.org/simple/docutils/" 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/docutils/ HTTP/1.1" 304 0
  Analyzing links from page https://pypi.org/simple/docutils/
    Found link https://files.pythonhosted.org/packages/3e/a3/381d27fae58a59915440374367712bf2442c3feda26d021263041b3809ba/docutils-0.3.tar.gz#sha256=13d4efb5c105a3440cfc2e4124a455016e9e117e2afda6bf3583142215dca988 (from https://pypi.org/simple/docutils/), version: 0.3
    Found link https://files.pythonhosted.org/packages/b2/ff/5040ee72b3ec93fdeb6fec6c712f684d6811bebf87c413c651c47ab10580/docutils-0.3.5.tar.gz#sha256=45c53691e6ba7e96f60dfa6f93c012749d7d8068489419ef608766ad7f1a340f (from https://pypi.org/simple/docutils/), version: 0.3.5
    Found link https://files.pythonhosted.org/packages/06/f0/ba91d2970562ac496a429c286006fac84c9f51b9296ad0d3a34b5cd0f923/docutils-0.3.7.tar.gz#sha256=a7a81c71caa36b4576f33f8ab2acb62e9fdf868345e8215f1d1b19d83fd7beb4 (from https://pypi.org/simple/docutils/), version: 0.3.7
    Found link https://files.pythonhosted.org/packages/f0/a9/999787bf8b869b7ce2f7b5dd0f9fa1e77154875a8dd5ee0715768913b5b3/docutils-0.3.9.tar.gz#sha256=6b3cbd9b0fae3e2a7c7855e84a8cf9a5237fc2f52a946cbc669ccf7a72e6d1ab (from https://pypi.org/simple/docutils/), version: 0.3.9
    Found link https://files.pythonhosted.org/packages/18/da/9e25e6178d452f1f47e6ca1bbd876038c9fd0df0a64d0a3db40c33071ad1/docutils-0.4.tar.gz#sha256=b81f29e4f39540d06c7d8c0dc1a2c209816c47ce33a66ac50ee28ae38d242c0e (from https://pypi.org/simple/docutils/), version: 0.4
    Found link https://files.pythonhosted.org/packages/9d/21/3585fa6781b78b7fd7e257f64217188e97c775efd9f8c9bac90ced731bb7/docutils-0.5.tar.gz#sha256=747cf984edfca0575addbb42453274a1bdd98ec7780bd37a883dc8b2a66a610e (from https://pypi.org/simple/docutils/), version: 0.5
    Found link https://files.pythonhosted.org/packages/3c/85/3bee168f7fb06c3a48e0af4f6b3d02cfee91dec3a89b116b532ddf819364/docutils-0.6.tar.gz#sha256=04aa91bd644169b23ed02d692f407a2a4e326fbfec9754bce7662fcf59c917f2 (from https://pypi.org/simple/docutils/), version: 0.6
    Found link https://files.pythonhosted.org/packages/6a/30/3891cb6d713bae4dd578493944d5f78bf22b624e81ca76782d68fd6a0d01/docutils-0.7.tar.gz#sha256=cd8dc8e131813af9f4f1963f719611cccf23749dcf703f944bb4ac434393ea03 (from https://pypi.org/simple/docutils/), version: 0.7
    Found link https://files.pythonhosted.org/packages/e5/c0/7f7089b6d380d5d78cb37f5cfd5457959dd79c9e696c37f817a6f24a29be/docutils-0.8.tar.gz#sha256=4aec93d5c3e00c56923751eb940ddd4942c191367e466f5c77cfdd49a9cacbf4 (from https://pypi.org/simple/docutils/), version: 0.8
    Found link https://files.pythonhosted.org/packages/35/8b/b9168ac215c60c92df40fd78551757c3239235497533b74616bb156404aa/docutils-0.8.1.tar.gz#sha256=5a3b776518257a59fefaf48ef1e0635bc1179f8cafb02a9cc84c9644bb25df71 (from https://pypi.org/simple/docutils/), version: 0.8.1
    Found link https://files.pythonhosted.org/packages/13/98/de4fe2d3b085a4f408ec80117489f32ed0564c6d15eca0cf4a45441d8052/docutils-0.9.tar.gz#sha256=ff49bf77e9135490a73740d884b418ab8b982ad16ee52cfe796d059c592ea245 (from https://pypi.org/simple/docutils/), version: 0.9
    Found link https://files.pythonhosted.org/packages/d1/fd/e569a6139d5bfda5574b3a4bd840dd1b23d03fc7fcbb193bd1f450f98cc4/docutils-0.9.1.tar.gz#sha256=e89f187dbbc6674f839239c89fec44af9f18809b66a8a55a41b57b9ee2356994 (from https://pypi.org/simple/docutils/), version: 0.9.1
    Found link https://files.pythonhosted.org/packages/66/40/2b11ec2ec96d527ef933332a5847cc90860fd8bbee46da2cc468794ea25b/docutils-0.10.tar.gz#sha256=370624e61b6773da2f2fb17cc2a4eaea4bb596c3585d13f75ff193c1c738603e (from https://pypi.org/simple/docutils/), version: 0.10
    Found link https://files.pythonhosted.org/packages/7f/49/3ff69dcb212900199462a291886e2f30f57ab3a69dc88e31eda6404a17c0/docutils-0.11.tar.gz#sha256=9af4166adf364447289c5c697bb83c52f1d6f57e77849abcccd6a4a18a5e7ec9 (from https://pypi.org/simple/docutils/), version: 0.11
    Found link https://files.pythonhosted.org/packages/c7/16/29d8de2404c5b90243b51f91315b3ce375169ceb48a68aeec0862e0143c4/docutils-0.12-py3-none-any.whl#sha256=dcebd4928112631626f4c4d0df59787c748404e66dda952110030ea883d3b8cd (from https://pypi.org/simple/docutils/), version: 0.12
    Found link https://files.pythonhosted.org/packages/37/38/ceda70135b9144d84884ae2fc5886c6baac4edea39550f28bcd144c1234d/docutils-0.12.tar.gz#sha256=c7db717810ab6965f66c8cf0398a98c9d8df982da39b4cd7f162911eb89596fa (from https://pypi.org/simple/docutils/), version: 0.12
    Skipping link https://files.pythonhosted.org/packages/5f/6d/e864b3c61b81eec57386ac62082fccfe694c7c3046d8723258a37da6d5fc/docutils-0.13.1-py2-none-any.whl#sha256=de454f1015958450b72641165c08afe7023cd7e3944396448f2fb1b0ccba9d77 (from https://pypi.org/simple/docutils/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/7c/30/8fb30d820c012a6f701a66618ce065b6d61d08ac0a77e47fc7808dbaee47/docutils-0.13.1-py3-none-any.whl#sha256=cb3ebcb09242804f84bdbf0b26504077a054da6772c6f4d625f335cc53ebf94d (from https://pypi.org/simple/docutils/), version: 0.13.1
    Found link https://files.pythonhosted.org/packages/05/25/7b5484aca5d46915493f1fd4ecb63c38c333bd32aa9ad6e19da8d08895ae/docutils-0.13.1.tar.gz#sha256=718c0f5fb677be0f34b781e04241c4067cbd9327b66bdd8e763201130f5175be (from https://pypi.org/simple/docutils/), version: 0.13.1
    Found link https://files.pythonhosted.org/packages/05/fd/d62c2944d9df894b07eaa7430decc4c80977e644922a85fbdec337d6af82/docutils-0.14rc1.tar.gz#sha256=7ee93a6fbab0f46bdda4d94384de40a04bbbbb53dbd019ce0fbbbfed22f6589a (from https://pypi.org/simple/docutils/), version: 0.14rc1
    Found link https://files.pythonhosted.org/packages/6b/57/6e68a5457ea9579f970d7854c090a6c991c8ab481df12e6be25ff505a4b0/docutils-0.14rc2.tar.gz#sha256=3caee0bcb2a49fdf24fcfa70849a60abb7a181aa68b030f7cb7494096181830c (from https://pypi.org/simple/docutils/), version: 0.14rc2
    Skipping link https://files.pythonhosted.org/packages/50/09/c53398e0005b11f7ffb27b7aa720c617aba53be4fb4f4f3f06b9b5c60f28/docutils-0.14-py2-none-any.whl#sha256=7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6 (from https://pypi.org/simple/docutils/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/36/fa/08e9e6e0e3cbd1d362c3bbee8d01d0aedb2155c4ac112b19ef3cae8eed8d/docutils-0.14-py3-none-any.whl#sha256=02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6 (from https://pypi.org/simple/docutils/), version: 0.14
    Found link https://files.pythonhosted.org/packages/84/f4/5771e41fdf52aabebbadecc9381d11dea0fa34e4759b4071244fa094804c/docutils-0.14.tar.gz#sha256=51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274 (from https://pypi.org/simple/docutils/), version: 0.14
    Found link https://files.pythonhosted.org/packages/ca/83/812ae4de24209ef41e967fdb635d10a8ef2f7555dd510d3e562b707b2643/docutils-0.15-py3-none-any.whl#sha256=d2ddba74835cb090a1b627d3de4e7835c628d07ee461f7b4480f51af2fe4d448 (from https://pypi.org/simple/docutils/), version: 0.15
    Skipping link https://files.pythonhosted.org/packages/d2/d8/06e83efbfafab5d342df8835f3aa81c1dbfadedbea39cc2d2f93742938a4/docutils-0.15.post1-py2-none-any.whl#sha256=ba4584f9107571ced0d2c7f56a5499c696215ba90797849c92d395979da68521 (from https://pypi.org/simple/docutils/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/72/0b/d728058694261c99fd5980419d77e1c4d63a390b26a6a0ea7f0993cd5c57/docutils-0.15.tar.gz#sha256=54a349c622ff31c91cbec43b0b512f113b5b24daf00e2ea530bb1bd9aac14849 (from https://pypi.org/simple/docutils/), version: 0.15
  ERROR: Could not find a version that satisfies the requirement docutils==0.15.post1 (from -r /tmp/pipenv-7ry13eyx-requirements/pipenv-_7eioysf-requirement.txt (line 1)) (from versions: 0.3, 0.3.5, 0.3.7, 0.3.9, 0.4, 0.5, 0.6, 0.7, 0.8, 0.8.1, 0.9, 0.9.1, 0.10, 0.11, 0.12, 0.13.1, 0.14rc1, 0.14rc2, 0.14, 0.15)
Cleaning up...
Removed build tracker '/tmp/pip-req-tracker-_bavf9s6'
ERROR: No matching distribution found for docutils==0.15.post1 (from -r /tmp/pipenv-7ry13eyx-requirements/pipenv-_7eioysf-requirement.txt (line 1))
Exception information:
Traceback (most recent call last):
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 178, in main
    status = self.run(options, args)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 352, in run
    resolver.resolve(requirement_set)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/resolve.py", line 131, in resolve
    self._resolve_one(requirement_set, req)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/resolve.py", line 294, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/resolve.py", line 242, in _get_abstract_dist_for
    self.require_hashes
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 282, in prepare_linked_requirement
    req.populate_link(finder, upgrade_allowed, require_hashes)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/req/req_install.py", line 198, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/index.py", line 792, in find_requirement
    'No matching distribution found for %s' % req
pip._internal.exceptions.DistributionNotFound: No matching distribution found for docutils==0.15.post1 (from -r /tmp/pipenv-7ry13eyx-requirements/pipenv-_7eioysf-requirement.txt (line 1))
An error occurred while installing docutils==0.15.post1 --hash=sha256:ba4584f9107571ced0d2c7f56a5499c696215ba90797849c92d395979da68521! Will try again.
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 1/1 — 00:00:00
Installing initially failed dependencies…
Installing 'docutils'▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/1 — 00:00:00
$ ['/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/bin/pip', 'install', '--verbose', '--upgrade', '--no-deps', '-r', '/tmp/pipenv-7ry13eyx-requirements/pipenv-y1ua0761-requirement.txt', '-i', 'https://pypi.org/simple', '--require-hashes']
Created temporary directory: /tmp/pip-ephem-wheel-cache-3y0jnshm
Created temporary directory: /tmp/pip-req-tracker-8kozur2y
Created requirements tracker '/tmp/pip-req-tracker-8kozur2y'
Created temporary directory: /tmp/pip-install-1nlwfuxf
Collecting docutils==0.15.post1 (from -r /tmp/pipenv-7ry13eyx-requirements/pipenv-y1ua0761-requirement.txt (line 1))
  1 location(s) to search for versions of docutils:
  * https://pypi.org/simple/docutils/
  Getting page https://pypi.org/simple/docutils/
  Looking up "https://pypi.org/simple/docutils/" 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/docutils/ HTTP/1.1" 304 0
  Analyzing links from page https://pypi.org/simple/docutils/
    Found link https://files.pythonhosted.org/packages/3e/a3/381d27fae58a59915440374367712bf2442c3feda26d021263041b3809ba/docutils-0.3.tar.gz#sha256=13d4efb5c105a3440cfc2e4124a455016e9e117e2afda6bf3583142215dca988 (from https://pypi.org/simple/docutils/), version: 0.3
    Found link https://files.pythonhosted.org/packages/b2/ff/5040ee72b3ec93fdeb6fec6c712f684d6811bebf87c413c651c47ab10580/docutils-0.3.5.tar.gz#sha256=45c53691e6ba7e96f60dfa6f93c012749d7d8068489419ef608766ad7f1a340f (from https://pypi.org/simple/docutils/), version: 0.3.5
    Found link https://files.pythonhosted.org/packages/06/f0/ba91d2970562ac496a429c286006fac84c9f51b9296ad0d3a34b5cd0f923/docutils-0.3.7.tar.gz#sha256=a7a81c71caa36b4576f33f8ab2acb62e9fdf868345e8215f1d1b19d83fd7beb4 (from https://pypi.org/simple/docutils/), version: 0.3.7
    Found link https://files.pythonhosted.org/packages/f0/a9/999787bf8b869b7ce2f7b5dd0f9fa1e77154875a8dd5ee0715768913b5b3/docutils-0.3.9.tar.gz#sha256=6b3cbd9b0fae3e2a7c7855e84a8cf9a5237fc2f52a946cbc669ccf7a72e6d1ab (from https://pypi.org/simple/docutils/), version: 0.3.9
    Found link https://files.pythonhosted.org/packages/18/da/9e25e6178d452f1f47e6ca1bbd876038c9fd0df0a64d0a3db40c33071ad1/docutils-0.4.tar.gz#sha256=b81f29e4f39540d06c7d8c0dc1a2c209816c47ce33a66ac50ee28ae38d242c0e (from https://pypi.org/simple/docutils/), version: 0.4
    Found link https://files.pythonhosted.org/packages/9d/21/3585fa6781b78b7fd7e257f64217188e97c775efd9f8c9bac90ced731bb7/docutils-0.5.tar.gz#sha256=747cf984edfca0575addbb42453274a1bdd98ec7780bd37a883dc8b2a66a610e (from https://pypi.org/simple/docutils/), version: 0.5
    Found link https://files.pythonhosted.org/packages/3c/85/3bee168f7fb06c3a48e0af4f6b3d02cfee91dec3a89b116b532ddf819364/docutils-0.6.tar.gz#sha256=04aa91bd644169b23ed02d692f407a2a4e326fbfec9754bce7662fcf59c917f2 (from https://pypi.org/simple/docutils/), version: 0.6
    Found link https://files.pythonhosted.org/packages/6a/30/3891cb6d713bae4dd578493944d5f78bf22b624e81ca76782d68fd6a0d01/docutils-0.7.tar.gz#sha256=cd8dc8e131813af9f4f1963f719611cccf23749dcf703f944bb4ac434393ea03 (from https://pypi.org/simple/docutils/), version: 0.7
    Found link https://files.pythonhosted.org/packages/e5/c0/7f7089b6d380d5d78cb37f5cfd5457959dd79c9e696c37f817a6f24a29be/docutils-0.8.tar.gz#sha256=4aec93d5c3e00c56923751eb940ddd4942c191367e466f5c77cfdd49a9cacbf4 (from https://pypi.org/simple/docutils/), version: 0.8
    Found link https://files.pythonhosted.org/packages/35/8b/b9168ac215c60c92df40fd78551757c3239235497533b74616bb156404aa/docutils-0.8.1.tar.gz#sha256=5a3b776518257a59fefaf48ef1e0635bc1179f8cafb02a9cc84c9644bb25df71 (from https://pypi.org/simple/docutils/), version: 0.8.1
    Found link https://files.pythonhosted.org/packages/13/98/de4fe2d3b085a4f408ec80117489f32ed0564c6d15eca0cf4a45441d8052/docutils-0.9.tar.gz#sha256=ff49bf77e9135490a73740d884b418ab8b982ad16ee52cfe796d059c592ea245 (from https://pypi.org/simple/docutils/), version: 0.9
    Found link https://files.pythonhosted.org/packages/d1/fd/e569a6139d5bfda5574b3a4bd840dd1b23d03fc7fcbb193bd1f450f98cc4/docutils-0.9.1.tar.gz#sha256=e89f187dbbc6674f839239c89fec44af9f18809b66a8a55a41b57b9ee2356994 (from https://pypi.org/simple/docutils/), version: 0.9.1
    Found link https://files.pythonhosted.org/packages/66/40/2b11ec2ec96d527ef933332a5847cc90860fd8bbee46da2cc468794ea25b/docutils-0.10.tar.gz#sha256=370624e61b6773da2f2fb17cc2a4eaea4bb596c3585d13f75ff193c1c738603e (from https://pypi.org/simple/docutils/), version: 0.10
    Found link https://files.pythonhosted.org/packages/7f/49/3ff69dcb212900199462a291886e2f30f57ab3a69dc88e31eda6404a17c0/docutils-0.11.tar.gz#sha256=9af4166adf364447289c5c697bb83c52f1d6f57e77849abcccd6a4a18a5e7ec9 (from https://pypi.org/simple/docutils/), version: 0.11
    Found link https://files.pythonhosted.org/packages/c7/16/29d8de2404c5b90243b51f91315b3ce375169ceb48a68aeec0862e0143c4/docutils-0.12-py3-none-any.whl#sha256=dcebd4928112631626f4c4d0df59787c748404e66dda952110030ea883d3b8cd (from https://pypi.org/simple/docutils/), version: 0.12
    Found link https://files.pythonhosted.org/packages/37/38/ceda70135b9144d84884ae2fc5886c6baac4edea39550f28bcd144c1234d/docutils-0.12.tar.gz#sha256=c7db717810ab6965f66c8cf0398a98c9d8df982da39b4cd7f162911eb89596fa (from https://pypi.org/simple/docutils/), version: 0.12
    Skipping link https://files.pythonhosted.org/packages/5f/6d/e864b3c61b81eec57386ac62082fccfe694c7c3046d8723258a37da6d5fc/docutils-0.13.1-py2-none-any.whl#sha256=de454f1015958450b72641165c08afe7023cd7e3944396448f2fb1b0ccba9d77 (from https://pypi.org/simple/docutils/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/7c/30/8fb30d820c012a6f701a66618ce065b6d61d08ac0a77e47fc7808dbaee47/docutils-0.13.1-py3-none-any.whl#sha256=cb3ebcb09242804f84bdbf0b26504077a054da6772c6f4d625f335cc53ebf94d (from https://pypi.org/simple/docutils/), version: 0.13.1
    Found link https://files.pythonhosted.org/packages/05/25/7b5484aca5d46915493f1fd4ecb63c38c333bd32aa9ad6e19da8d08895ae/docutils-0.13.1.tar.gz#sha256=718c0f5fb677be0f34b781e04241c4067cbd9327b66bdd8e763201130f5175be (from https://pypi.org/simple/docutils/), version: 0.13.1
    Found link https://files.pythonhosted.org/packages/05/fd/d62c2944d9df894b07eaa7430decc4c80977e644922a85fbdec337d6af82/docutils-0.14rc1.tar.gz#sha256=7ee93a6fbab0f46bdda4d94384de40a04bbbbb53dbd019ce0fbbbfed22f6589a (from https://pypi.org/simple/docutils/), version: 0.14rc1
    Found link https://files.pythonhosted.org/packages/6b/57/6e68a5457ea9579f970d7854c090a6c991c8ab481df12e6be25ff505a4b0/docutils-0.14rc2.tar.gz#sha256=3caee0bcb2a49fdf24fcfa70849a60abb7a181aa68b030f7cb7494096181830c (from https://pypi.org/simple/docutils/), version: 0.14rc2
    Skipping link https://files.pythonhosted.org/packages/50/09/c53398e0005b11f7ffb27b7aa720c617aba53be4fb4f4f3f06b9b5c60f28/docutils-0.14-py2-none-any.whl#sha256=7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6 (from https://pypi.org/simple/docutils/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/36/fa/08e9e6e0e3cbd1d362c3bbee8d01d0aedb2155c4ac112b19ef3cae8eed8d/docutils-0.14-py3-none-any.whl#sha256=02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6 (from https://pypi.org/simple/docutils/), version: 0.14
    Found link https://files.pythonhosted.org/packages/84/f4/5771e41fdf52aabebbadecc9381d11dea0fa34e4759b4071244fa094804c/docutils-0.14.tar.gz#sha256=51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274 (from https://pypi.org/simple/docutils/), version: 0.14
    Found link https://files.pythonhosted.org/packages/ca/83/812ae4de24209ef41e967fdb635d10a8ef2f7555dd510d3e562b707b2643/docutils-0.15-py3-none-any.whl#sha256=d2ddba74835cb090a1b627d3de4e7835c628d07ee461f7b4480f51af2fe4d448 (from https://pypi.org/simple/docutils/), version: 0.15
    Skipping link https://files.pythonhosted.org/packages/d2/d8/06e83efbfafab5d342df8835f3aa81c1dbfadedbea39cc2d2f93742938a4/docutils-0.15.post1-py2-none-any.whl#sha256=ba4584f9107571ced0d2c7f56a5499c696215ba90797849c92d395979da68521 (from https://pypi.org/simple/docutils/); it is not compatible with this Python
    Found link https://files.pythonhosted.org/packages/72/0b/d728058694261c99fd5980419d77e1c4d63a390b26a6a0ea7f0993cd5c57/docutils-0.15.tar.gz#sha256=54a349c622ff31c91cbec43b0b512f113b5b24daf00e2ea530bb1bd9aac14849 (from https://pypi.org/simple/docutils/), version: 0.15
Cleaning up...
Removed build tracker '/tmp/pip-req-tracker-8kozur2y'
Exception information:
Traceback (most recent call last):
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 178, in main
    status = self.run(options, args)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 352, in run
    resolver.resolve(requirement_set)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/resolve.py", line 131, in resolve
    self._resolve_one(requirement_set, req)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/resolve.py", line 294, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/resolve.py", line 242, in _get_abstract_dist_for
    self.require_hashes
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 282, in prepare_linked_requirement
    req.populate_link(finder, upgrade_allowed, require_hashes)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/req/req_install.py", line 198, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/home/adam/.local/share/virtualenvs/reproducer-OJ9QCKUl/lib/python3.7/site-packages/pip/_internal/index.py", line 792, in find_requirement
    'No matching distribution found for %s' % req
pip._internal.exceptions.DistributionNotFound: No matching distribution found for docutils==0.15.post1 (from -r /tmp/pipenv-7ry13eyx-requirements/pipenv-y1ua0761-requirement.txt (line 1))
Traceback (most recent call last):
  File "/home/adam/.local/bin/pipenv", line 10, in <module>
    sys.exit(cli())
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 64, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/cli/command.py", line 254, in install
    editable_packages=state.installstate.editables,
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/core.py", line 1992, in do_install
    skip_lock=skip_lock,
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/core.py", line 1253, in do_init
    pypi_mirror=pypi_mirror,
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/core.py", line 859, in do_install_dependencies
    retry_list, procs, failed_deps_queue, requirements_dir, **install_kwargs
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/core.py", line 763, in batch_install
    _cleanup_procs(procs, not blocking, failed_deps_queue, retry=retry)
  File "/home/adam/.local/lib/python3.7/site-packages/pipenv/core.py", line 681, in _cleanup_procs
    raise exceptions.InstallError(c.dep.name, extra=err_lines)
pipenv.exceptions.InstallError: ERROR: ERROR: Package installation failed...
  ☤  ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/1 — 00:00:00

Steps to replicate

  • mkdir test
  • cd test
  • pipenv install --three docutils

$ pipenv --support

Pipenv version: '2018.11.26'

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

Python location: '/usr/bin/python'

Python installations found:

  • 3.7.3: /usr/bin/python3
  • 3.7.3: /usr/bin/python3.7m
  • 3.6.9: /usr/bin/python3.6
  • 3.6.9: /usr/bin/python3.6m
  • 2.7.16: /usr/bin/python2

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '3.7.3',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '5.2.1-arch1-1-ARCH',
 'platform_system': 'Linux',
 'platform_version': '#1 SMP PREEMPT Sun Jul 14 14:52:52 UTC 2019',
 'python_full_version': '3.7.3',
 'python_version': '3.7',
 'sys_platform': 'linux'}

System environment variables:

  • PATH
  • SSH_AUTH_SOCK
  • PAGER
  • SSH_AGENT_PID
  • LANG
  • LESS_TERMCAP_me
  • _JAVA_OPTIONS
  • MOZ_PLUGIN_PATH
  • WINDOWID
  • CUDA_PATH
  • SHLVL
  • GTK_CSD
  • LESS_TERMCAP_us
  • HOME
  • XDG_CONFIG_HOME
  • USER
  • OLDPWD
  • QT_AUTO_SCREEN_SCALE_FACTOR
  • DBUS_SESSION_BUS_ADDRESS
  • XDG_VTNR
  • XDG_SEAT
  • GTK_MODULES
  • LESS_TERMCAP_mb
  • CLOUDSDK_PYTHON_ARGS
  • LS_COLORS
  • LESS_TERMCAP_so
  • GTK_THEME
  • JOURNAL_STREAM
  • CLOUDSDK_ROOT_DIR
  • WINDOWPATH
  • MAIL
  • LOGNAME
  • GDK_DPI_SCALE
  • VTE_VERSION
  • LESS_TERMCAP_ue
  • XDG_RUNTIME_DIR
  • _
  • LESS_TERMCAP_se
  • SHELL
  • XDG_SESSION_TYPE
  • XDG_SESSION_ID
  • CLOUDSDK_PYTHON
  • GEM_HOME
  • EDITOR
  • GPG_TTY
  • INVOCATION_ID
  • LD_PRELOAD
  • XAUTHORITY
  • GOOGLE_CLOUD_SDK_HOME
  • COLORTERM
  • XDG_SESSION_CLASS
  • TERM
  • PWD
  • DISPLAY
  • LESS_TERMCAP_md
  • LC_MESSAGES
  • 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: /opt/google-cloud-sdk/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/adam/.cabal/bin:/home/adam/.gem/ruby/2.6.0/bin:/home/adam/.cabal/bin:/home/adam/.gem/ruby/2.6.0/bin:/home/adam/.local/bin
  • SHELL: /bin/zsh
  • EDITOR: vim
  • LANG: en_US.UTF-8
  • PWD: /home/adam/tmp/reproducer

Contents of Pipfile (‘/home/adam/tmp/reproducer/Pipfile’):

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

[dev-packages]

[packages]
docutils = "*"

[requires]
python_version = "3.7"

Contents of Pipfile.lock (‘/home/adam/tmp/reproducer/Pipfile.lock’):

{
    "_meta": {
        "hash": {
            "sha256": "889db584edefe8dd0ef05061f489014e51b666d5f9fe8c7c8b23724182c8fbe9"
        },
        "pipfile-spec": 6,
        "requires": {
            "python_version": "3.7"
        },
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "docutils": {
            "hashes": [
                "sha256:ba4584f9107571ced0d2c7f56a5499c696215ba90797849c92d395979da68521"
            ],
            "index": "pypi",
            "version": "==0.15.post1"
        }
    },
    "develop": {}
}

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:38
  • Comments:15 (7 by maintainers)

github_iconTop GitHub Comments

12reactions
adam-dejcommented, Jul 23, 2019

I would like to request this issue to be reopened for the following reasons:

  • Similar to @node13h, docutils is not a direct dependency of my project. Including it in Pipfile to pin its version would create a false impression, and a manual overhead in monitoring its version and resolving which version is the best for me during upgrade (which Pipenv should be doing).
  • This package can be correctly installed using pip, and also using poetry. There is something wrong with the dependency resolution process of Pipenv, and it breaks projects which run pipenv lock and (directly or indirectly) depend on docutils.
  • Is this “inconsistent release” actually disallowed on PyPI? If not, then leaving this issue unaddressed could mean that (from the point of view of the user) Pipenv is unable to install a perfectly valid package from PyPI.
9reactions
node13hcommented, Jul 22, 2019

In my case docutils is not a direct dependency (my project -> twine - > readme-renderer -> docutils) therefore pinning it to a specific version in Pipfile (as a workaround) would give a false impression it is now a direct dependency of my project

Read more comments on GitHub >

github_iconTop Results From Across the Web

Advanced Usage of Pipenv - Read the Docs
Or you can install packages exactly as specified in Pipfile.lock using the sync command: $ pipenv sync ... No package provided, installing all...
Read more >
PyPI packages in the Package Registry - GitLab Docs
Publish a PyPI package. Prerequisites: You must authenticate with the Package Registry. Your version string must be valid. The maximum allowed package size...
Read more >
Pipenv stuck " Locking..." - python - Stack Overflow
$ pipenv lock is used to create a Pipfile.lock, which declares all dependencies (and sub-dependencies) of your project, their latest available ...
Read more >
pipenv Documentation - Read the Docs
If you're on Linux and installed using your OS package manager, you may have to ... Pipenv will install version 1.2 and any...
Read more >
Common Pipenv Errors and How to Solve Them: Why Won't it ...
Pipfile won't lock when it tries to install packages that don't exist, i.e., typos. ... Pipenv looks for the package you specify, whether...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found