You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: Unit tests: Ubuntu 22.04 lacks dependencies required for recent PyGObject versions #29749
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 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.
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.
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:
Activity
jayaddison commentedon Mar 14, 2025
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
PyGObjectmay have moved to upgrade more quickly than anticipated. I say that based on the fact that recent versions ofglib-2.0itself does not yet seem to requiregirepository-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
matplotlibGitHub 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 commentedon Mar 17, 2025
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, notgobject.git).Instead I think it would be possible to upgrade the Ubuntu base image and
girepositorydependency for some CI jobs here.