`pip3 search aiohttp` показывает обновленную версию, но не устанавливает - PullRequest
0 голосов
/ 28 августа 2018

Я устанавливаю пакет python, который зависит от aiohttp, версия> = 3. pip3 search aiohttp возвращает:

aiohttp (3.3.2)  - Async http client/server framework (asyncio)
  INSTALLED: 2.3.10
  LATEST:    3.3.2

Так почему же pip3 install --upgrade --user aiohttp отвечает, что оно уже обновлено, а pip3 install --user aiohttp==3.3.2 говорит:

Could not find a version that satisfies the requirement aiohttp==3.3.2 [... snip ...] No matching distribution found for aiohttp==3.3.2

Я использую Ubuntu 16.04, Python v.3.5.2 и pip3 v.18.0. Последнее является обновлением до версии v.8.1.1 системы из пакета apt python3-pip. Pip3 был обновлен локально с использованием pip3 upgrade --user, чтобы не конфликтовать с системными пакетами.

1 Ответ

0 голосов
/ 28 августа 2018

Версия 3 aiohttp требует, чтобы Python был как минимум версии 3.5.3; документация объясняет:

Почему бы не 3.5.0 ? Поскольку 3.5.3 имеет решающее изменение: asyncio.get_event_loop() возвращает рабочий цикл вместо default , который может быть другим, например ::

loop = asyncio.new_event_loop()
loop.run_until_complete(f())

Обратите внимание, asyncio.set_event_loop() не был вызван, и цикл по умолчанию не равен фактически выполненному.

В результате pip, работающий на Python 3.5.2 или более ранней версии, будет игнорировать aiohttp v3 при установке; тот факт, что более новая версия все еще отображается под pip search, возможно, является ошибкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...