Ошибка в сторонней зависимости создает дилемму упаковки Python - PullRequest
1 голос
/ 24 июля 2010

Я разработчик программного проекта для Linux, который использует Python и PyGTK.Программа, которую мы пишем, зависит от ряда сторонних пакетов, которые доступны во всех репозиториях Mayor Distro.Одним из них является привязка Python (написана на C), которая позволяет нашей программе общаться с общей библиотекой C.К сожалению, в привязках есть ошибка, которая сильно влияет на нашу программу.Недавно было представлено исправление / патч, но оно еще не было зафиксировано.Мы хотим включить это исправление как можно скорее, но не уверены в том, что будет наилучший курс действий.

Основываясь на описанном мной сценарии, мы решили, что у нас есть следующие варианты.Надеемся, что кто-то может дать более глубокое понимание или, возможно, указать нам на решение, которое мы еще не рассмотрели

  • Подождите, пока привязки Python будут обновлены. Проблема в том, что у нас нет возможности узнать, когда обновление будет принято в дистрибутивные репозитории, или даже если оно будет перенесено в более ранние версии.
  • Включить измененную версиюпривязки python, включая исправление с нашей программой, и пользователи должны скомпилировать его при установке. Это создаст бремя для упаковщиков, поскольку каждая версия каждого дистрибутива будет ссылаться на другую версию библиотеки C.
  • Переписать нашу программу на C ++ и избегать совместной работы с привязками Python. Да, на самом деле, учитывая это хе-хе.
  • Держите уродливый хак, который у нас на месте, нетронутым. Не желательно, очевидно, как это, ну, уродливый взломать

Заранее спасибо!

1 Ответ

2 голосов
/ 24 июля 2010

Пока уродливый хак работает, используйте его.Он будет иметь недостатки локально для вашего пакета .Кроме того, вы можете постепенно (значительно) отказаться от него, потребовав безошибочную версию вашей зависимости, когда она будет выпущена и доступна в течение некоторого времени, чтобы дистрибутивы могли начать ее отправку.

...