Bug 2237647 - noarch packages that depend on python3-rpds-py can't be installed on i386
Summary: noarch packages that depend on python3-rpds-py can't be installed on i386
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: rust-rpds
Version: rawhide
Hardware: i386
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Mattia Verga
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 2237784
TreeView+ depends on / blocked
 
Reported: 2023-09-06 07:32 UTC by Mattias Ellert
Modified: 2023-09-15 18:50 UTC (History)
5 users (show)

Fixed In Version: rust-rpds-1.0.1-1.fc40 rust-rpds-1.0.1-1.fc39
Clone Of:
Environment:
Last Closed: 2023-09-07 09:46:36 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github orium rpds issues 81 0 None open sparse_array_usize test failures on i686 2023-09-06 11:57:07 UTC

Description Mattias Ellert 2023-09-06 07:32:03 UTC
See e.g.

https://koschei.fedoraproject.org/package/python-ipyparallel?collection=f40

The koschei rebuild fails with (see root.log in the koji task):

DEBUG util.py:442:  Error: 
DEBUG util.py:442:   Problem: package python3-nbsphinx-0.9.3-1.fc40.noarch from build requires python3.12dist(nbformat), but none of the providers can be installed
DEBUG util.py:442:    - package python3-nbformat-5.9.1-2.fc39.noarch from build requires python3.12dist(jsonschema) >= 2.6, but none of the providers can be installed
DEBUG util.py:442:    - conflicting requests
DEBUG util.py:442:    - nothing provides python3.12dist(rpds-py) >= 0.7.1 needed by python3-jsonschema-4.19.0-1.fc40.noarch from build
DEBUG util.py:444:  (try to add '--skip-broken' to skip uninstallable packages)
DEBUG util.py:595:  Child return code was: 1


Reproducible: Always

Steps to Reproduce:
1. Try to install e.g. python3-jsonschema-4.19.0-1.fc40.noarch on i386

Actual Results:  
Missing dependency.

Expected Results:  
No missing dependency.

Comment 1 Ben Beasley 2023-09-06 11:25:27 UTC
From the perspective of python-rpds-py, this is not a bug. The package has been ExcludeArch: %{ix86} since it was introduced to the distribution[1], which is allowed and encouraged under[2]. The same applies to rust-rpds, but that spec file notes that “Also i686 is FTB because of tests failing due to precision errors”[3].

The problem here is that python-jsonschema adding a dependency on python-rpds-py means that python-jsonschema should now be

  BuildArch:      noarch
  ExcludeArch:    %{ix86}

as in [4], but this would affect a large number of arched and noarch packages.

If there were just a few packages indirectly affected, I would suggest adding the ExcludeArch working in from the leaves. In this case, it may be better to remove the ExcludeArch in python-rpds-py and rust-rpds, even if it means skipping the tests, just to avoid adding ExcludeArch to so many packages.

The situation would be *very* different if we only needed to deal with the arched direct and indirect dependencies of python-rpds-py; see [5]. Then propagating the ExcludeArch would be much more straightforward.

[1] https://src.fedoraproject.org/rpms/python-rpds-py/blob/rawhide/f/python-rpds-py.spec#_16

[2] https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval

[3] https://src.fedoraproject.org/rpms/rust-rpds/blob/rawhide/f/rust-rpds.spec#_20

[4] https://docs.fedoraproject.org/en-US/packaging-guidelines/#_noarch_with_unported_dependencies

[5] https://pagure.io/koji/issue/3809

Comment 2 Mattia Verga 2023-09-06 11:34:37 UTC
yeah, rust-rpds not being built for %{ix86} has become a problem now that python-jsonschema pulls it in as dependency.
Given this output:
$ fedrq wrsrc -b rawhide python-jsonschema
ansible-bender-0.10.1-3.fc39.noarch
ansible-lint-1:6.18.0-1.fc40.src
auditwheel-5.4.0-1.fc40.src
awscli2-2.13.12-1.fc40.src
borgmatic-1.8.2-1.fc40.noarch
borgmatic-1.8.2-1.fc40.src
calamares-3.2.62-4.fc40.src
cffconvert-2.0.0-7.fc39.noarch
cffconvert-2.0.0-7.fc39.src
cfn-lint-0.79.8-1.fc40.noarch
cfn-lint-0.79.8-1.fc40.src
cloud-init-23.2.1-1.fc39.noarch
cloud-init-23.2.1-1.fc39.src
docker-compose-1.29.2-10.fc39.noarch
docker-compose-1.29.2-10.fc39.src
fedora-messaging-3.4.1-3.fc39.src
fmf-1.2.1-5.fc39.src
gns3-gui-2.2.42-1.fc40.noarch
gns3-server-2.2.42-1.fc40.noarch
koji-containerbuild-1.0.1-4.fc39.noarch
koji-containerbuild-builder-1.0.1-4.fc39.noarch
koji-osbuild-hub-11-4.fc39.noarch
matrix-synapse-1.91.1-1.fc40.src
matrix-synapse-1.91.1-1.fc40.x86_64
ocaml-atd-2.12.0-3.fc39.src
opae-2.2.0-1.1.fc39.5.src
openscap-report-0.2.4-3.fc39.src
poetry-1.5.1-2.fc40.src
pungi-4.5.0-1.fc40.src
python-ansible-compat-4.1.1-3.fc39.src
python-aws-sam-translator-1.74.0-1.fc40.src
python-botocore-1.31.39-1.fc40.src
python-bravado-core-5.17.1-3.fc39.src
python-designateclient-5.2.0-3.fc39.src
python-hdmf-3.9.0-1.fc40.src
python-ipywidgets-8.1.0-1.fc40.src
python-jsonschema-spec-0.1.6-6.fc39.src
python-jupyter-events-0.6.3-4.fc39.src
python-jupyter-kernel-test-0.6.0-1.fc40.src
python-jupyterlab-server-2.24.0-1.fc39.src
python-matrix-nio-0.21.2-2.fc40.src
python-molecule-4.0.4-5.fc38.src
python-nbformat-5.9.1-2.fc39.src
python-openapi-schema-validator-0.4.3-6.fc39.src
python-openapi-spec-validator-0.5.7-4.fc39.src
python-openstacksdk-1.0.1-4.fc39.src
python-os-client-config-2.1.0-9.fc39.src
python-poetry-core-1.6.1-2.fc40.src
python-robotframework-6.1.1-1.fc39.src
python-rsd-lib-1.2.0-14.fc40.src
python-sentry-sdk-1.29.2-1.fc40.src
python-sphinxcontrib-openapi-0.7.0-9.fc39.src
python-swagger-spec-validator-3.0.3-3.fc39.src
python-taskflow-5.1.0-2.fc40.src
python-trimesh-3.23.5-2.fc40.src
python-warlock-2.0.1-3.fc39.src
python3-ansible-compat-4.1.1-3.fc39.noarch
python3-ansible-lint-1:6.18.0-1.fc40.noarch
python3-anyconfig-0.13.0-6.fc39.noarch
python3-atomic-reactor-3.14.0-5.fc39.noarch
python3-aws-sam-translator-1.74.0-1.fc40.noarch
python3-bravado-core-5.17.1-3.fc39.noarch
python3-designateclient-5.2.0-3.fc39.noarch
python3-fedora-messaging-3.4.1-3.fc39.noarch
python3-flask-restx-1.1.0-3.fc39.noarch
python3-fmf-1.2.1-5.fc39.noarch
python3-hdmf-3.9.0-1.fc40.noarch
python3-ironicclient-5.1.0-3.fc39.noarch
python3-jsonschema+format-4.17.3-5.fc39.noarch
python3-jsonschema+format-nongpl-4.17.3-5.fc39.noarch
python3-jsonschema-spec-0.1.6-6.fc39.noarch
python3-jupyter-events-0.6.3-4.fc39.noarch
python3-jupyter-kernel-test-0.6.0-1.fc40.noarch
python3-jupyterlab-server-2.24.0-1.fc39.noarch
python3-matrix-nio-0.21.2-2.fc40.noarch
python3-nbformat-5.9.1-2.fc39.noarch
python3-openapi-schema-validator-0.4.3-6.fc39.noarch
python3-openapi-spec-validator-0.5.7-4.fc39.noarch
python3-osbs-client-1.15.0-3.fc39.noarch
python3-osbuild-94-1.fc40.noarch
python3-poetry-1.5.1-2.fc40.noarch
python3-poetry-core-1.6.1-2.fc40.noarch
python3-pungi-4.5.0-1.fc40.noarch
python3-rsd-lib-1.2.0-14.fc40.noarch
python3-rsd-lib-tests-1.2.0-14.fc40.noarch
python3-sphinxcontrib-openapi-0.7.0-9.fc39.noarch
python3-sphobjinv-2.0.1-12.fc39.noarch
python3-spyder-5.3.1-8.fc39.noarch
python3-swagger-spec-validator-3.0.3-3.fc39.noarch
python3-taskflow-5.1.0-2.fc40.noarch
python3-trimesh+all-3.23.5-2.fc40.x86_64
python3-trimesh+easy-3.23.5-2.fc40.x86_64
python3-warlock-2.0.1-3.fc39.noarch
python3-webthing-0.15.0-10.fc39.noarch
python3-zaqarclient-2.5.1-3.fc39.noarch
snakemake-7.32.3-1.fc40.noarch
snakemake-7.32.3-1.fc40.src

I'll look into enabling build for %{ix86}, just let me check if it is really only a rounding problem in tests or it is really broken on i686.

Comment 3 Fedora Update System 2023-09-07 07:20:14 UTC
FEDORA-2023-c13bb1b22a has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2023-c13bb1b22a

Comment 4 Fedora Update System 2023-09-07 09:40:10 UTC
FEDORA-2023-1bca093e76 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-1bca093e76

Comment 5 Fedora Update System 2023-09-07 09:46:36 UTC
FEDORA-2023-c13bb1b22a has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 6 Fedora Update System 2023-09-08 01:35:13 UTC
FEDORA-2023-1bca093e76 has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-1bca093e76`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-1bca093e76

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2023-09-15 18:50:56 UTC
FEDORA-2023-1bca093e76 has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.