Плагин Twistd не найден после обновления Debian

После того, как я перешел с Debian Jessie на растяжку, twistd больше не находит мой плагин. Я не мог найти, что не так. Я думаю, мне нужно указать какой-то путь сейчас, который не был необходим раньше или похожий.

Я получаю ошибку /usr/bin/twistd: Unknown command: otfbot и в списке команд, две команды программного обеспечения больше не перечислены. Структура каталогов плагинов для витых есть

twisted/plugins/genconfig_plugin.py
twisted/plugins/otfbot_plugin.py

И то, и другое создает экземпляр ServiceMaker.

1 ответ

Решение

В Twisted 16.4 убрана особенность twistd (а также trial и все другие сценарии Twisted командной строки), которые заставили его добавить текущий рабочий каталог в sys.path, Если вы полагались на свой рабочий каталог, чтобы разрешить поиск своего кода при использовании версии Twisted старше 16.4 (Debian Jessie включает в себя 14.0.2), и вы обновились до версии 16.4 или новее (Debian Stretch включает 16.6.0) Теперь вы должны явно добавить нужные каталоги в путь импорта самостоятельно, возможно, установив virtualenv или установив PYTHONPATH непосредственно.

Это было случайное изменение, и оно не задокументировано в примечаниях к выпуску (несмотря на очевидные, запутанные последствия для пользователя).

Для более подробной информации, вы можете прочитать эту ветку списка рассылки:

http://twistedmatrix.com/pipermail/twisted-python/2016-September/030780.html
Другие вопросы по тегам