Bug 43544
| Summary: | Некорректные import зависимости для __import__ | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Stanislav Levin <slev> |
| Component: | rpm-build-python3 | Assignee: | kotopesutility <kotopesutility> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P5 | CC: | darktemplar, george, glebfm, imz, kotopesutility, ldv, slev, vitty |
| Version: | unstable | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
Daniel Zagaynov (kotopesutility@), вы собираете rpm-build-python3 0.1.20-alt1 с неизвестными исправлениями парсера (было бы здорово завести трэкер, чтобы понимать что именно фиксится). Есть ли желание посмотреть эту проблему? если нет, то могу попробовать поправить (спрашиваю, чтобы избежать пересечения по фиксам и недопонимания). Исправлено в rpm-build-python3 0.1.23-alt1 (17.08.2023): поиск зависимостей перенесён в py3dephell. Проверил на текущем 0.1.30-alt1 с примером из репорта: ложных зависимостей python3(%s) и python3(pywikibot.userinterfaces.%s_interface) больше нет. |

Description
Stanislav Levin 2022-08-16 17:29:12 MSKНа вход python3.req.py даем: ``` [user@host dir]$ cat foo.py uiModule = __import__('pywikibot.userinterfaces.%s_interface' % config.userinterface, fromlist=['UI']) module = __import__('%s' % module_name) ``` На выходе получаем: python3(%s) python3(pywikibot.userinterfaces.%s_interface) Немного диагностики: ``` (Pdb) bt /usr/lib/rpm/python3.req.py(249)<module>() -> dependencies, relative_dependencies = read_ast_tree(code, file_name, REQ) > /usr/lib/rpm/python3.req.py(68)read_ast_tree() -> relative_dep.add(chuck_norris.args[0].left.value) (Pdb) type(chuck_norris.args[0]) <class 'ast.BinOp'> (Pdb) type(chuck_norris.args[0].left.value) != ast.Attribute True (Pdb) type(chuck_norris.args[0].left.value) <class 'str'> ```