Bug 2032550 - [RFE:EPEL9] EPEL9 branch for python-pandas
Summary: [RFE:EPEL9] EPEL9 branch for python-pandas
Keywords:
Status: ASSIGNED
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: python-pandas
Version: epel9
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jonathan Wright
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 2081722 2091164 2105154 2162126 (view as bug list)
Depends On: 2041315 2081727 2099679 2125065 2144662 2144663 2144664 2144665 2144666 2144667 2144668 2144672 2144673 2144674 2144675 2144676 2144677 2144678 2144679
Blocks: 2211202 2309668 2032546 2099676 2144670
TreeView+ depends on / blocked
 
Reported: 2021-12-14 17:11 UTC by Pat Riehecky
Modified: 2024-09-04 09:00 UTC (History)
20 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Pat Riehecky 2021-12-14 17:11:01 UTC
Description of problem:

Can python-pandas be branched for EPEL9

Version-Release number of selected component (if applicable): current fedora version


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Orion Poplawski 2021-12-15 02:30:03 UTC
No matching package to install: 'python3-matplotlib'

Comment 2 Orion Poplawski 2022-05-06 02:32:55 UTC
*** Bug 2081722 has been marked as a duplicate of this bug. ***

Comment 3 Ben Beasley 2022-05-27 18:00:34 UTC
*** Bug 2091164 has been marked as a duplicate of this bug. ***

Comment 4 Orion Poplawski 2022-07-09 02:04:37 UTC
*** Bug 2105154 has been marked as a duplicate of this bug. ***

Comment 5 Orion Poplawski 2022-11-22 14:10:24 UTC
Jonathan - I'm afraid you've made a bit of a mess of things by just going ahead and pushing the latest rawhide into the epel9 branch.  We can't package the latest due to the scipy (and possibly other) dep.  Much better from the start to just do scratch or mock builds to see what will work.

Comment 6 Jonathan Wright 2022-11-22 14:23:27 UTC
(In reply to Orion Poplawski from comment #5)
> Jonathan - I'm afraid you've made a bit of a mess of things by just going
> ahead and pushing the latest rawhide into the epel9 branch.  We can't
> package the latest due to the scipy (and possibly other) dep.  Much better
> from the start to just do scratch or mock builds to see what will work.

Yep I realized that last night after I did it.  I thought I'd done some EPEL9 builds already but I was mistaken.

I'll be getting it cleaned up.

Comment 7 Ben Beasley 2022-11-29 15:03:51 UTC
Testing https://src.fedoraproject.org/rpms/python-pandas/pull-request/13, for Pandas 1.5.2 in Rawhide:

-----

These are too old in E(PE)L9. That suggests we must work backwards to find the newest version of Pandas that supports the dependency version that is available.

No matching package to install: 'python3dist(scipy) >= 1.7.1' (available: 1.6.2)

-----

These have updates in testing for EPEL9:

No matching package to install: 'python3dist(cloudpickle) >= 0.2.1'
No matching package to install: 'python3dist(numexpr) >= 2.7.3'
No matching package to install: 'python3dist(openpyxl) >= 3.0.7'

-----

These are not yet branched and built in EPEL9:

No matching package to install: 'python3dist(bottleneck) >= 1.3.2' (bug 2081727)
No matching package to install: 'python3dist(dask)' (bug 2144663)
No matching package to install: 'python3dist(fsspec) >= 2021.7' (bug 2144664)
No matching package to install: 'python3dist(jinja2) >= 3' (bug 2144665)
No matching package to install: 'python3dist(matplotlib) >= 3.3.2' (bug 2041315)
No matching package to install: 'python3dist(odfpy) >= 1.4.1' (bug 2144667)
No matching package to install: 'python3dist(pandas-datareader)' (bug 2144670)
No matching package to install: 'python3dist(partd) >= 0.3.10' (bug 2144672)
No matching package to install: 'python3dist(pymysql) >= 1.0.2' (bug 2144673)
No matching package to install: 'python3dist(qtpy)' (bug 2125065)
No matching package to install: 'python3dist(seaborn)' (bug 2144675)
No matching package to install: 'python3dist(statsmodels)' (bug 2144676)
No matching package to install: 'python3dist(tables) >= 3.6.1' (bug 2099679)
No matching package to install: 'python3dist(xarray) >= 1.19' (bug 213112)
No matching package to install: 'python3dist(xlsxwriter) >= 1.4.3' (bug 2144678)
No matching package to install: 'python3dist(xlwt) >= 1.3' (bug 2144679)

Of these, python3dist(bottleneck) provides large speedups, so it is a hard dependency in the Fedora package. It would be best to have it available.

The rest are all optional dependencies, and their BuildRequires and Recommends can be commented out of the EPEL9 spec file until they are available.

Comment 8 Ben Beasley 2022-11-29 15:05:37 UTC
It looks like pandas 1.4.x may be the way to go for EPEL9, since it requires scipy≥1.4.1.

Comment 9 Jonathan Wright 2022-11-29 19:27:03 UTC
I'm working diligently on all the deps for EPEL9.

Comment 10 Ben Beasley 2023-01-03 05:02:29 UTC
This comment is a reminder to update the python-fastavro package in EPEL9 when python-pandas is packaged there.

https://bugzilla.redhat.com/show_bug.cgi?id=2157766#c1

Comment 11 Jonathan Wright 2023-01-18 20:51:47 UTC
*** Bug 2162126 has been marked as a duplicate of this bug. ***

Comment 12 Sandro 2023-01-19 09:33:44 UTC
(In reply to Jonathan Wright from comment #9)
> I'm working diligently on all the deps for EPEL9.

Is there anything I can help with? Is the dependency list below c#1 what still needs to be branched to el9? Or is there more?

Comment 13 Jonathan Wright 2023-01-19 18:08:25 UTC
(In reply to Sandro from comment #12)
> (In reply to Jonathan Wright from comment #9)
> > I'm working diligently on all the deps for EPEL9.
> 
> Is there anything I can help with? Is the dependency list below c#1 what
> still needs to be branched to el9? Or is there more?

Really only if you're a maintainer of some of the dependent packages.

I think I've mostly got the entire dep tree documented and requests open so I'm waiting on people to do builds and/or for time limits to hit so I can request EPEL branch access to the packages.  If you want to help me stay on top of all of these other BZs for the deps that'd be helpful.

Comment 14 Pat Riehecky 2023-01-19 19:49:23 UTC
Eventually we'll have to have a plan for `jinja2>=3.0.0` as the most recent releases require the higher jinja2 version

https://bugzilla.redhat.com/show_bug.cgi?id=2153843

Comment 15 Miro Hrončok 2023-01-25 13:17:38 UTC
Upgrading jinja in RHEL9 is very unlikely to be allowed, see bz2153843.

If you folks want to branch and build python-pandas for EPEL9, you have the following options:

 - package an older version of pandas that works with the older version of jinja
 - patch current pandas to work with the older version of jinja
 - patch pandas to use a bundled version of jinja (please don't)
 - package pandas, jinja, and the entire stack you care about for Python 3.11 instead (to be available in c9s soon)

Comment 16 Carl George 🤠 2023-02-11 05:33:11 UTC
> These are not yet branched and built in EPEL9:
> 
> No matching package to install: 'python3dist(jinja2) >= 3' (bug 2144665)
> ...
> No matching package to install: 'python3dist(pymysql) >= 1.0.2' (bug 2144673)

Both of these are in RHEL 9 AppStream (at lower versions) so they cannot be branched for EPEL 9.

Comment 17 Sergio Pascual 2023-07-10 11:49:15 UTC
Regarding python-pandas-datareader, this package has a dependency on pandas, so it cannot be built until a first version of pandas is available.

Comment 18 Enrique 2023-10-21 12:01:19 UTC
I have tried to get a pandas 1.2.5 RPM in EPEL9 with the following command:

mock -r alma+epel-9-x64_64 --rebuild python-pandas-1.2.5-1.el9.src.rpm

The SRPM was created from the f34 branch in https://src.fedoraproject.org/rpms/python-pandas 

The RPM creates successfully with the existing dependencies in EPEL 9, installs correctly and I could run the pandas tutorial (https://pandas.pydata.org/docs/user_guide/10min.html) successfully.

I know this is a relatively old version of pandas (2.5 years), but getting this now in EPEL 9 is straightforward and gives a quick way to get it into EPEL 9. It looks like the problem with jinja2 in newer versions is kind of difficult to overcome.

Other option is to install pandas without the [output_formatting] option (https://pandas.pydata.org/docs/getting_started/install.html#visualization), which seems to be the only part that depends on jinja2, but I have not tried that option.

Comment 19 Sergio Pascual 2023-11-01 18:29:49 UTC
Seaborn has a hard dependency on pandas so it can't be built until this is out. In this bug is listed as a dependency instead.


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