Heroku TypeError: parse_requirements() отсутствует 1 требуемый аргумент ключевого слова: 'session'

Я пытаюсь перенести приложение в стек кедра-14 из кедра на Heroku. В моем файле requirements.txt у меня есть:

....
robobrowser==0.5.1
....

Когда я пытаюсь развернуть, нажав проект на герою, я получаю:

Collecting robobrowser==0.5.1 (from -r requirements.txt (line 17))
     Downloading robobrowser-0.5.1.tar.gz
       Traceback (most recent call last):
         File "<string>", line 20, in <module>
         File "/tmp/pip-build-PqCF2A/robobrowser/setup.py", line 38, in <module>
           for requirement in parse_requirements('requirements.txt')
         File "/app/.heroku/python/lib/python2.7/site-packages/pip-6.0.6-py2.7.egg/pip/req/req_file.py", line 19, in parse_requirements
           "parse_requirements() missing 1 required keyword argument: "
       TypeError: parse_requirements() missing 1 required keyword argument: 'session'
       Complete output from command python setup.py egg_info:
       Traceback (most recent call last):

         File "<string>", line 20, in <module>

         File "/tmp/pip-build-PqCF2A/robobrowser/setup.py", line 38, in <module>

           for requirement in parse_requirements('requirements.txt')

         File "/app/.heroku/python/lib/python2.7/site-packages/pip-6.0.6-py2.7.egg/pip/req/req_file.py", line 19, in parse_requirements

           "parse_requirements() missing 1 required keyword argument: "

       TypeError: parse_requirements() missing 1 required keyword argument: 'session'

       ----------------------------------------
       Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-PqCF2A/robobrowser

Как я могу это исправить?

Ответы

Ответ 1

В трекере robobrowser github issue есть открытая проблема и запрос на перенос:

Подождите, пока он будет слит, или установите robobrowser из fork:

$ pip install git+https://github.com/xxinfinityxx/robobrowser

Возможно, также будет вариант понижения рейтинга pip, но я не уверен, что у вас есть контроль над версией, используемой для использования на герою.

Ответ 2

Я столкнулся с этой проблемой при установке wabbit_wappa для Python. Я "исправил" его, изменив строку в setup.py из:

install_reqs = parse_requirements('requirements.txt')

к

install_reqs = parse_requirements('requirements.txt', session=False)

и он установлен просто отлично.

Ответ 3

Попробуйте обновить pip:

sudo pip install --upgrade pip

Это устранило проблему для меня.

Ответ 4

У меня есть текущая новейшая версия pip, и это сделало это для меня:

install_requirements = parse_requirements('requirements.txt', session=pip.download.PipSession())