Bug 251412 - math/py-pandas Update to 1.1.5 (Python 3.9 compatible)
Summary: math/py-pandas Update to 1.1.5 (Python 3.9 compatible)
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-python (Nobody)
URL: https://pandas.pydata.org/docs/whatsn...
Keywords: needs-qa
Depends on:
Blocks: 251626
  Show dependency treegraph
 
Reported: 2020-11-26 19:50 UTC by j.david.lists
Modified: 2021-01-18 21:00 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (python)


Attachments
Patch to update math/py-pandas to 1.1.4 (1.29 KB, patch)
2020-11-26 19:50 UTC, j.david.lists
no flags Details | Diff
Original version of patch missed new file needed for clang compatibility (2.20 KB, patch)
2020-11-26 20:02 UTC, j.david.lists
no flags Details | Diff
Additional fix for 3.8 (2.22 KB, patch)
2020-11-27 03:30 UTC, j.david.lists
no flags Details | Diff
Same patch, but restore PORTEPOCH (2.18 KB, patch)
2020-11-29 18:28 UTC, j.david.lists
no flags Details | Diff
Update to 1.1.5 and reorder Makefile vars (7.29 KB, patch)
2021-01-03 07:46 UTC, Rainer Hurling
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description j.david.lists 2020-11-26 19:50:01 UTC
Created attachment 220008 [details]
Patch to update math/py-pandas to 1.1.4

The py-pandas port has been held back to 0.2.4 for a long time to maintain Python 2.x compatibility.

Support for Python 2.x ended at the beginning of 2020, so this is no longer necessary, but the maintainer for this port has retired.

Here is a candidate patch to update to 1.1.4, which supports Python 3.9.
Comment 1 j.david.lists 2020-11-26 20:02:37 UTC
Created attachment 220009 [details]
Original version of patch missed new file needed for clang compatibility

Original version of patch missed a new file needed for clang compatibility; they compile with -Werror on clang, but have unreachable code from Cython.  They use -Wno-error=unreachable-code on Mac to deal with this, so the patch to setup.py just adds the same flag.
Comment 2 j.david.lists 2020-11-27 03:30:05 UTC
Created attachment 220024 [details]
Additional fix for 3.8

This updated patch incorporates an additional flag needed to keep deprecation warnings in 3.8 from causing the build to fail.
Comment 3 Rainer Hurling freebsd_committer 2020-11-29 09:15:46 UTC
Hi, 
Many thanks for the patch.

There two issues with your patch (test with 'portlint -AC'):
- Don't remove PORTEPOCH, once it exists [1]
- Your files/patch-setup.py is not generated by 'make makepatch'. For a proper patch format it is recommended to use 'make makepatch' [2]


[1] Section 5.2.3.2 from Porters Handbook https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/book.html
[2] Section 4.4 from Porters Handbook


Another thought:
The hint in pkg-message about two additional ports is only visible when the port is installed. 

Wouldn't it be useful from the user's point of view to include these two ports math/py-statsmodels and devel/py-xarray as RUN_DEPENDS in the Makefile? I would expect a much better user experience.
Comment 4 j.david.lists 2020-11-29 18:28:40 UTC
Created attachment 220077 [details]
Same patch, but restore PORTEPOCH

Here is the patch with PORTEPOCH restored.

I only use poudriere so I don't know how to do "make makepatch" in that context.  This patch seems to apply and work, but feel free to modify it as needed.

With respect to math/py-statsmodels and devel/py-xarray, I am a sysadmin not a Python programmer so I know very little about it.  But I have encountered that the Python numeric stuff can be incredibly tricky to build and combine, and not everything works in every combination.  If that stuff isn't commonly used, blanket adding it to RUN_DEPENDS may have serious unanticipated consequences.  It's not something I feel I know enough about to mess with.
Comment 5 Rainer Hurling freebsd_committer 2021-01-03 07:46:43 UTC
Created attachment 221231 [details]
Update to 1.1.5 and reorder Makefile vars

After v1.1.5 is released for some weeks now, I renewd the existing patch.

While here, I also reordered Makefile variables, as suggested by portclippy (ports-mgmt/portfmt) and added USE_GL=glu.
Comment 6 Rainer Hurling freebsd_committer 2021-01-03 07:50:12 UTC
Forgot to mention, that for some days now, also v1.2.0 is released. 

I haven't prepared a patch for it because there are some problems with plist that I don't understand at the moment.
Comment 7 Kubilay Kocak freebsd_committer freebsd_triage 2021-01-13 08:12:47 UTC
^Triage: [tags] in issue Titles are deprecated
Comment 8 Rainer Hurling freebsd_committer 2021-01-18 21:00:00 UTC
Hi Kubilay,

Don't know if this is meant with 'needs-qa':

Patch to v1.1.5 is tested on Poudriere (amd64, i386) on HEAD, 12.2, and 11.4. 

'portlint -AC' is ok and portclippy has no suggestions for Makefile ;)