Всем привет! Последние таски по обновлению Python выглядят пугающее: объем пересобираемых пакетов невероятно огромный и постоянно растет из-за чего обновление самого Python в Sisyphus происходит дольше, чем в апстриме... Я прошу обратить внимание на эту проблему куда большую часть сообщества и принять хоть какое-нибудь решение, которое не оставит все как есть. А под "хоть какое-нибудь решение" я имею ввиду единственное, на данный момент предложенное. Читать тут: https://bugzilla.altlinux.org/show_bug.cgi?id=55340#c5 https://bugzilla.altlinux.org/56201 Сейчас чуть подробнее введу в курс (небольшая, но важная выжимка из https://docs.python.org/3/c-api/stable.html). * Stable ABI — это набор символов в CPython, которые остаются бинарно- совместимыми для различных минорных версий Python 3.X. Экстеншн, собранный под Stable ABI (и правильно использующий Limited API), должен работать без пересборки на всех минорных версиях Python, начиная с той, для которой он был скомпилирован. Такие модули часто имеют в имени файла тег abi3 (например, mymodule.abi3.so) * Limited C API — это подмножество C API Python, использование которого гарантирует совместимость с Stable ABI. * Интерпретатор Python не проверяет, действительно ли модуль с тегом abi3 соответствует Stable ABI. Ответственность за обеспечение корректности лежит на мейнтейнере. В Sisyphus сейчас есть модули с тэгом abi3 (будем надеятся, что они соблюдают Stable ABI) и собранные для конкретной минорной версии Python. Текущая идея сборки компилируемых модулей заключается в том, чтобы везде ставить зависимость на %python3_ABI_dep. Естественно, это приводит к тому, что у нас сейчас при обновлении Python мучается один бедный grenka, а все сидят и смотрят на это в ожидании окончания (кто-то даже успевает продлять ему муки). В общем, идея решения заключается в том, чтобы для модулей, собираемых под Stable ABI эту зависимость не генерировать и как-нибудь проверять, что там действительно Stable ABI. Для этого есть инструмент abi3audit, собираемый в этом задании: https://packages.altlinux.org/tasks/396283 -- Anton Zhukharev ALT Linux Team