Bug 49289 - python3-module-setuptools требуется разными пакетами
Summary: python3-module-setuptools требуется разными пакетами
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: python3-module-setuptools (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Vitaly Lipatov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-02-04 00:38 MSK by Vitaly Lipatov
Modified: 2024-03-02 23:04 MSK (History)
19 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vitaly Lipatov 2024-02-04 00:38:16 MSK
setuptools требуется разными пакетами, многие из которых с виду не должны быть связаны с setuptools.
 # rpm -ev python3-module-setuptools
error: Failed dependencies:
	python3(setuptools) < 0 is needed by (installed) python3-module-libsass-0.22.0-alt1.x86_64
	python3(setuptools) < 0 is needed by (installed) lirc-config-0.10.1-alt6.1.x86_64
	python3(setuptools) < 0 is needed by (installed) python3-module-behave-1.2.6-alt7.noarch
	python3(setuptools) < 0 is needed by (installed) python3-module-metaextract-1.0.9-alt3.noarch
	python3(setuptools) < 0 is needed by (installed) breezy-3.2.2-alt1.2.x86_64
	python3(setuptools) < 0 is needed by (installed) python3-module-include_server-3.4-alt10.x86_64
	python3(setuptools) < 0 is needed by (installed) python3-module-isort-5.12.0-alt1.1.noarch
	python3(setuptools._distutils) is needed by (installed) python3-module-Cython-3.0.7-alt1.x86_64
	python3(setuptools._distutils) < 0 is needed by (installed) breezy-3.2.2-alt1.2.x86_64
	python3(setuptools._distutils) is needed by (installed) python3-module-pygobject-2.28.6-alt15.x86_64
	python3(setuptools._distutils) is needed by (installed) glib2-devel-2.78.4-alt1.x86_64
	python3(setuptools._distutils.dep_util) < 0 is needed by (installed) breezy-3.2.2-alt1.2.x86_64
	python3(setuptools.command.build_ext) < 0 is needed by (installed) python3-module-scikit-learn-1.3.0-alt3.x86_64
	python3(setuptools.command.sdist) < 0 is needed by (installed) python3-module-libsass-0.22.0-alt1.x86_64
	python3(setuptools.command.test) < 0 is needed by (installed) python3-module-zope.testrunner-6.2.1-alt1.x86_64
	python3-module-setuptools is needed by (installed) python3-module-daemon-3.0.1-alt1.noarch
Comment 1 Grigory Ustinov 2024-02-04 00:46:10 MSK
Ну вот добрая половина - это последствия грязного хака по избавлению от distutils.
Comment 2 Vitaly Lipatov 2024-02-04 00:57:30 MSK
Я правильно понимаю, что в некоторых случаях разработчики, не подумав, использовали функции из distutils или setuptools, что вызывает на них нежелательную зависимость, поэтому что эти модули являются зависимостью, необходимую для сборки, а не для работы.
Comment 3 Grigory Ustinov 2024-02-04 01:32:07 MSK
Виталий, в вышеуказанных модулях, distutils использовался в рантайме. Поскольку этот модуль перестал быть частью питона, пришлось воспользоваться его копией в пакете setuptools. Там где distutils нужен именно для сборки, мы указываем только сборочную зависимость. Иными словами, я бы не назвал это ошибкой, а планом по улучшению пакетной базы. По возможности от distutils надо отказываться.

Всё, где апстрим это сделал сам, мы приложили патчи, в остальных пакетах, где была возможность самим исправить, следуя советам https://peps.python.org/pep-0632/#migration-advice - мы пропатчили. Остались несколько пакетов, в которых избавиться от этой библиотеки не так просто.
Comment 4 Vitaly Lipatov 2024-03-02 23:04:15 MSK
Забыл написать главную неприятность:
У python3-module-setuptools зависимость на python3-dev.