Bug 2332196 - Undo the bootstrapping of python3-pandas in rawhide
Summary: Undo the bootstrapping of python3-pandas in rawhide
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: python-pandas
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jonathan Wright
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 2406005 2274411 2332791
Blocks: NUMPY2
TreeView+ depends on / blocked
 
Reported: 2024-12-12 22:26 UTC by Fedora Fails To Install
Modified: 2025-10-23 20:46 UTC (History)
11 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2024-12-17 12:42:58 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github pandas-dev pandas issues 60589 0 None open BUG: Test failures with 2.2.3 on Fedora Rawhide 2024-12-19 04:35:34 UTC

Description Fedora Fails To Install 2024-12-12 22:26:05 UTC
Hello,

Please note that this comment was generated automatically by https://pagure.io/releng/blob/main/f/scripts/ftbfs-fti/follow-policy.py
If you feel that this output has mistakes, please open an issue at https://pagure.io/releng/

Your package (python-pandas) Fails To Install in Fedora 42:

can't install python3-pandas:
  - nothing provides (python3.13dist(numpy) < 2~~ with python3.13dist(numpy) >= 1.26) needed by python3-pandas-2.2.1-7.fc41.x86_64
  
If you know about this problem and are planning on fixing it, please acknowledge so by setting the bug status to ASSIGNED. If you don't have time to maintain this package, consider orphaning it, so maintainers of dependent packages realize the problem.


If you don't react accordingly to the policy for FTBFS/FTI bugs (https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/), your package may be orphaned in 8+ weeks.


P.S. The data was generated solely from koji buildroot, so it might be newer than the latest compose or the content on mirrors. To reproduce, use the koji/local repo only, e.g. in mock:

    $ mock -r fedora-42-x86_64 --config-opts mirrored=False install python3-pandas


P.P.S. If this bug has been reported in the middle of upgrading multiple dependent packages, please consider using side tags: https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/#updating-inter-dependent-packages

Thanks!

Comment 1 Sandro 2024-12-16 08:02:32 UTC
Pandas has been updated in rawhide:

https://bodhi.fedoraproject.org/updates/FEDORA-2024-461734835f

However, that's a bootstrap build. I suggest to keep this bug open until we have a regular build in rawhide/F42.

Comment 2 Fedora Fails To Install 2024-12-17 12:42:58 UTC
Hello,

Please note that this comment was generated automatically by https://pagure.io/releng/blob/main/f/scripts/ftbfs-fti/follow-policy.py
If you feel that this output has mistakes, please open an issue at https://pagure.io/releng/

All subpackages of a package against which this bug was filled are now installable or removed from Fedora 42.

Thanks for taking care of it!

Comment 3 Sandro 2024-12-17 14:23:58 UTC
Reopening as a reminder that pandas is currently bootstrapped.

Comment 4 Orion Poplawski 2024-12-19 04:35:34 UTC
We are now hitting test failures.  Reported upstream for comment.

Comment 5 Aoife Moloney 2025-02-26 13:19:55 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 42 development cycle.
Changing version to 42.

Comment 6 Peter Robinson 2025-10-22 09:56:57 UTC
Where are we on this? It's been broken for some time. Can we potentially disable tests until upstream fix it so it's not generally broken everywhere?

Comment 7 Peter Robinson 2025-10-22 10:23:41 UTC
Digging into this a little bit it looks like from this PR (https://github.com/stub42/pytz/pull/139/files) the 'proper fix' would be to move upstream panda from pytz -> standard library zoneinfo. Maybe we should look the 4 packages in Fedora using pytz to zoneinfo and retire pytz.

Comment 8 Miro Hrončok 2025-10-22 11:33:47 UTC
> Maybe we should look the 4 packages in Fedora using pytz to zoneinfo and retire pytz.

$ repoquery -q --repo=rawhide{,-source} --whatrequires python3-pytz
babel-0:2.17.0-6.fc44.src
cinnamon-0:6.4.12-3.fc44.x86_64
conda-build-0:24.11.2-2.fc42.src
copr-backend-0:2.10-1.fc44.noarch
copr-backend-0:2.10-1.fc44.src
copr-frontend-0:2.5-1.fc44.noarch
copr-frontend-0:2.5-1.fc44.src
cozy-0:1.3.0-10.fc44.noarch
cozy-0:1.3.0-10.fc44.src
gnome-feeds-0:2.2.0-6.fc44.noarch
khal-0:0.13.0-11.fc44.noarch
khal-0:0.13.0-11.fc44.src
limnoria-0:20250503-4.fc44.noarch
limnoria-0:20250503-4.fc44.src
oci-cli-0:3.66.1-2.fc44.noarch
oci-cli-0:3.66.1-2.fc44.src
pgadmin4-0:9.9-2.fc44.src
pgadmin4-0:9.9-2.fc44.x86_64
python-APScheduler-0:3.11.0-6.fc44.src
python-Mastodon-0:2.1.4-1.fc44.src
python-arrow-0:1.3.0-5.fc44.src
python-astroplan-0:0.9.1-9.fc44.src
python-bravado-core-0:6.1.0-6.fc44.src
python-celery-0:5.3.6-12.fc44.src
python-ciso8601-0:2.3.2-3.fc43.src
python-croniter-0:5.0.1-5.fc44.src
python-cryptography-0:45.0.4-4.fc44.src
python-cs-0:3.3.1-6.fc44.src
python-dateparser-0:1.2.2-4.fc44.src
python-datetimerange-0:1.2.0-13.fc44.src
python-dirty-equals-0:0.9.0-11.fc44.src
python-django-filter-0:25.1-4.fc44.src
python-feedgenerator-0:2.1.0-11.fc44.src
python-fiona-0:1.10.1-8.fc44.src
python-flask-babel-0:4.0.0-11.fc44.src
python-flask-restx-0:1.3.0-11.fc44.src
python-geopy-0:2.4.1-11.fc44.src
python-hypothesis-0:6.123.0-7.fc44.src
python-icalendar-0:6.3.1-5.fc44.src
python-inema-0:0.8.12-3.fc44.src
python-ipywidgets-0:8.1.7-5.fc44.src
python-irc-0:20.5.0-10.fc44.src
python-iso8601-0:2.1.0-7.fc44.src
python-kombu-1:5.3.7-10.fc44.src
python-marshmallow-0:3.25.0-6.fc44.src
python-matplotlib-0:3.10.6-1.fc44.src
python-mkdocs-git-revision-date-localized-plugin-0:1.3.0-7.fc44.src
python-mongomock-0:4.3.0-1.fc44.src
python-oci-0:2.160.1-2.fc44.src
python-orjson-0:3.11.3-2.fc44.src
python-oslo-utils-0:7.3.0-6.fc44.src
python-pandas-0:2.2.3-5.fc43~bootstrap.src
python-pelican-0:4.11.0-2.fc44.src
python-pendulum-0:3.1.0-4.fc44.src
python-prettyprinter-0:0.18.0-4.fc44.src
python-proto-plus-0:1.22.3-11.fc44.src
python-pydantic-0:2.12.3-1.fc44.src
python-pydantic-extra-types-0:2.10.6-2.fc44.src
python-pyvirtualize-0:0.10-26.20191018gitdc2d971.fc44.src
python-serpent-0:1.40-14.fc44.src
python-simple-salesforce-0:1.12.5-11.fc44.src
python-snaptime-0:0.2.4-23.fc44.src
python-sqlalchemy-utils-0:0.41.1-13.fc44.src
python-stravalib-0:1.7-6.fc44.src
python-tempora-0:5.8.0-1.fc44.src
python-typepy-0:1.3.2-6.fc44.src
python-vobject-0:0.9.8-6.fc44.src
python-xmp-toolkit-0:2.0.2-9.fc44.src
python-yfinance-0:0.2.54-5.fc44.src
python-zeep-0:4.3.2-1.fc44.src
python3-astroplan-0:0.9.1-9.fc44.noarch
python3-bravado-core-0:6.1.0-6.fc44.noarch
python3-croniter-0:5.0.1-5.fc44.noarch
python3-cs-0:3.3.1-6.fc44.noarch
python3-dateparser-0:1.2.2-4.fc44.noarch
python3-django-timezone-field-0:4.2.1-19.fc44.noarch
python3-feedgenerator-0:2.1.0-11.fc44.noarch
python3-flask-babel-0:4.0.0-11.fc44.noarch
python3-flask-restx-0:1.3.0-11.fc44.noarch
python3-geopy+timezone-0:2.4.1-11.fc44.noarch
python3-hypothesis+pytz-0:6.123.0-7.fc44.noarch
python3-icalendar-0:6.3.1-5.fc44.noarch
python3-inema-0:0.8.12-3.fc44.noarch
python3-influxdb-0:5.2.0-27.fc44.noarch
python3-irc-0:20.5.0-10.fc44.noarch
python3-kajiki-0:1.0.2-5.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin+all-0:1.3.0-7.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin+base-0:1.3.0-7.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin-0:1.3.0-7.fc44.noarch
python3-mongomock-0:4.3.0-1.fc44.noarch
python3-oci-0:2.160.1-2.fc44.noarch
python3-oslo-serialization-0:5.5.0-6.fc44.noarch
python3-oslo-utils-0:7.3.0-6.fc44.noarch
python3-pandas-0:2.2.3-5.fc43~bootstrap.x86_64
python3-pelican-0:4.11.0-2.fc44.noarch
python3-pyvirtualize-0:0.10-26.20191018gitdc2d971.fc44.noarch
python3-snaptime-0:0.2.4-23.fc44.noarch
python3-stravalib-0:1.7-6.fc44.noarch
python3-subliminal-0:2.1.0-22.fc44.noarch
python3-typepy+datetime-0:1.3.2-6.fc44.noarch
python3-vobject-0:0.9.8-6.fc44.noarch
python3-xmp-toolkit-0:2.0.2-9.fc44.noarch
python3-yfinance-0:0.2.54-5.fc44.noarch
python3-zeep-0:4.3.2-1.fc44.noarch
qtile-0:0.33.0-2.20250828git26bd747.fc44.src

Comment 9 Peter Robinson 2025-10-22 11:36:28 UTC
(In reply to Miro Hrončok from comment #8)
> > Maybe we should look the 4 packages in Fedora using pytz to zoneinfo and retire pytz.
> 
> $ repoquery -q --repo=rawhide{,-source} --whatrequires python3-pytz

So it seems like there's a lot that just need it for build?

# dnf repoquery --whatrequires 'python3dist(pytz)'
Updating and loading repositories:
Repositories loaded.
copr-frontend-0:2.4-1.fc43.noarch
copr-frontend-0:2.5-1.fc43.noarch
cozy-0:1.3.0-10.fc43.noarch
pgadmin4-0:9.8-2.fc43.aarch64
pgadmin4-0:9.9-2.fc43.aarch64

Comment 10 Miro Hrončok 2025-10-22 18:59:03 UTC
The automatically generated runtime dependencies are on python3.14dist(pytz):

$ repoquery -q --repo=rawhide --whatrequires 'python3.14dist(pytz)'
khal-0:0.13.0-11.fc44.noarch
oci-cli-0:3.66.1-2.fc44.noarch
python3-astroplan-0:0.9.1-9.fc44.noarch
python3-bravado-core-0:6.1.0-6.fc44.noarch
python3-croniter-0:5.0.1-5.fc44.noarch
python3-cs-0:3.3.1-6.fc44.noarch
python3-dateparser-0:1.2.2-4.fc44.noarch
python3-django-timezone-field-0:4.2.1-19.fc44.noarch
python3-feedgenerator-0:2.1.0-11.fc44.noarch
python3-flask-babel-0:4.0.0-11.fc44.noarch
python3-flask-restx-0:1.3.0-11.fc44.noarch
python3-geopy+timezone-0:2.4.1-11.fc44.noarch
python3-hypothesis+pytz-0:6.123.0-7.fc44.noarch
python3-inema-0:0.8.12-3.fc44.noarch
python3-influxdb-0:5.2.0-27.fc44.noarch
python3-irc-0:20.5.0-10.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin+all-0:1.3.0-7.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin+base-0:1.3.0-7.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin-0:1.3.0-7.fc44.noarch
python3-mongomock-0:4.3.0-1.fc44.noarch
python3-oci-0:2.160.1-2.fc44.noarch
python3-oslo-utils-0:7.3.0-6.fc44.noarch
python3-pandas-0:2.2.3-5.fc43~bootstrap.x86_64
python3-snaptime-0:0.2.4-23.fc44.noarch
python3-stravalib-0:1.7-6.fc44.noarch
python3-subliminal-0:2.1.0-22.fc44.noarch
python3-typepy+datetime-0:1.3.2-6.fc44.noarch
python3-vobject-0:0.9.8-6.fc44.noarch
python3-xmp-toolkit-0:2.0.2-9.fc44.noarch
python3-yfinance-0:0.2.54-5.fc44.noarch
python3-zeep-0:4.3.2-1.fc44.noarch


And all the runtime dependencies are queried only when using the package name:

$ repoquery -q --repo=rawhide --whatrequires python3-pytz
cinnamon-0:6.4.12-3.fc44.x86_64
copr-backend-0:2.10-1.fc44.noarch
copr-frontend-0:2.5-1.fc44.noarch
cozy-0:1.3.0-10.fc44.noarch
gnome-feeds-0:2.2.0-6.fc44.noarch
khal-0:0.13.0-11.fc44.noarch
limnoria-0:20250503-4.fc44.noarch
oci-cli-0:3.66.1-2.fc44.noarch
pgadmin4-0:9.9-2.fc44.x86_64
python3-astroplan-0:0.9.1-9.fc44.noarch
python3-bravado-core-0:6.1.0-6.fc44.noarch
python3-croniter-0:5.0.1-5.fc44.noarch
python3-cs-0:3.3.1-6.fc44.noarch
python3-dateparser-0:1.2.2-4.fc44.noarch
python3-django-timezone-field-0:4.2.1-19.fc44.noarch
python3-feedgenerator-0:2.1.0-11.fc44.noarch
python3-flask-babel-0:4.0.0-11.fc44.noarch
python3-flask-restx-0:1.3.0-11.fc44.noarch
python3-geopy+timezone-0:2.4.1-11.fc44.noarch
python3-hypothesis+pytz-0:6.123.0-7.fc44.noarch
python3-icalendar-0:6.3.1-5.fc44.noarch
python3-inema-0:0.8.12-3.fc44.noarch
python3-influxdb-0:5.2.0-27.fc44.noarch
python3-irc-0:20.5.0-10.fc44.noarch
python3-kajiki-0:1.0.2-5.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin+all-0:1.3.0-7.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin+base-0:1.3.0-7.fc44.noarch
python3-mkdocs-git-revision-date-localized-plugin-0:1.3.0-7.fc44.noarch
python3-mongomock-0:4.3.0-1.fc44.noarch
python3-oci-0:2.160.1-2.fc44.noarch
python3-oslo-serialization-0:5.5.0-6.fc44.noarch
python3-oslo-utils-0:7.3.0-6.fc44.noarch
python3-pandas-0:2.2.3-5.fc43~bootstrap.x86_64
python3-pelican-0:4.11.0-2.fc44.noarch
python3-snaptime-0:0.2.4-23.fc44.noarch
python3-stravalib-0:1.7-6.fc44.noarch
python3-subliminal-0:2.1.0-22.fc44.noarch
python3-typepy+datetime-0:1.3.2-6.fc44.noarch
python3-vobject-0:0.9.8-6.fc44.noarch
python3-xmp-toolkit-0:2.0.2-9.fc44.noarch
python3-yfinance-0:0.2.54-5.fc44.noarch
python3-zeep-0:4.3.2-1.fc44.noarch



40 components build a package that depends on python3-pytz on runtime:

$ repoquery -q --repo=rawhide --whatrequires python3-pytz --source | pkgname | sort -u | wc -l
40

61 components BuildRequire it:

$ repoquery -q --repo=rawhide{,-source} --whatrequires python3-pytz | grep src$ | pkgname | sort -u | wc -l
61

Together, that's 68 unique components:

$ (repoquery -q --repo=rawhide{,-source} --whatrequires python3-pytz | grep src$ && repoquery -q --repo=rawhide --whatrequires python3-pytz --source) | pkgname | sort -u | wc -l 
68

Comment 11 Peter Robinson 2025-10-23 09:47:03 UTC
So deps isn't really to do with pandas, so I've filed a bug against pytz for the issue that appears to be causing the test failure here. I will file a separate bug for deps of pytz with further details.

Comment 12 Sandro 2025-10-23 20:46:56 UTC
I've submitted https://src.fedoraproject.org/rpms/python-pandas/pull-request/31

For Pandas pytz is (has become) an optional dependency [1]. Therefore tests should not rely on it being present. For other optional dependencies this works quite well. If the dependency is not installed affected tests are skipped.

I've applied a patch making sure the test relying on pytz no longer does so. While pandas works without pytz, pytz will be present in the buildroot nonetheless as a transient dependency.

[1] https://github.com/pandas-dev/pandas/pull/59089


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