8000 [Bug]: Unit tests: Ubuntu 22.04 lacks dependencies required for recent PyGObject versions · Issue #29749 · matplotlib/matplotlib · GitHub
[go: up one dir, main page]

Skip to content

[Bug]: Unit tests: Ubuntu 22.04 lacks dependencies required for recent PyGObject versions #29749

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

Closed
jayaddison opened this issue Mar 13, 2025 · 2 comments · Fixed by #29765
Closed
Milestone

Comments

@jayaddison
Copy link
Contributor

Bug summary

The recently-released Python PyGObject package v3.52.0 requires a major upgrade of the system glib dependencies. For example, it expects to find girepository-2.0 where previously girepository-1.0 would satisfy dependencies.

This can be observed in recent mainline build logs: https://github.com/matplotlib/matplotlib/actions/runs/13819552073/job/38661296332#step:10:306

This is a similar issue to #29732, but affecting Ubuntu 22.04.

Code for reproduction

N/A

Actual outcome

GTK-related tests should run during the GitHub Actions Linux CI test jobs (tests.yml workflow).

Expected outcome

GTK-related tests are skipped due to the inability of the library to load the relevant glib functionality.

Additional information

The libgirepository-2.0-0 system package that I believe may be necessary to unblock the PyGObject>3.52.0 upgrade on Linux platforms is available on Ubuntu 24.04 (aka ubuntu-24.04 or ubuntu-latest at the time-of-writing in GitHub Actions' current runner images).

However, v2.0 of the same package is not currently available -- and I would guess is unlikely to become available -- on Ubuntu 22.04.

Operating system

Ubuntu 22.04

Matplotlib Version

9293596

Matplotlib Backend

N/A

Python version

No response

Jupyter version

N/A

Installation

None

@jayaddison
Copy link
Contributor Author

I've spent a day or two thinking about this, but have not yet investigated the technical reasons for the incompatibility.

My sense is that PyGObject may have moved to upgrade more quickly than anticipated. I say that based on the fact that recent versions of glib-2.0 itself does not yet seem to require girepository-2.0.

As a result: I plan to file an issue on the GNOME gobject.git (PyGObject) repository to ask whether these failures are expected and/or whether backwards compatibility could be maintained.

Even so: I think it may be worth adding Ubuntu 24.04 to the matplotlib GitHub Actions CI. I didn't find a defined policy for the versioning of CI images/runners in use at the moment. Hopefully adding Ubuntu 24.04 to the mix (perhaps only for one or two of the jobs, initially) would not be too difficult. I could probably find some time to volunteer on that next week, unless someoe else is already likely to look at it.

@jayaddison
Copy link
Contributor Author

My sense is that PyGObject may have moved to upgrade more quickly than anticipated. I say that based on the fact that recent versions of glib-2.0 itself does not yet seem to require girepository-2.0.

As a result: I plan to file an issue on the GNOME gobject.git (PyGObject) repository to ask whether these failures are expected and/or whether backwards compatibility could be maintained.

From additional reading: there was previous discussion upstream before increasing the dependency version; in particular:

...so, given that it was already discussed and agreed there, I do not plan to add a bugreport there (nitpick: pygobject.git, not gobject.git).

Instead I think it would be possible to upgrade the Ubuntu base image and girepository dependency for some CI jobs here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants
0