Pipenv: Installing certain packages throws piptools.exceptions.NoCandidateFound exception

Created on 17 Sep 2017  路  6Comments  路  Source: pypa/pipenv

When trying to install jupyter through pipenv I get a piptools.exceptions.NoCandidateFound exception for the entrypoints package:

Traceback (most recent call last):
  File "c:\programs\python36\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\programs\python36\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Programs\Python36\Scripts\pipenv.exe\__main__.py", line 9, in <module>
  File "c:\programs\python36\lib\site-packages\pipenv\vendor\click\core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "c:\programs\python36\lib\site-packages\pipenv\vendor\click\core.py", line 697, in main
    rv = self.invoke(ctx)
  File "c:\programs\python36\lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "c:\programs\python36\lib\site-packages\pipenv\vendor\click\core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "c:\programs\python36\lib\site-packages\pipenv\vendor\click\core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "c:\programs\python36\lib\site-packages\pipenv\cli.py", line 1387, in install
    do_init(dev=dev, allow_global=system, ignore_pipfile=ignore_pipfile, skip_lock=skip_lock, verbose=verbose)
  File "c:\programs\python36\lib\site-packages\pipenv\cli.py", line 1042, in do_init
    do_lock()
  File "c:\programs\python36\lib\site-packages\pipenv\cli.py", line 858, in do_lock
    which('python') if project.required_python_version else None
  File "c:\programs\python36\lib\site-packages\pipenv\utils.py", line 112, in resolve_deps
    resolved_tree = resolver.resolve()
  File "c:\programs\python36\lib\site-packages\piptools\resolver.py", line 107, in resolve
    has_changed, best_matches = self._resolve_one_round()
  File "c:\programs\python36\lib\site-packages\piptools\resolver.py", line 187, in _resolve_one_round
    best_matches = set(self.get_best_match(ireq) for ireq in constraints)
  File "c:\programs\python36\lib\site-packages\piptools\resolver.py", line 187, in <genexpr>
    best_matches = set(self.get_best_match(ireq) for ireq in constraints)
  File "c:\programs\python36\lib\site-packages\piptools\resolver.py", line 245, in get_best_match
    best_match = self.repository.find_best_match(ireq, prereleases=self.prereleases)
  File "c:\programs\python36\lib\site-packages\piptools\repositories\pypi.py", line 116, in find_best_match
    raise NoCandidateFound(ireq, all_candidates)
piptools.exceptions.NoCandidateFound: Could not find a version that matches entrypoints>=0.2.2
Tried: (no version found at all)

Note that jupyter installs fine with either pip or pip-tools. You can reproduce this error just by trying pipenv install jupyter.

OS: Windows 10 Pro 64-bit
Python version: 3.6.2 64-bit

Most helpful comment

fixed! released.

All 6 comments

That's weird.

i think this is a bug in pip-tools, not pipenv.

This works fine if you specify your version of Python in your Pipfile:

[requires]
python_version = '3.6'

or

[requires]
python_version = '2.7'

fixed! released.

Wow, lightning fast response from @kennethreitz !! Many thanks, it works properly now.

Was this page helpful?
0 / 5 - 0 ratings