Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUG: Building pandas via pip fails in AIX due to use of lower meson version. #60537

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

KamathForAIX
Copy link

Closes #60495

Log after this change for pandas build in AIX.
pip3.11 install . -v
Created wheel for pandas: filename=pandas-0+untagged.35796.gca91dd4.dirty-cp311-cp311-aix_7205_2419_64.whl size=18419603 sha256=599e0b2217ca31130ae15bc58fbeb260488a276aceb3ee6607b5e8c602031a6b
Stored in directory: /tmp/pip-ephem-wheel-cache-0rxkiefk/wheels/b4/7d/f8/eb241896ce6eabb73cb53844efadd6cf4f368800addd37e52d
Successfully built pandas
Installing collected packages: tzdata, six, numpy, python-dateutil, pandas
changing mode of /opt/freeware/bin/f2py to 755
changing mode of /opt/freeware/bin/numpy-config to 755
Successfully installed numpy-2.2.0 pandas-0+untagged.35796.gca91dd4.dirty python-dateutil-2.9.0.post0 six-1.17.0 tzdata-2024.2 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

@KamathForAIX
Copy link
Author

@rhshadrach Some CI's are failing in many PR. So I believe this is okay.

pyproject.toml Outdated
"meson-python>=0.13.1",
"meson>=1.2.1,<2",
"meson-python>=0.17.1",
"meson>=1.6.0,<2",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This release is only a few months old - why can't older versions still be used?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@WillAyd So we have two compilers in AIX. One is GCC supported from meson 1.3.0 and open XL compiler supported from 1.6.0. (Read here) https://github.com/mesonbuild/meson/blob/master/docs/markdown/Release-notes-for-1.6.0.md#support-for-openxl-compiler-in-aix

So if Pandas uses meson >= 1.6.0 then in AIX, users can build Pandas using both the compilers. This is the sole reason we are using the latest version.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can use meson 1.6 on main today. This change is just making it so no one can use any other version

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What version would you like to change it to?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unless there is a feature we need generally from our build system I don't think this needs to be changed. There might be some simplifications we can get from upgrading to 1.4 with NumPy 2.0, but that should be done in tandem; a blanket bump of the version as shown in this PR doesn't provide a ton of value, unfortunately

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem is AIX is proprietary and such a small user base. It's not something that is officially supported, so its hard to justify making changes to pandas to accommodate it, when the majority of users might be totally fine with using meson 1.2

I think the workaround for AIX is the best solution for now

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@WillAyd - with 1.3 having been released November 2024, any thoughts on when we would feel good about bumping up to it as the minimum?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the bump should occur when we feel like there is a feature that is worth taking advantage (for instance, I think 1.4 could simplify our configurations a lot since it handles numpy 2.0 more natively)

Outside of features though, I don't think there is any advantage to bumping. Build dependencies like meson have a pretty long shelf life

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think there is any advantage to bumping

Not sure how significant it is, but making it less error-prone to install pandas on even an uncommon platform seems like an advantage to me.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its not a hill I'm going to die on, but you are asking everyone currently developing or installing happily on meson 1.2 to upgrade their meson version for AIX users that have 1.2 in their pip cache

…ersion

Closes pandas-dev#60495.

Log after this change for pandas build in AIX.
pip3.11 install . -v
Created wheel for pandas: filename=pandas-0+untagged.35796.gca91dd4.dirty-cp311-cp311-aix_7205_2419_64.whl size=18419603 sha256=599e0b2217ca31130ae15bc58fbeb260488a276aceb3ee6607b5e8c602031a6b
  Stored in directory: /tmp/pip-ephem-wheel-cache-0rxkiefk/wheels/b4/7d/f8/eb241896ce6eabb73cb53844efadd6cf4f368800addd37e52d
Successfully built pandas
Installing collected packages: tzdata, six, numpy, python-dateutil, pandas
  changing mode of /opt/freeware/bin/f2py to 755
  changing mode of /opt/freeware/bin/numpy-config to 755
Successfully installed numpy-2.2.0 pandas-0+untagged.35796.gca91dd4.dirty python-dateutil-2.9.0.post0 six-1.17.0 tzdata-2024.2
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

BUG: Building pandas via pip fails in AIX due to use of lower meson version
3 participants