-
Notifications
You must be signed in to change notification settings - Fork 149
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
Fixes for Python 3.12, NumPy 2.0, and SciPy 1.14 #1050
Conversation
- Python 3.12 doesn't like SafeConfigParser - Python 2.7 doesn't like versioneer > 0.18
@guyer, you've broken Nix again! |
@wd15, Nix is broken by design |
This library no longer exists in Python 3.12 It looks like it isn't even needed in Python 2.7 to use pickle and redirecting_html.py should go away (but fixed it anyway).
petsc(4py) 3.21.2 crashes when running tests in parallel: ``` mesh2D (examples.cahnHilliard) Doctest: examples.cahnHilliard.mesh2D ... Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 Internal error 2 in DMUMPS_LOAD_RECV_MSGS 1275068685 52 Internal error 1 in DMUMPS_LOAD_PROCESS_MESSAGE Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 1 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Abort(-99) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, -99) - process 0 Internal error 1 in DMUMPS_LOAD_PROCESS_MESSAGE Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 Internal error 2 in DMUMPS_LOAD_RECV_MSGS 1275068685 52 Internal error 1 in DMUMPS_LOAD_PROCESS_MESSAGE Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 Internal error 1 in DMUMPS_LOAD_PROCESS_MESSAGE Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 Internal error 2 in DMUMPS_LOAD_RECV_MSGS 1275068685 52 Internal error 1 in DMUMPS_LOAD_PROCESS_MESSAGE Internal error 1 in DMUMPS_LOAD_RECV_MSGS 1 ```
Nix passes in #1051 with a single tweak. Basically with the master branch with small change to flake.nix. Python still at 3.10. |
Nix runs and has some failures (see #1052) when testing this branch with updated Nix to 24.05 with Python 3.12 and Numpy 1.26.4. Latest version of release nixpkgs does not have Numpy 2.0.0, obviously. |
@guyer, you're not seeing this test failure anywhere, but on the Nix branch, right?
This is with Numpy 1.26.4 and Scipy 1.13.0. |
This is with Numpy 1.26.4 and Scipy 1.13.0. |
Nope |
Update Nix build to use Python 3.12, NixOS 24.05. Also, include aarch4-darwin as a possible build. Currently, there is a single test failure in fipy.matrices.scipyMatrix._ScipyMatrix.
Generate the egg_info before executing the tests otherwise setup.py doesn't register the correct version of the test suite, but possibly the older version already available in nixpkgs.
Next step might be to try and build a conda environment with the same numpy and scipy versions as the Nix build to see if it also fails that one test. |
Agreed. I built such an environment on my Mac and get the same error:
|
SciPy 1.13.0, in combination with all versions of numpy 1.26.x or numpy 2.0.0, exhibits this issue under Python 3.12 (earlier numpy not an option) |
The issue goes away with SciPy 1.13.1, with any compatible numpy. Possibly fixed by scipy/scipy#20670. |
Oh, great. Let me see if I can get a newer scipy into the mix. |
Fixes #1049
Fixes #997