Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-gst for openSUSE:Factory checked in at 2025-04-02 17:10:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-gst (Old) and /work/SRC/openSUSE:Factory/.python-gst.new.1907 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-gst" Wed Apr 2 17:10:07 2025 rev:64 rq:1265679 version:1.26.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-gst/python-gst.changes 2025-03-13 15:07:23.277196113 +0100 +++ /work/SRC/openSUSE:Factory/.python-gst.new.1907/python-gst.changes 2025-04-02 17:11:52.677610583 +0200 @@ -1,0 +2,8 @@ +Sun Mar 30 08:55:40 UTC 2025 - Bjørn Lie <[email protected]> + +- Add 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5.patch: Fix + compatibility with PyGObject>=3.52.0. +- Pass python-exe instead of python to meson setup, the latter is + deprecated. + +------------------------------------------------------------------- New: ---- 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5.patch BETA DEBUG BEGIN: New: - Add 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5.patch: Fix compatibility with PyGObject>=3.52.0. BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-gst.spec ++++++ --- /var/tmp/diff_new_pack.9n2lAq/_old 2025-04-02 17:11:53.889661425 +0200 +++ /var/tmp/diff_new_pack.9n2lAq/_new 2025-04-02 17:11:53.889661425 +0200 @@ -27,6 +27,8 @@ Group: System/Libraries URL: https://gstreamer.freedesktop.org Source0: %{_name}-%{version}.tar.zst +# PATCH-FIX-UPSTREAM 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5.patch -- Fix compatibility with PyGObject>=3.52.0 +Patch0: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/0496a778bb85e0b263ed2fddfcf3dac7961fe4f5.patch BuildRequires: %{python_module devel} BuildRequires: c++_compiler @@ -55,7 +57,7 @@ written in Python. %prep -%autosetup -p1 -n %{_name}-%{version} +%autosetup -p3 -n %{_name}-%{version} %build %{python_expand py_var=$python @@ -63,7 +65,7 @@ cp -rp * ../$py_var pushd ../$py_var %meson \ - -Dpython=$py_var \ + -Dpython-exe=$py_var \ %{nil} %meson_build popd ++++++ 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5.patch ++++++ >From 0496a778bb85e0b263ed2fddfcf3dac7961fe4f5 Mon Sep 17 00:00:00 2001 From: Matteo Bruni <[email protected]> Date: Thu, 20 Mar 2025 10:09:21 +0100 Subject: [PATCH] gst-python: fix compatibility with PyGObject>=3.52.0 PyGObject 3.52.0 moved OverridesProxyModule _introspection_module to __slots__, causing Segmentation Faults when accessing the field. Since _introspection_module is used to get Gst.Element but is never actually used afterward, we fix the issue by removing this part. Fixes #4314 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8685> --- .../gst-python/plugin/gstpythonplugin.c | 23 +------------------ 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/subprojects/gst-python/plugin/gstpythonplugin.c b/subprojects/gst-python/plugin/gstpythonplugin.c index ba2986f265d5..47442bb47e03 100644 --- a/subprojects/gst-python/plugin/gstpythonplugin.c +++ b/subprojects/gst-python/plugin/gstpythonplugin.c @@ -53,8 +53,6 @@ gstpy_module_symbol (gpointer handle, const char *name, gpointer * symbol) } #endif -void *_PyGstElement_Type; - GST_DEBUG_CATEGORY_STATIC (pyplugindebug); #define GST_CAT_DEFAULT pyplugindebug @@ -237,7 +235,7 @@ static gboolean plugin_init (GstPlugin * plugin) { PyGILState_STATE state = 0; - PyObject *gi, *require_version, *args, *gst, *dict, *pyplugin; + PyObject *gi, *require_version, *args, *gst, *pyplugin; gboolean we_initialized = FALSE; gpointer has_python = NULL; const gchar *override_path; @@ -333,25 +331,6 @@ plugin_init (GstPlugin * plugin) } if (we_initialized) { - PyObject *tmp; - - dict = PyModule_GetDict (gst); - if (!dict) { - g_critical ("gi.repository.Gst is no dict"); - return FALSE; - } - - tmp = - PyObject_GetAttr (PyMapping_GetItemString (dict, - "_introspection_module"), PyUnicode_FromString ("__dict__")); - - _PyGstElement_Type = PyMapping_GetItemString (tmp, "Element"); - - if (!_PyGstElement_Type) { - g_critical ("Could not get Gst.Element"); - return FALSE; - } - pyplugin = pygobject_new (G_OBJECT (plugin)); if (!pyplugin || PyModule_AddObject (gst, "__plugin__", pyplugin) != 0) { g_critical ("Couldn't set __plugin__ attribute"); -- GitLab
