Skip to content

bump matplotlib (with its deps) to 3.10.1 #39789

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

Merged
merged 3 commits into from
Apr 2, 2025
Merged

Conversation

dimpase
Copy link
Member

@dimpase dimpase commented Mar 25, 2025

Sage's current matplotlib in some cases wants numpy 1.
See https://groups.google.com/g/sage-release/c/TkPM0xL2fFA/m/qQwVExhcBAAJ

Thus we bump it to 3.10,1, along with its deps

  • 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.

⌛ Dependencies

@dimpase
Copy link
Member Author

dimpase commented Mar 25, 2025

@enriqueartal does this fix the issue you reported?

@enriqueartal
Copy link
Contributor

@enriqueartal does this fix the issue you reported?

I am unable to compile matplotlib, it complains it cannot download freetype; I can do it but apparently the script cannot.

@enriqueartal
Copy link
Contributor

Update. I installed matplotlib with sage -pip install; now I can use system jupyterlab and the variable SAGE_NUM_THREADS works. Anyway, I do not understand why freetype cannot be downloaded. I use the same url than the script with wget and it works.

@dimpase
Copy link
Member Author

dimpase commented Mar 26, 2025

sorry, there is an unexpected by me snag - it requires an old version of meson to build.

@dimpase
Copy link
Member Author

dimpase commented Mar 26, 2025

sorry, there is an unexpected by me snag - it requires an old version of meson to build.

It seems that meson and matplotlib folks have a philosophical disagreement whether meson should support links, see
mesonbuild/meson-python#713

So now we have an unpleasant choice of

  1. fixing a non-meson build of matplotlib
  2. downgrade meson

@dimpase
Copy link
Member Author

dimpase commented Mar 26, 2025

we really don't want an old version of freetype anywhere close to our systems. it's some silly matplotlib leftover which they forgot all about, while switching to meson...

@enriqueartal
Copy link
Contributor

I guess there is no easy solution. Is it one to install matplotlib with sage -pip install instead its compilation?

@dnicolodi
Copy link

sorry, there is an unexpected by me snag - it requires an old version of meson to build.

It seems that meson and matplotlib folks have a philosophical disagreement whether meson should support links, see mesonbuild/meson-python#713

So now we have an unpleasant choice of

1. fixing a non-meson build of matplotlib

2. downgrade meson

This is incorrect. First, the issue is with meson-python and not meson: if you were, you would have to downgrade meson-python not meson. Second, there is no disagreement about supporting symlinks in meson-python: the meson-python maintainer stated that support for symklinks in sdists is desired feature. However, the matplotlib maintainers that submitted the PR adding the support back have not followed up after a first round of comments on the path. Third, the issue is with generating an sdist from Matplotlib, not with compiling Matplotlib

@dimpase
Copy link
Member Author

dimpase commented Mar 26, 2025

@enriqueartal - does this work now? It does for me (not that I understand why it works now - perhaps passing these extra parameters bypasses the version check)

EDIT: the latest commit enables an alternative build, which does not use meson-py, to succeed.

@enriqueartal
Copy link
Contributor

Make is successful, SAGE_NUM_THREADS value is accepted and system jupyterlab works with this kernel. Thanks!

Copy link

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

@dimpase
Copy link
Member Author

dimpase commented Mar 27, 2025

Make is successful, SAGE_NUM_THREADS value is accepted and system jupyterlab works with this kernel. Thanks!

positive review?

@enriqueartal enriqueartal self-requested a review March 27, 2025 07:20
vbraun pushed a commit to vbraun/sage that referenced this pull request Apr 1, 2025
sagemathgh-39789: bump matplotlib (with its deps) to 3.10.1
    
Sage's current matplotlib in some cases wants numpy 1.
See https://groups.google.com/g/sage-
release/c/TkPM0xL2fFA/m/qQwVExhcBAAJ

Thus we bump it to 3.10,1, along with its deps

<!-- Put an `x` in all the boxes that apply. -->

- [x] The title is concise and informative.
- [x] The description explains in detail what this PR is about.
- [x] 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.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on. For example,
-->
<!-- - sagemath#12345: short description why this is a dependency -->
<!-- - sagemath#34567: ... -->
    
URL: sagemath#39789
Reported by: Dima Pasechnik
Reviewer(s): Enrique Manuel Artal Bartolo
@vbraun vbraun merged commit c9cf964 into sagemath:develop Apr 2, 2025
26 of 39 checks passed
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.

4 participants