Removed the parser module, which was deprecated in 3.9 due to the switch to the new PEG parser, as well as all the C source and header files that were only being used by the old parser, including node.h, parser.h, graminit.h and grammar.h. (https://github.com/python/cpython/blob/main/Doc/whatsnew/3.10.rst) По-русски говоря, это блокер для обновления python3 до 3.10. Сборка, очевидно, заканчивается вот так: find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,rpmlib,shebang,shell,static,symlinks,systemd-services,tcl) Traceback (most recent call last): File "/usr/lib/rpm/python3.req.py", line 6, in <module> import parser, symbol, token, types ModuleNotFoundError: No module named 'parser' find-requires: ERROR: /usr/lib/rpm/python3.req failed error: /bin/sh failed error: Failed to find Requires
Если grep не ошибается, parser используется единожды, и для какой-то слегка побочной цели. Сейчас попробую пофиксить.
«Ой, нет, совсем не прямо!» ©Alice Но всё равно попробую
(Ответ для Fr. Br. George на комментарий #1) > Если grep не ошибается, parser используется единожды, и для какой-то слегка > побочной цели. Сейчас попробую пофиксить. Зато symbol используется несколько раз.
Я переписал python3.req.py, избежав использование модулей parser и symbol, используя ast. Я все довольно подробно описал в своем письме: https://lists.altlinux.org/pipermail/devel/2021-November/215681.html. Пересборка icarus прошла успешно, за исключением ряда пакетов, которые вряд ли живые, но при необходимости я же их и пересоберу (см. задание 288864). Задание для sisyphus уже собрано (см. 290420), поэтому, наверное, можно считать проблему решенной.
Круто, спасибо большое, Данила!