Skip to content

Conversation

@kiwifb
Copy link
Member

@kiwifb kiwifb commented Aug 23, 2025

This branch takes over from #38565 and include fix for the meson build.
It also update to the latest mpmath 1.4.0 alpha release. Releases beyond 1.4.0.a1 have some fix for sagemath but some test may still be broken.

📝 Checklist

  • The title is concise and informative.
  • The description explains in detail what this PR is about.
  • I have linked a relevant issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation and checked the documentation preview.

@github-actions
Copy link

Documentation preview for this PR (built with commit e7f5fb5; changes) is ready! 🎉
This preview will update shortly after each push to this PR.

@orlitzky
Copy link
Contributor

The big problem here is that no other distros are going to switch to an alpha release without a very good reason. I think for there to be any hope of it getting merged before the official 1.4.0, we would need to support 1.3.x as well. (Debian et al. may remain on 1.3.x for a while anyway).

It doesn't look like there are too many tests to worry about. Just code that needs to be enabled/disabled. With meson, we could check for the version being used,

>>> import mpmath
>>> mpmath.__version__.startswith("1.4.")
True

and then add e.g. CPPFLAGS="-DMPMATH14". The pyx files that are removed in the PR could be selectively disabled, and the functions that are deleted could be turned off by checking #ifdef MPMATH14.

@orlitzky
Copy link
Contributor

Actually for the deleted functions like bitcount and normalize, we wouldn't even need -DMPMATH14. We could just check for mpmath.__version__ directly, and return None rather than whatever the function does now. The meson check is still necessary to exclude certain pyx/pxd files though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants