Pip не устанавливает последнюю доступную версию из pypi (в данном случае argparse)

Эта проблема

В последнее время я работал над некоторыми проектами на Python и у меня было много проблем сpip не устанавливать последние версии некоторых требований. Я наosx и я использовалзаваривать установитьPython 2.7.6, В проекте, над которым я работаю, мы простоpip install -r requirements.txt, В текущем случае мне нужно было установитьargparse==1.2.1, Это актуальная последняя показанная версияна сайте Pypi

Вот мой вывод

Downloading/unpacking argparse==1.2.1 (from -r requirements.txt (line 4))
Could not find a version that satisfies the requirement argparse==1.2.1 (from -r requirements.txt (line 4)) (from versions: 0.1.0, 0.2.0, 0.3.0, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.9.1, 1.0.1, 1.0, 1.1)
Some externally hosted files were ignored (use --allow-external to allow).
Cleaning up...
No distributions matching the version for argparse==1.2.1 (from -r requirements.txt (line 4))

У меня были похожие проблемы с различными требованиями, такими какmatplotlib который я установил вручную, как видноВот.

Как вы можете видеть, pip на моем Mac имеет только те версии argparse:0.1.0, 0.2.0, 0.3.0, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.9.1, 1.0.1, 1.0, 1.1

Попытки исправить

Я попытался переустановить Python сbrew reinstall pythonЗатем также попытался переустановить все мои установленные пакеты Python с помощью некоторого волшебства xargs:pip freeze | xargs -I {} sudo pip install {} --upgrade --force-reinstall.

При попытке переустановить все, у меня были проблемы с большинством пакетов:error: invalid command 'egg_info', Я понял, у меня был старыйsetuptools так что яpip install --upgrade setuptools и я мог бы теперь переустановить все, но все же, та же проблема сargparse, Все та же проблема с argparse.

Я попросил друга с недавно установленным OSXpip install argparse и он получил1.1 Итак, я настроилprecise32 бродячая коробка для чистой установки Ubuntu сpython-dev + libevent-dev и не было никаких проблем при установкеargparse==1.2.1.

Temp fix

Чтобы продолжить работу над проектом, я установил argparse 1.1 на osx, и, похоже, он отлично работает для того, над чем я работаю.

Вопросы

Я не очень хорош с pypi (пока), но есть ли какая-то причина, почему я не получаю последние версии, показанные на pypi? Похоже, что не все библиотеки Pypi доступны для OSX. Есть ли способ узнать доступность версии для разных ОС?

Изменить: решение внутри

argparse1.1 кажется такой же, как1.2.1 как показано на этом выходе

vagrant@precise32:~$ python
Python 2.7.3 (default, Sep 26 2013, 20:08:41)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import argparse
>>> argparse.__version__
'1.1'
>>> quit()
vagrant@precise32:~$ pip freeze | grep argparse
argparse==1.2.1

Я пытался использовать--allow-external на OSX, но не понял, что нужно снова имя пакета.

sudo pip install argparse --allow-external argparse --upgrade

и вуаля :)

argparse an externally hosted file and may be unreliable
Downloading/unpacking argparse from http://argparse.googlecode.com/files/argparse-1.2.1.tar.gz#md5=2fbef8cb61e506c706957ab6e135840c
  Downloading argparse-1.2.1.tar.gz (69kB): 69kB downloaded

Как указал Питер, последняя версия пипаdefault to disallowing externally hosted files.

Ответы на вопрос(2)

Ваш ответ на вопрос