Hello community, here is the log from the commit of package python-gobject2 for openSUSE:Factory checked in at Tue Aug 23 10:54:14 CEST 2011. -------- New Changes file: --- /dev/null 2010-08-26 16:28:41.000000000 +0200 +++ /mounts/work_src_done/STABLE/python-gobject2/python3-gobject2.changes 2011-08-15 17:14:35.000000000 +0200 @@ -0,0 +1,523 @@ +------------------------------------------------------------------- +Mon Aug 15 08:46:22 UTC 2011 - dimstar@opensuse.org + +- Rename package to python(3)?-gobject2. This package is legacy + gtk2 based and is 'fading out'. +- Pass --disable-static to configure and use find -delete to clean + up the libtool archives. + +------------------------------------------------------------------- +Fri Jun 17 11:53:53 CEST 2011 - vuntz@opensuse.org + +- Change the source package so we can build both python 2 + (python-gobject) and python 3 (python3-gobject) versions, based + on the same .spec file: + + define a build_for_python3 variable to control the behavior + + use local_py_requires and local_py_sitedir variables, that + proxy the appropriate values depending on what is being built + + do not change anything for the python 2 build + + for the python 3 build: + . replace python-cairo-devel and python-devel BuildRequires + with python3-cairo-devel and python3-devel + . do not keep any Provides/Obsoletes that are related to + python-gobject2 + . add Conflicts with python-gobject-devel to the devel + subpackage, as both devel subpackages install the same files + . export PYTHON=python3 for the build +- Add libffi-devel BuildRequires that will now work, since + libffi-devel finally comes with a pkg-config file. +- Add python-gobject-python3.patch: patches taken from git, to fix + build with python 3. Add call to autoreconf, as configure.ac is + modified. + +------------------------------------------------------------------- +Fri Jun 17 06:17:54 CEST 2011 - vuntz@opensuse.org + +- Update to version 2.28.6: + + Fixes for GVariant. + + Added __eq__ method for Gdk.Color and Gdk.RGBA + + Fix symbol names to be locale independent + + closure: Check the out arg is not null (bgo#651812) + + Use _gi.Struct to wrap fundamentals + + Fix two crashes. + +------------------------------------------------------------------- +Wed May 4 16:26:18 UTC 2011 - dimstar@opensuse.org + +- Update to version 2.28.4: + + [gi] Don't create variant twice + + [gi] Removed hack to avoid using GLib.Variant.new_variant. + + [gi] Added additional test case for GVariant handling + + [gi] Added support for GVariant arguments + + pygi-convert.sh: Make sure the uppercase GObject module is + imported instead of the lowercase + + Fix ABI break in old static bindings + + Fetch size from an enum type + + dsextras.py: ensure eol characters are preserved when writing + template files (so \n does not become \r\n) +- Use full URL to tarball as Source: tag. + +------------------------------------------------------------------- +Wed Mar 23 17:39:40 UTC 2011 - fcrozat@novell.com + +- Update to version 2.28.3: + + fix a typo when converting objects to strings gvalues +- Changes from version 2.28.2: + + fixed an ABI break in the static bindings when setting string + gvalues e.g. passing an int to a Gtk.ListStore column which + expects a string automatically converts the int to a string + instead of throwing an error. +- Changes from version 2.28.1: + + pygi-convert.sh now supports webkit conversions and favors + using GObject over gobject. + + Raw closures can now be passed from a signal/vfunc callback to + a method. + + Revert linking to the python libs because the python runtime + statically links it in TreeModel column marshalling is now more + robust (supports GObject Python Object storing). + + Gtk.MessageDialog now respects the MessageType + + You can now send None in for the signature of GDBus messages + that have no parameters. + + TreeViewColumn.set_cell_data_func can take None for the func_data + + Fix syntax error so we can run in Python 2.5 + + Add pickers and menu demos +- Changes from version 2.28.0: + + fix sinking of floating objects + + fix leaks when setting properties + + add basic icon view demo + + add search entry demo + + override Gdk.RGBA so you can construct it like + Gdk.RGBA(1.0, 1.0, 1.0, 1.0). + + handle unichar gvalues in TreeModels + + check for _thread module when configuring threading + + package config file now contains overridesdir variable for 3rd + party overrides. + + on windows set bdist_wininst user-access-control property when + installing. + + Gtk.stock_lookup return None on failure instead of a success + value. + + Python 2.5 fixes + + Python 3 fixes + +------------------------------------------------------------------- +Tue Mar 1 08:30:34 UTC 2011 - fcrozat@novell.com + +- Update to version 2.27.91: + + Typelibs now loaded at import time instead of lazy loading. + + Various fixes for GTK+/GDK support via gi. + + Various other fixes. +- Changes from version 2.27.90: + + Faster handling of virtual methods when constructing objects + + Enhanced gdbus and gvarient handling. + + Enhanced drag and drop support. + + Enhanced GtkTextBuffer support + + Enhanced pygi-convert.sh script for automating PyGtk to + PyGObject Introspection migration. + + Many introspection fixes. + + Add/improve various overrides for GTK+. + + Python 3 fixes. +- Changes from version 2.27.0: + + Implement richcompare for GIBaseInfo + + Add a overrides registry so we can reference overrides inside + the module + + Add/improve various overrides for GTK+. + + Many introspection fixes. + + Python 3 fixes. + + Various other fixes. +- Remove pygobject-2.26.0-capsule.patch: fixed upstream. +- Change python-gobject2, python-gobject2-cairo and + python-gobject2-devel Obsoletes to be < instead of <= now that we + have a new version. + +------------------------------------------------------------------- +-Wed Feb 9 18:09:19 UTC 2011 - jmatejek@novell.com + +- added patch that switches to new Capsule API, because the deprecated + PyCObject API will cause a segfault when warnings are exceptions + (bnc#669802) + +------------------------------------------------------------------- +Fri Jan 7 15:05:51 CET 2011 - vuntz@opensuse.org + +- Rename source package and binary package from python-gobject2 to + python-gobject: there's no reason to have the trailing 2 here. +- Add appropriate Provides/Obsoletes for migration. + +------------------------------------------------------------------- +Mon Sep 27 20:37:08 CEST 2010 - vuntz@opensuse.org + +- Update to version 2.26.0: + + A lot of work for introspection support. + + A lot of work for python3 support. + + Wrap g_get_system_{config,data}_dirs() + + Wrap g_uri_list_extract_uris. + + Add override for GLib.Variant.new_tuple + + Use Bytes instead of Unicode when reading io + + Many bug fixes. + + Fix warnings. + + Code cleanup. + +------------------------------------------------------------------- +Fri Aug 27 16:00:44 CEST 2010 - vuntz@opensuse.org + +- Fix Supplements of python-gobject2-cairo subpackage to reference + the name of the package providing cairo, instead of + name-version-arch. + +------------------------------------------------------------------- +Sun Aug 8 16:49:36 CEST 2010 - vuntz@opensuse.org + +- Merge doc subpackage in devel subpackage, since the files in + there are needed when building API docs for other python + bindings. + +------------------------------------------------------------------- +Sun Aug 8 14:29:38 CEST 2010 - vuntz@opensuse.org + +- Update to version 2.21.5: + + Adjust to API break in GObject-Introspection + + Override test fixes for new GTK+ annotations + + Fix up treeiter usage due to caller-allocates annotations in + gtk+ + + Add __name__ to DynamicModule class. + + Do not override GdkRectangle. + + Add override for TreeModel implementing __len__() + + Fix warnings + + Various fixes to demos, and new demos +- Changes from version 2.21.4: + + Merge PyGI + + Various fixes to demos, and new demos +- Changes from version 2.21.3: + + Proper handling of null-ok in virtual methods + + Fall back to use the floating references API in glib if there + isn't a sinkfunc defined. + + Revert "Drop sinkfuncs." + + [giounix] Make it possible to compile on glib 2.20 + + Release the lock when potentially invoking Python code. +- Changes from version 2.21.2: ++++ 326 more lines (skipped) ++++ between /dev/null ++++ and /mounts/work_src_done/STABLE/python-gobject2/python3-gobject2.changes New Changes file: python-gobject2.changes: same change calling whatdependson for head-i586 New: ---- pre_checkin.sh pygobject-2.28.6.tar.bz2 python3-gobject2.changes python3-gobject2.spec python-gobject2.changes python-gobject2.spec python-gobject-python3.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python3-gobject2.spec ++++++ # # spec file for package python3-gobject2 # # Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild %define build_for_python3 1 %if %{build_for_python3} %define local_py_requires Requires: python3 %define local_py_sitedir %{_libdir}/python3.1/site-packages %else %define local_py_requires %{py_requires} %define local_py_sitedir %{py_sitedir} %endif Name: python3-gobject2 %define _name pygobject Summary: Python bindings for GObject Version: 2.28.6 Release: 1 License: LGPLv2.1+ Group: Development/Libraries/Python Url: http://ftp.gnome.org/pub/GNOME/sources/pygobject/ Source: http://ftp.gnome.org/pub/GNOME/sources/pygobject/2.28/%{_name}-%{version}.tar.bz2 # PATCH-FIX-UPSTREAM python-gobject-python3.patch vuntz@opensuse.org -- Taken from git, various fixes for python3 Patch0: python-gobject-python3.patch BuildRequires: fdupes BuildRequires: glib2-devel BuildRequires: gobject-introspection-devel BuildRequires: libffi-devel %if %{build_for_python3} BuildRequires: python3-cairo-devel BuildRequires: python3-devel %else BuildRequires: python-cairo-devel BuildRequires: python-devel %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build %{local_py_requires} %description Pygobjects is an extension module for python that gives you access to GLib's GObjects. %package cairo License: LGPLv2.1+ Summary: Python bindings for GObject -- Cairo bindings Group: Development/Libraries/Python Requires: %{name} = %{version} %define cairo_real_package %(rpm -q --qf '%%{NAME}' --whatprovides cairo) Supplements: packageand(%{name}:%{cairo_real_package}) %description cairo Pygobjects is an extension module for python that gives you access to GLib's GObjects. This package contains the Python Cairo bindings for GObject. %package devel License: LGPLv2.1+ Summary: Python bindings for GObject Group: Development/Libraries/Python Requires: %{name} = %{version} %if %{build_for_python3} # Several files are conflicting between python2 and python3 builds Conflicts: python-gobject-devel %else Provides: python-gobject2-doc = %{version} Obsoletes: python-gobject2-doc < %{version} %endif %description devel This package contains files required to build wrappers for gobject addon libraries such as pygtk. %prep %setup -q -n %{_name}-%{version} %patch0 -p1 autoreconf -fi %build %if %{build_for_python3} export PYTHON=python3 %endif %configure --disable-static make %{?jobs:-j%jobs} V=1 %install %makeinstall find %{buildroot} -name '*.la' -delete -print rm examples/Makefile* %fdupes $RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-,root,root) %doc AUTHORS NEWS README ChangeLog examples %dir %{local_py_sitedir}/gtk-2.0 %{local_py_sitedir}/gi/ %{local_py_sitedir}/gtk-2.0/gio/ %{local_py_sitedir}/glib/ %{local_py_sitedir}/gobject/ %{local_py_sitedir}/gtk-2.0/dsextras.py* %{local_py_sitedir}/pygtk.* %{_libdir}/*.so.* # Live in cairo subpackage %exclude %{local_py_sitedir}/gi/_gi_cairo.so %files cairo %defattr(-,root,root) %{local_py_sitedir}/gi/_gi_cairo.so %files devel %defattr(-,root,root) %{_includedir}/pygtk-2.0/ %{_libdir}/*.so %{_libdir}/pkgconfig/pygobject-2.0.pc ## codegen %{_bindir}/pygobject-codegen-2.0 # we explicitly list the directories here to be sure we don't include something # that should live in the main package %dir %{_datadir}/%{_name} %dir %{_datadir}/%{_name}/2.0 %{_datadir}/%{_name}/2.0/codegen/ %{_datadir}/%{_name}/2.0/defs/ %{_datadir}/%{_name}/xsl/ ## doc: we need the files there since building API docs for other python ## bindings require some files from here # Own these repositories to not depend on gtk-doc while building: %dir %{_datadir}/gtk-doc %dir %{_datadir}/gtk-doc/html %{_datadir}/gtk-doc/html/pygobject/ %changelog ++++++ python-gobject2.spec ++++++ # # spec file for package python-gobject2 # # Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild %define build_for_python3 0 %if %{build_for_python3} %define local_py_requires Requires: python3 %define local_py_sitedir %{_libdir}/python3.1/site-packages %else %define local_py_requires %{py_requires} %define local_py_sitedir %{py_sitedir} %endif Name: python-gobject2 %define _name pygobject Summary: Python bindings for GObject Version: 2.28.6 Release: 1 License: LGPLv2.1+ Group: Development/Libraries/Python Url: http://ftp.gnome.org/pub/GNOME/sources/pygobject/ Source: http://ftp.gnome.org/pub/GNOME/sources/pygobject/2.28/%{_name}-%{version}.tar.bz2 # PATCH-FIX-UPSTREAM python-gobject-python3.patch vuntz@opensuse.org -- Taken from git, various fixes for python3 Patch0: python-gobject-python3.patch BuildRequires: fdupes BuildRequires: glib2-devel BuildRequires: gobject-introspection-devel BuildRequires: libffi-devel %if %{build_for_python3} BuildRequires: python3-cairo-devel BuildRequires: python3-devel %else BuildRequires: python-cairo-devel BuildRequires: python-devel %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build %{local_py_requires} %description Pygobjects is an extension module for python that gives you access to GLib's GObjects. %package cairo License: LGPLv2.1+ Summary: Python bindings for GObject -- Cairo bindings Group: Development/Libraries/Python Requires: %{name} = %{version} %define cairo_real_package %(rpm -q --qf '%%{NAME}' --whatprovides cairo) Supplements: packageand(%{name}:%{cairo_real_package}) %description cairo Pygobjects is an extension module for python that gives you access to GLib's GObjects. This package contains the Python Cairo bindings for GObject. %package devel License: LGPLv2.1+ Summary: Python bindings for GObject Group: Development/Libraries/Python Requires: %{name} = %{version} %if %{build_for_python3} # Several files are conflicting between python2 and python3 builds Conflicts: python-gobject-devel %else Provides: python-gobject2-doc = %{version} Obsoletes: python-gobject2-doc < %{version} %endif %description devel This package contains files required to build wrappers for gobject addon libraries such as pygtk. %prep %setup -q -n %{_name}-%{version} %patch0 -p1 autoreconf -fi %build %if %{build_for_python3} export PYTHON=python3 %endif %configure --disable-static make %{?jobs:-j%jobs} V=1 %install %makeinstall find %{buildroot} -name '*.la' -delete -print rm examples/Makefile* %fdupes $RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-,root,root) %doc AUTHORS NEWS README ChangeLog examples %dir %{local_py_sitedir}/gtk-2.0 %{local_py_sitedir}/gi/ %{local_py_sitedir}/gtk-2.0/gio/ %{local_py_sitedir}/glib/ %{local_py_sitedir}/gobject/ %{local_py_sitedir}/gtk-2.0/dsextras.py* %{local_py_sitedir}/pygtk.* %{_libdir}/*.so.* # Live in cairo subpackage %exclude %{local_py_sitedir}/gi/_gi_cairo.so %files cairo %defattr(-,root,root) %{local_py_sitedir}/gi/_gi_cairo.so %files devel %defattr(-,root,root) %{_includedir}/pygtk-2.0/ %{_libdir}/*.so %{_libdir}/pkgconfig/pygobject-2.0.pc ## codegen %{_bindir}/pygobject-codegen-2.0 # we explicitly list the directories here to be sure we don't include something # that should live in the main package %dir %{_datadir}/%{_name} %dir %{_datadir}/%{_name}/2.0 %{_datadir}/%{_name}/2.0/codegen/ %{_datadir}/%{_name}/2.0/defs/ %{_datadir}/%{_name}/xsl/ ## doc: we need the files there since building API docs for other python ## bindings require some files from here # Own these repositories to not depend on gtk-doc while building: %dir %{_datadir}/gtk-doc %dir %{_datadir}/gtk-doc/html %{_datadir}/gtk-doc/html/pygobject/ %changelog ++++++ pre_checkin.sh ++++++ #!/bin/sh sed 's,build_for_python3 0,build_for_python3 1,;s,^(Name: *)python-gobject,\1python3-gobject,' python-gobject2.spec > python3-gobject2.spec cp python-gobject2.changes python3-gobject2.changes ++++++ python-gobject-python3.patch ++++++
From 4e5833d0c2fe548617e5ea510f05920fd0caf73b Mon Sep 17 00:00:00 2001 From: Ignacio Casal Quinteiro <icq@gnome.org> Date: Thu, 21 Apr 2011 14:52:20 +0000 Subject: [python3] fix build. PYcairo_IMPORT doesn't exists anymore
--- (limited to 'gi/pygi-foreign-cairo.c') diff --git a/gi/pygi-foreign-cairo.c b/gi/pygi-foreign-cairo.c index 10d5643..8353294 100644 --- a/gi/pygi-foreign-cairo.c +++ b/gi/pygi-foreign-cairo.c @@ -30,7 +30,7 @@ #include <pycairo/py3cairo.h> #endif -Pycairo_CAPI_t *Pycairo_CAPI; +static Pycairo_CAPI_t *Pycairo_CAPI; #include "pygi-foreign.h" @@ -115,7 +115,12 @@ cairo_surface_release (GIBaseInfo *base_info, static PyMethodDef _gi_cairo_functions[] = {}; PYGLIB_MODULE_START(_gi_cairo, "_gi_cairo") { +#if PY_VERSION_HEX < 0x03000000 Pycairo_IMPORT; +#else + Pycairo_CAPI = (Pycairo_CAPI_t*) PyCObject_Import("cairo", "CAPI"); +#endif + if (Pycairo_CAPI == NULL) return PYGLIB_MODULE_ERROR_RETURN; -- cgit v0.9
From 426c7109d4c0dbf0d56cc075f97f33b3451f79a8 Mon Sep 17 00:00:00 2001 From: John (J5) Palmieri <johnp@redhat.com> Date: Wed, 27 Apr 2011 19:47:19 +0000 Subject: use PyCapsule when importing pycairo/require pycairo 1.10.0 for python3 builds
* PyCObject is deprecated and pycairo 1.10.0 is first release to fix this issue --- diff --git a/configure.ac b/configure.ac index 0cc920b..fb69237 100644 --- a/configure.ac +++ b/configure.ac @@ -17,7 +17,8 @@ m4_define(pygobject_version, pygobject_major_version.pygobject_minor_version.pyg dnl versions of packages we require ... m4_define(introspection_required_version, 0.10.2) -m4_define(pycairo_required_version, 1.2.0) +m4_define(py2cairo_required_version, 1.2.0) +m4_define(py3cairo_required_version, 1.10.0) m4_define(glib_required_version, 2.24.0) m4_define(gio_required_version, 2.24.0) m4_define(giounix_required_version, 2.22.4) @@ -226,9 +227,15 @@ if test "$enable_introspection" != no; then AC_SUBST(GI_DATADIR) if test "$enable_cairo" != no; then - PKG_CHECK_MODULES(PYCAIRO, - pycairo >= pycairo_required_version - ) + if test $build_py3k = true; then + PKG_CHECK_MODULES(PYCAIRO, + py3cairo >= py3cairo_required_version + ) + else + PKG_CHECK_MODULES(PYCAIRO, + pycairo >= py2cairo_required_version + ) + fi fi fi AM_CONDITIONAL(ENABLE_INTROSPECTION, test "$enable_introspection" = "yes") diff --git a/gi/pygi-foreign-cairo.c b/gi/pygi-foreign-cairo.c index 8353294..af84733 100644 --- a/gi/pygi-foreign-cairo.c +++ b/gi/pygi-foreign-cairo.c @@ -118,7 +118,7 @@ PYGLIB_MODULE_START(_gi_cairo, "_gi_cairo") #if PY_VERSION_HEX < 0x03000000 Pycairo_IMPORT; #else - Pycairo_CAPI = (Pycairo_CAPI_t*) PyCObject_Import("cairo", "CAPI"); + Pycairo_CAPI = (Pycairo_CAPI_t*) PyCapsule_Import("cairo.CAPI", 0); #endif if (Pycairo_CAPI == NULL) -- cgit v0.9 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org