Menu

#390 lirc-0.10.2: gi.require_version is not called when needed

0.10.2
open
nobody
None
na
2026-05-06
2026-05-06
Pacho Ramos
No

With latest pygobject, lirc-setup won't start because it became stricter with the order of the require version calls:
$ lirc-setup
Traceback (most recent call last):
File "/usr/lib/python3.13/site-packages/gi/importer.py", line 137, in create_module
introspection_module = get_introspection_module(namespace)
File "/usr/lib/python3.13/site-packages/gi/module.py", line 247, in get_introspection_module
module = IntrospectionModule(namespace, version)
File "/usr/lib/python3.13/site-packages/gi/module.py", line 107, in init
repository.require(namespace, version)
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
gi.RepositoryError: Requiring namespace 'Gtk' version '4.0', but '3.0' is already loaded

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/bin/lirc-setup", line 16, in <module>
import mvc_control
File "/usr/lib/python3.13/site-packages/lirc-setup/mvc_control.py", line 21, in <module>
import mvc_view
File "/usr/lib/python3.13/site-packages/lirc-setup/mvc_view.py", line 14, in <module>
from gi.repository import Vte # pylint: disable=no-name-in-module
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/gi/importer.py", line 139, in create_module
raise ImportError(e) from e
ImportError: Requiring namespace 'Gtk' version '4.0', but '3.0' is already loaded</module></module></module>

For some tools, gi.require_version is not used before loading the python module:
<python-input-1>:1: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '4.0') before import to ensure that the right version gets loaded.</python-input-1>

I have prepared a patch that fixes the problem

Thanks

1 Attachments

Discussion


Log in to post a comment.

MongoDB Logo MongoDB