После установки пакета BitTorrent-bencode либо через easy_install BitTorrent-bencode
или pip install BitTorrent-bencode
, либо скачав tarball и установив его через easy_install $tarball
, я обнаружил, что /usr/local/lib/python2.6/dist-packages/BitTorrent_bencode-5.0.8-py2.6.egg/
содержит EGG-INFO/
и test/
каталогов. Хотя оба эти подкаталога содержат файлы, в самом каталоге BitTorr*
нет файлов. В tar-архиве содержится bencode.py
, который является фактическим источником для этого пакета, но он не установлен ни одним из этих утилит.
Я довольно новичок во всем этом, поэтому я не уверен, что это проблема с пакетом или с тем, что я делаю. Пакет был упакован некоторое время назад (2007), поэтому, возможно, он использует устаревший аспект конфигурации, для которого мне нужно предоставить флаг командной строки.
Мне больше интересно узнать, что не так с пакетом или моими процедурами, чем установить этот конкретный пакет; есть еще один пакет под названием hunnyb , который, кажется, достаточно хорошо справляется с декодированием закодированных данных. В основном я хотел бы знать, как бороться с такими проблемами в других пакетах. Я также хотел бы сообщить сопровождающему пакета о необходимости обновления пакета.
редактировать
@ Андрей Попп объясняет, что проблема, скорее всего, в файле setup.py. Полагаю, что единственный способ получить ответ на свой вопрос - это R-ing TFM . Однако, поскольку у меня, скорее всего, еще не будет времени сделать это тщательно, я разместил файл setup.py здесь .
Быстрый просмотр руководства easy_install показывает, что функция find_modules (), которую использует этот модуль setup.py, ищет файлы с именем __init__.py
в пакете. Файл исходного кода, о котором идет речь, называется bencode.py
, поэтому, возможно, в этом и заключается проблема: он должен называться __init__.py
?
редактировать 2
Теперь, изучив упаковку Python, я понял, что проблема в том, что этот модуль использует setuptools.find_packages
, и имеет свой источник в корне своей структуры каталогов, но ничего не передал в package_dir
. Казалось бы, это довольно тривиально исправить. Тем не менее, автор не доступен своей контактной информацией PyPI. На странице PyPI модуля также указан «Владелец индекса пакетов». Я не уверен, что это должно означать, но мне удалось связаться с этим человеком, который, я думаю, возможно, не в состоянии поддерживать модуль. В любом случае, он все еще в том же состоянии, в котором я разместил этот вопрос еще в июне.
Учитывая, что модуль кажется более или менее заброшенным, и что в hunnyb есть подходящая замена для него, я согласился, что ответ @ andreypopp примерно такой же, как и я собираюсь получить.