diff --git a/_service b/_service
new file mode 100644
index 0000000..1179768
--- /dev/null
+++ b/_service
@@ -0,0 +1,19 @@
+
+
+
+ git
+ https://gitlab.gnome.org/GNOME/pygobject.git
+ 3.50.0
+ @PARENT_TAG@+@TAG_OFFSET@
+ v?(.*)\+0
+ \1
+
+
+
+
+ *.tar
+ zst
+
+
+
+
diff --git a/pygobject-3.44.1.tar.xz b/pygobject-3.44.1.tar.xz
deleted file mode 100644
index be4637a..0000000
--- a/pygobject-3.44.1.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:3c6805d1321be90cc32e648215a562430e0d3d6edcda8f4c5e7a9daffcad5710
-size 559432
diff --git a/pygobject-3.50.0.obscpio b/pygobject-3.50.0.obscpio
new file mode 100644
index 0000000..3742b74
--- /dev/null
+++ b/pygobject-3.50.0.obscpio
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f253779f84b6618fec7794ad4b67db2017f8bd6b7a1575a2daa627f8364726a5
+size 3292172
diff --git a/pygobject.obsinfo b/pygobject.obsinfo
new file mode 100644
index 0000000..472917c
--- /dev/null
+++ b/pygobject.obsinfo
@@ -0,0 +1,4 @@
+name: pygobject
+version: 3.50.0
+mtime: 1726139389
+commit: 48a875ea1c33f275f3f751d0d0a48762526a1abe
diff --git a/python-gobject.changes b/python-gobject.changes
index a5221bd..cd8c8fe 100644
--- a/python-gobject.changes
+++ b/python-gobject.changes
@@ -1,3 +1,105 @@
+-------------------------------------------------------------------
+Thu Sep 12 12:32:33 UTC 2024 - Bjørn Lie
+
+- Update to version 3.50.0:
+ + tests: Fix event test errors when GTK is not installed
+
+-------------------------------------------------------------------
+Fri Sep 6 18:59:31 UTC 2024 - Bjørn Lie
+
+- Update to version 3.49.0:
+ + Rename master branch to main
+ + Drop support for Python 3.8
+ + Add Override for Gio.DataInputStream
+ + Treat GParamSpec as any other fundamental type
+ + override connection.register_object to prevent an invocation
+ object from leaking
+ + Various PyPy related fixes
+ + bind_property: Accept keyword arguments
+ + Various documentation improvements
+ + Python2 / GTK2 cleanups
+ + asyncio integration with support to await Gio async functions
+ + meson: move from .egg-info to .dist-info/METADATA
+ + build: fixes for building with gobject-introspection 1.81
+- Stop removing executable bits from examples, no longer needed.
+
+-------------------------------------------------------------------
+Mon Apr 8 06:47:10 UTC 2024 - Dominique Leuenberger
+
+- Update to version 3.48.2:
+ + Fix support for fundamental (primitive) types, such as
+ Gst.Bitmask.
+
+-------------------------------------------------------------------
+Mon Mar 11 08:00:09 UTC 2024 - Dominique Leuenberger
+
+- Update to version 3.48.1:
+ + Fix installation with pip failing in some environments with
+ ModuleNotFoundError in g-ir-scanner.
+
+-------------------------------------------------------------------
+Sat Mar 9 18:38:20 UTC 2024 - Dominique Leuenberger
+
+- Update to version 3.48.0:
+ + test: fix some tests on macOS.
+ + docs: some dark mode fixes.
+
+-------------------------------------------------------------------
+Tue Feb 13 07:52:01 UTC 2024 - Dominique Leuenberger
+
+- Update to version 3.47.0:
+ + Drop setuptools in favor of meson-python.
+ + Fundamental type support.
+ + Fundamental type support for GValues.
+ + pygi-convert.sh: migrate FILE_CHOOSER_CONFIRMATION_*.
+ + gimodule, cairo: Use multi-phase initialization as per PEP-489.
+ + Deprecate classes in gi.option module.
+ + Deprecate pygtkcompat.
+ + Add support for (optional) nullable GErrors.
+ + Fix CssProvider not valid in GTK2.
+ + Fix double free if array item cannot be marshalled to Python.
+ + Raise exception if a callback property is encountered.
+ + build: Fix pycairo detection "script" for Windows.
+ + Replace deprecated ``pkgutil.find_loader`` call.
+ + Avoid segfault on property access for incompletely initialized
+ objects.
+ + pygenum: When getting a member instance, use correct key for
+ the lookup.
+ + Project / Development / CI:
+ - Remove pborelli from the maintainer list.
+ - Add Arjan Molenaar to maintainers.
+ - Remove runtests script.
+
+-------------------------------------------------------------------
+Sun Sep 10 19:51:54 UTC 2023 - Luciano Santos
+
+- Update to version 3.46.0:
+ + Add support for Python 3.12.
+ + Drop GTK 2 support.
+ + Complete the PEP-451 implementation in gi.importer.
+ + Replace usage of deprecated FFI closure API.
+ + Fix invalid marshalling in some cases for boxed values, for
+ example with Gtk.StyleContext.get_property().
+ + Consistent setting of enum and flag property.
+ + Fix docstring for methods that return an array and have a
+ length (out) argument.
+ + Overrides:
+ - Fix incompatibility for CssProvider.load_from_data() (GTK
+ 4.10).
+ - Allow Gdk.{Color,RGBA} instances to be compared with other
+ objects.
+ - Add overrides for Gdk.FileList in Gdk-4.0.
+ + Updated documentation.
+- Add explicit BuildRequires on pkgconfig(libffi). This is looked
+ by the build scripts and was already being pulled in by something
+ else.
+
+-------------------------------------------------------------------
+Sat Jun 10 10:10:50 UTC 2023 - ecsos
+
+- Add %{?sle15_python_module_pythons}: build additional python
+ flavors besides the 'default' when building for SLE15.
+
-------------------------------------------------------------------
Fri Mar 24 20:01:52 UTC 2023 - Bjørn Lie
diff --git a/python-gobject.spec b/python-gobject.spec
index 463159b..6fd4bb0 100644
--- a/python-gobject.spec
+++ b/python-gobject.spec
@@ -1,7 +1,7 @@
#
# spec file for package python-gobject
#
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -28,29 +28,38 @@
%global __requires_exclude typelib\\(%%namespaces\\)
%global __requires_exclude_from ^%{_libdir}/python.*/site-packages/gi/__init__.py$
%define _name pygobject
+%define glib_version 2.64.0
+%define gi_version 1.64.0
+%define pycairo_version 1.16.0
+%define libffi_version 3.0
+%{?sle15_python_module_pythons}
Name: python-gobject
-Version: 3.44.1
+Version: 3.50.0
Release: 0
Summary: Python bindings for GObject
License: LGPL-2.1-or-later
Group: Development/Languages/Python
URL: https://wiki.gnome.org/Projects/PyGObject/
-Source0: https://download.gnome.org/sources/pygobject/3.44/%{_name}-%{version}.tar.xz
+Source0: %{_name}-%{version}.tar.zst
BuildRequires: %{python_module devel}
-BuildRequires: %{python_module pycairo >= 1.16.0}
+BuildRequires: %{python_module meson-python}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module pycairo >= %{pycairo_version}}
BuildRequires: %{python_module pycairo-devel}
-BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(cairo-gobject)
-BuildRequires: pkgconfig(gio-2.0) >= 2.38.0
-BuildRequires: pkgconfig(glib-2.0) >= 2.38.0
# build cycle!
# BuildRequires: pkgconfig(gdk-3.0) >= 2.38.0
-BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.46.0
+BuildRequires: pkgconfig(gio-2.0) >= %{glib_version}
+BuildRequires: pkgconfig(glib-2.0) >= %{glib_version}
+BuildRequires: pkgconfig(gmodule-2.0) >= %{glib_version}
+BuildRequires: pkgconfig(gobject-2.0) >= %{glib_version}
+BuildRequires: pkgconfig(gobject-introspection-1.0) >= %{gi_version}
+BuildRequires: pkgconfig(libffi) >= %{libffi_version}
# Trigger an automatic installation of python(2|3.*)-gobject when python and libgirepository are installed.
Supplements: (python and %{introspection_real_package})
%python_subpackages
@@ -102,9 +111,9 @@ addon libraries such as pygtk.
%package -n %{name}-common-devel
Summary: Shared development files for GObject's Python bindings
Group: Development/Languages/Python
-Requires: glib2-devel >= 2.56.0
-Requires: gobject-introspection-devel >= 1.56.0
-Requires: libffi-devel >= 3.0.0
+Requires: glib2-devel >= %{glib_version}
+Requires: gobject-introspection-devel >= %{gi_version}
+Requires: libffi-devel >= %{libffi_version}
Requires: pkgconfig(cairo)
Requires: pkgconfig(cairo-gobject)
Provides: %{python_module gobject-common-devel = %{version}}
@@ -115,20 +124,24 @@ addon libraries such as pygtk in both Python2 and Python3.
%prep
%setup -q -n %{_name}-%{version}
-# Remove the executable bits from example scripts:
-find examples -name '*.py' -exec chmod -R -x {} +
%build
export CFLAGS="%{optflags}"
-%python_build
+%meson
+%meson_build
+%pyproject_wheel
%install
-%python_install
+%meson_install
+%pyproject_install
# Incorrectly installed by a python38-setuptools vendored distutils
# which does not play well with the distro patched python38.
# Later flavors installed the correct files into lib64 as well
if [ "%{_libdir}" != "%{_prefix}/lib" -a -d %{buildroot}%{_prefix}/lib/pkgconfig ]; then
rm -r %{buildroot}%{_prefix}/lib/pkgconfig
+else
+ echo 'Removing %{buildroot}%{_prefix}/lib/pkgconfig is no longer needed.' \
+ 'Please fix the spec.'
fi
%{python_expand # delete unwanted python scripts and their compiled cache files
@@ -142,6 +155,8 @@ find %{buildroot}%{$python_sitearch} -name GIMarshallingTests* -delete -print
}
find %{buildroot} "(" -name '*.la' -or -name '*.a' ")" -delete
+# Nuke a stray metadata file
+find %{buildroot}%{python_sitearch}/PyGObject*/ "(" -name 'METADATA' ")" -delete -print
%{?python_compileall}
%python_expand %fdupes %{buildroot}%{$python_sitearch}
@@ -149,11 +164,10 @@ find %{buildroot} "(" -name '*.la' -or -name '*.a' ")" -delete
%files %{python_files}
%license COPYING
%doc NEWS
-%doc examples/
%{python_sitearch}/gi/
-%{python_sitearch}/PyGObject-%{version}*-py*.egg-info
# Lives in cairo subpackage
%exclude %{python_sitearch}/gi/_gi_cairo*.so
+%{python_sitearch}/pygobject-%{version}.dist-info/
# Lives in Gdk subpackage
%exclude %{python_sitearch}/gi/_gtktemplate.py
%exclude %{python_sitearch}/gi/overrides/Gdk.*
@@ -187,6 +201,7 @@ find %{buildroot} "(" -name '*.la' -or -name '*.a' ")" -delete
%files %{python_files devel}
%doc README.rst
+%{_includedir}/python%{python_version}/pygobject/
%files -n %{name}-common-devel
%{_includedir}/pygobject-3.0/