рецепты py2app - PullRequest
       18

рецепты py2app

4 голосов
/ 30 марта 2010

В документации py2app упоминаются предписания, которые запускаются __boot__.py до основного сценария python. Я не смог найти способ легко указать какой-либо предписание в файле setup.py или в процессе сборки.

Мне, однако, удалось «взломать» __boot__.py вручную и добавить еще одну команду _run(prescript) перед моей основной _run(main_script), и, похоже, она работала нормально. Однако было бы намного лучше использовать стандартный процесс сборки py2app.

То, что я по сути пытаюсь сделать, - это обезьяна-патч моего файла sites-packages.zip перед запуском основного скрипта. Рецепт по существу проверяет наличие обновлений на сервере и, если они есть, загружает их, а затем перезаписывает файл site-packages.zip. Гораздо быстрее, чем переустанавливать приложение с нуля.

Есть идеи?

1 Ответ

2 голосов
/ 30 марта 2010

См. документы : ваш пакет py2app.recipes должен содержать рецепт, метод которого check возвращает dict, включая ключ 'prescripts', значение которого, и я цитирую,

Список дополнительных скриптов Python для запустить до инициализации основного скрипт. Это часто используется для Обезьяна-патч включены модули, так что они работают в замороженной среде. рецепты могут быть именами модулей, файлов имена или файловые объекты, содержащие Код Python (например, StringIO). Обратите внимание, что если используется подобный файлу объект, он будет в настоящее время не будет сканироваться для дополнительные зависимости.

См. встроенные источники рецептов для примеров. В этом пакете (установленном на вашем компьютере) вам нужно будет добавить свои собственные рецепты.

...