FS#48787 - [python-packaging]: python packages can't be build by using only core+extra repositories
Attached to Project:
Arch Linux
Opened by Alexander D. Kanevskiy (kad) - Saturday, 02 April 2016, 23:40 GMT
Last edited by Jelle van der Waa (jelly) - Friday, 02 June 2023, 20:21 GMT
Opened by Alexander D. Kanevskiy (kad) - Saturday, 02 April 2016, 23:40 GMT
Last edited by Jelle van der Waa (jelly) - Friday, 02 June 2023, 20:21 GMT
|
Details
Description:
At the moment it's impossible to build packages that are depending on python-setuptools if on user system only core+extra repositories are enabled. Issue root cause is that python-setuptools depends on python-packaging, and python-packaging depends on python-six and python-pyparsing. python-setuptools is in extra, where python-six are in community repo. In theory, if core and extra repositories are expected to be self-contained (all needed components to build/install packages from them expected to be available), then all missing dependencies of python-setuptools supposed to be moved from community to extra. Additional info: * package version(s): python-packaging 16.6-1 python-pyparsing 2.1.1-1 python-setuptools 1:20.6.7-1 python-six 1.10.0-1 Steps to reproduce: - disable community repository - pacman -S python-setuptools |
This task depends upon
Closed by Jelle van der Waa (jelly)
Friday, 02 June 2023, 20:21 GMT
Reason for closing: Deferred
Additional comments about closing: No longer an issue since community/extra are merged.
Friday, 02 June 2023, 20:21 GMT
Reason for closing: Deferred
Additional comments about closing: No longer an issue since community/extra are merged.
They aren't.
python-setuptools is makedeps for such packages, but it's not installable without community repository.
Here is example:
[kad@arch bmap]$ makepkg -s
==> Making package: bmap-tools 3.2-1 (Sun Apr 3 12:06:23 EEST 2016)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
warning: cannot resolve "python2-six", a dependency of "python2-packaging"
warning: cannot resolve "python2-packaging", a dependency of "python2-setuptools"
:: The following package cannot be upgraded due to unresolvable dependencies:
python2-setuptools
:: Do you want to skip the above package for this upgrade? [y/N]
error: failed to prepare transaction (could not satisfy dependencies)
:: python2-packaging: requires python2-six
:: python2-setuptools: requires python2-packaging
==> ERROR: 'pacman' failed to install missing dependencies.
[kad@arch bmap]$
Another, the most visible example of this would be build of ArchLinux python packages by using openSUSE build system (to have in one place packages produced for multiple distros):
https://build.opensuse.org/project/monitor/openSUSE:Tools?arch_x86_64=1&defaults=0&repo_Arch_Extra=1&unresolvable=1
Due to conflicts with licensing, Suse can't enable community repository, and thus, anyone who want to use their service unable to build python packages for ArchLinux.
It's not a big deal to have copies of python-parsing and python-six in my local repositories, as those packages are not changed often, just thought it might be valuable for others with similar custom setups.
OBS is just one of the publicly visible consequences in custom small setups, where only important and trusted repositories are enabled, but not the only one.
Five years has been passed since the issue was *exposed*.
In the meantime, the original package was "fixed".
Anyway, today I can point to another package with the same problem: `python2-enum34` (community repo) is a dep of `python2-cryptography` (extra repo).
And I guess it is not a lonely case.
What is the *official position* about this issue?