Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-poppler-qt5 for 
openSUSE:Factory checked in at 2022-05-05 23:07:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-poppler-qt5 (Old)
 and      /work/SRC/openSUSE:Factory/.python-poppler-qt5.new.1538 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-poppler-qt5"

Thu May  5 23:07:42 2022 rev:10 rq:975260 version:21.3.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-poppler-qt5/python-poppler-qt5.changes    
2021-02-25 18:27:22.678178166 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-poppler-qt5.new.1538/python-poppler-qt5.changes
  2022-05-05 23:08:27.813712352 +0200
@@ -1,0 +2,11 @@
+Thu May  5 19:36:17 UTC 2022 - Cor Blom <corne...@solcon.nl>
+
+- Update to 21.3.0:
+  Fix #43: Building 21.1.0 fails with unsupported function return type
+  by Ben Greiner
+- Drop patch merged upstream:
+  * python-poppler-qt5-mapqvector.patch
+- Drop support for sip4, which means only 15.4 and higher are now
+  supported (also solves boo#1198526)
+
+-------------------------------------------------------------------

Old:
----
  python-poppler-qt5-21.1.0.tar.gz
  python-poppler-qt5-mapqvector.patch

New:
----
  python-poppler-qt5-21.3.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-poppler-qt5.spec ++++++
--- /var/tmp/diff_new_pack.z4IVko/_old  2022-05-05 23:08:28.273712926 +0200
+++ /var/tmp/diff_new_pack.z4IVko/_new  2022-05-05 23:08:28.277712930 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-poppler-qt5
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 # Copyright (c) 2011 LISA GmbH, Bingen, Germany.
 # Copyright (c) 2012 Johannes Engel <jcnen...@gmail.com>
 #
@@ -18,30 +18,19 @@
 #
 
 
-%if 0%{suse_version} < 1550
-%{?!use_sip4:%define use_sip4 1}
-%endif
-
 %{?!python_module:%define python_module() python3-%{**}}
 %define skip_python2 1
 Name:           python-poppler-qt5
-Version:        21.1.0
+Version:        21.3.0
 Release:        0
 Summary:        Python binding to poppler-qt5
 License:        LGPL-2.1-or-later
 Group:          Development/Languages/Python
 URL:            https://pypi.org/project/python-poppler-qt5/
 Source0:        
https://files.pythonhosted.org/packages/source/p/python-poppler-qt5/%{name}-%{version}.tar.gz
-# PATCH-FIX-UPSTREAM python-poppler-qt5-mapqvector.patch -- 
gh#frescobaldi/python-poppler-qt5#45
-Patch0:         
https://github.com/frescobaldi/python-poppler-qt5/pull/45.patch#/python-poppler-qt5-mapqvector.patch
-BuildRequires:  %{python_module qt5-devel}
-%if 0%{?use_sip4}
-BuildRequires:  %{python_module sip4-devel}
-Requires:       python-sip(api) = %{python_sip_api_ver}
-%else
 BuildRequires:  %{python_module pyqt-builder}
+BuildRequires:  %{python_module qt5-devel}
 BuildRequires:  %{python_module sip-devel > 5.3}
-%endif
 BuildRequires:  libpoppler-qt5-devel
 BuildRequires:  python-pyqt-rpm-macros
 BuildRequires:  python-rpm-macros
@@ -67,27 +56,16 @@
 This package contains the SIP and Qscintilla API files to build
 python packages using python-poppler
 
-
 %prep
 %autosetup -p1
 # use the aliased keyword for subprocess.check_call() that is also known by 
Python 3.6 gh#frescobaldi/python-poppler-qt5#44
 sed -i 's/text=True/universal_newlines=True/' project.py
 
 %build
-%if 0%{?use_sip4}
-export PATH=%{_libdir}/qt5/bin:$PATH
-%python_build
-%else
 %pyqt_build
-%endif
 
 %install
-%if 0%{?use_sip4}
-export PATH=%{_libdir}/qt5/bin:$PATH
-%python_install
-%else
 %pyqt_install
-%endif
 
 %check
 %python_expand PYTHONPATH=%{buildroot}%{$python_sitearch} $python -c 'import 
popplerqt5; print(popplerqt5.version())'
@@ -98,11 +76,9 @@
 %{python_sitearch}/popplerqt5*.so
 %{python_sitearch}/python_poppler_qt5-%{version}*-info
 
-%if ! 0%{?use_sip4}
 %files %{python_files devel}
 %license LICENSE
 %{python_sitearch}/PyQt5/bindings/popplerqt5
 %{_libqt5_datadir}/qsci/api/python_%{python_bin_suffix}/python-poppler-qt5.api
-%endif
 
 %changelog

++++++ python-poppler-qt5-21.1.0.tar.gz -> python-poppler-qt5-21.3.0.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-poppler-qt5-21.1.0/ChangeLog 
new/python-poppler-qt5-21.3.0/ChangeLog
--- old/python-poppler-qt5-21.1.0/ChangeLog     2021-01-07 16:30:04.000000000 
+0100
+++ new/python-poppler-qt5-21.3.0/ChangeLog     2022-05-05 06:44:07.000000000 
+0200
@@ -1,3 +1,11 @@
+ChangeLog of python-poppler-qt5
+
+Version 21.3.0 -- May 5th, 2022
+
+* Fix #43: Building 21.1.0 fails with unsupported function return type
+  by Ben Greiner (thanks!)
+
+
 Version 21.1.0 -- January 7th, 2021
 
 * Most new Qt5 api methods added upto poppler-qt5 21.01 (WB)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-poppler-qt5-21.1.0/PKG-INFO 
new/python-poppler-qt5-21.3.0/PKG-INFO
--- old/python-poppler-qt5-21.1.0/PKG-INFO      2021-01-07 17:21:20.960942700 
+0100
+++ new/python-poppler-qt5-21.3.0/PKG-INFO      2022-05-05 06:48:27.031505800 
+0200
@@ -1,86 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
 Name: python-poppler-qt5
-Version: 21.1.0
+Version: 21.3.0
 Summary: A Python binding to Poppler-Qt5
 Home-page: https://github.com/frescobaldi/python-poppler-qt5
 Maintainer: Wilbert Berendsen
 Maintainer-email: wbs...@xs4all.nl
 License: LGPL
-Description: ==================
-        python-poppler-qt5
-        ==================
-        
-        A Python binding for libpoppler-qt5 that aims for completeness and for 
being
-        actively maintained.
-        
-        Created and maintained by Wilbert Berendsen <wbs...@xs4all.nl>, with 
help of
-        other contributors, especially where it concerns supporting many 
platforms and
-        build systems. Thanks for everyone's help!
-        
-        Homepage: https://pypi.python.org/pypi/python-poppler-qt5/
-        
-        
-        Usage::
-        
-            import popplerqt5
-            d = popplerqt5.Poppler.Document.load('file.pdf')
-        
-        
-        Documentation
-        -------------
-        
-        The Python API closely follows the Poppler Qt5 C++ interface library 
API,
-        documented at https://poppler.freedesktop.org/api/qt5/ .
-        
-        Note: Releases of PyQt5 < 5.4 currently do not support the QtXml 
module,
-        all methods that use the QDomDocument, QDomElement and QDomNode types 
are
-        disabled. This concerns the ``Document::toc()`` method and some 
constructors
-        and the ``store()`` methods in the ``Annotation`` subclasses. So, using
-        PyQt5 >= 5.4 is recommended.
-        
-        Wherever the C++ API requires ``QList``, ``QSet`` or ``QLinkedList``, 
any
-        Python sequence can be used. API calls that return ``QList``, ``QSet`` 
or
-        ``QLinkedList`` all return Python lists.
-        
-        There are a few other differences:
-        
-        ``Poppler::Document::getPdfVersion(int *major, int *minor)`` can 
simply be
-        called as ``d.getPdfVersion()``, (where ``d`` is a 
``Poppler::Document``
-        instance); it will return a tuple of two integers (major, minor).
-        
-        ``Poppler::Document`` has ``__len__`` and ``__getitem__`` methods,
-        corresponding to ``numPages()`` and ``page(int num)``.
-        
-        ``Poppler::FontIterator`` (returned by 
``Poppler::Document::newFontIterator``)
-        is also a Python iterable (e.g. has ``__iter__()`` and ``__next__()`` 
methods).
-        So although you can use::
-        
-            it = document.newFontIterator()
-            while it.hasNext():
-                fonts = it.next()  # list of FontInfo objects
-                ...
-        
-        you can also use the more Pythonic::
-        
-            for fonts in document.newFontIterator():
-                ...
-        
-        In addition to the Poppler namespace, there are two toplevel module
-        functions:
-        
-        ``popplerqt5.version()``
-            returns the version of the ``python-poppler-qt5`` package as a 
tuple of
-            ints, e.g. ``(0, 18, 2)``.
-        
-        ``popplerqt5.poppler_version()``
-            returns the version of the linked Poppler-Qt5 library as a tuple 
of ints,
-            e.g. ``(0, 24, 5)``.
-        
-            This is determined at build time. If at build time the Poppler-Qt5 
version
-            could not be determined and was not specified, an empty tuple 
might be
-            returned.
-        
-        
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: Developers
@@ -90,3 +15,81 @@
 Classifier: Operating System :: POSIX
 Classifier: Programming Language :: Python :: 3
 Classifier: Topic :: Multimedia :: Graphics :: Viewers
+License-File: LICENSE
+
+==================
+python-poppler-qt5
+==================
+
+A Python binding for libpoppler-qt5 that aims for completeness and for being
+actively maintained.
+
+Created and maintained by Wilbert Berendsen <wbs...@xs4all.nl>, with help of
+other contributors, especially where it concerns supporting many platforms and
+build systems. Thanks for everyone's help!
+
+Homepage: https://pypi.python.org/pypi/python-poppler-qt5/
+
+
+Usage::
+
+    import popplerqt5
+    d = popplerqt5.Poppler.Document.load('file.pdf')
+
+
+Documentation
+-------------
+
+The Python API closely follows the Poppler Qt5 C++ interface library API,
+documented at https://poppler.freedesktop.org/api/qt5/ .
+
+Note: Releases of PyQt5 < 5.4 currently do not support the QtXml module,
+all methods that use the QDomDocument, QDomElement and QDomNode types are
+disabled. This concerns the ``Document::toc()`` method and some constructors
+and the ``store()`` methods in the ``Annotation`` subclasses. So, using
+PyQt5 >= 5.4 is recommended.
+
+Wherever the C++ API requires ``QList``, ``QSet`` or ``QLinkedList``, any
+Python sequence can be used. API calls that return ``QList``, ``QSet`` or
+``QLinkedList`` all return Python lists.
+
+There are a few other differences:
+
+``Poppler::Document::getPdfVersion(int *major, int *minor)`` can simply be
+called as ``d.getPdfVersion()``, (where ``d`` is a ``Poppler::Document``
+instance); it will return a tuple of two integers (major, minor).
+
+``Poppler::Document`` has ``__len__`` and ``__getitem__`` methods,
+corresponding to ``numPages()`` and ``page(int num)``.
+
+``Poppler::FontIterator`` (returned by ``Poppler::Document::newFontIterator``)
+is also a Python iterable (e.g. has ``__iter__()`` and ``__next__()`` methods).
+So although you can use::
+
+    it = document.newFontIterator()
+    while it.hasNext():
+        fonts = it.next()  # list of FontInfo objects
+        ...
+
+you can also use the more Pythonic::
+
+    for fonts in document.newFontIterator():
+        ...
+
+In addition to the Poppler namespace, there are two toplevel module
+functions:
+
+``popplerqt5.version()``
+    returns the version of the ``python-poppler-qt5`` package as a tuple of
+    ints, e.g. ``(0, 18, 2)``.
+
+``popplerqt5.poppler_version()``
+    returns the version of the linked Poppler-Qt5 library as a tuple of ints,
+    e.g. ``(0, 24, 5)``.
+
+    This is determined at build time. If at build time the Poppler-Qt5 version
+    could not be determined and was not specified, an empty tuple might be
+    returned.
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-poppler-qt5-21.1.0/project.py 
new/python-poppler-qt5-21.3.0/project.py
--- old/python-poppler-qt5-21.1.0/project.py    2021-01-07 13:00:27.000000000 
+0100
+++ new/python-poppler-qt5-21.3.0/project.py    2021-04-27 20:53:35.000000000 
+0200
@@ -42,7 +42,7 @@
     def run_pkg_config(option):
         output = subprocess.check_output(
             ['pkg-config', option, 'poppler-qt5'],
-            text=True)
+            universal_newlines=True)
         return output.rstrip()
 
     def apply_user_defaults(self, tool):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-poppler-qt5-21.1.0/pyproject.toml 
new/python-poppler-qt5-21.3.0/pyproject.toml
--- old/python-poppler-qt5-21.1.0/pyproject.toml        2021-01-07 
16:01:29.000000000 +0100
+++ new/python-poppler-qt5-21.3.0/pyproject.toml        2021-03-04 
17:06:34.000000000 +0100
@@ -4,7 +4,7 @@
 
 [tool.sip.metadata]
 name = "python-poppler-qt5"
-version = "21.1.0"
+version = "21.3.0"
 summary = "A Python binding to Poppler-Qt5"
 description-file = "README.rst"
 home-page = "https://github.com/frescobaldi/python-poppler-qt5";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/python-poppler-qt5-21.1.0/python_poppler_qt5.egg-info/PKG-INFO 
new/python-poppler-qt5-21.3.0/python_poppler_qt5.egg-info/PKG-INFO
--- old/python-poppler-qt5-21.1.0/python_poppler_qt5.egg-info/PKG-INFO  
2021-01-07 17:21:20.000000000 +0100
+++ new/python-poppler-qt5-21.3.0/python_poppler_qt5.egg-info/PKG-INFO  
2022-05-05 06:48:26.000000000 +0200
@@ -1,86 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
 Name: python-poppler-qt5
-Version: 21.1.0
+Version: 21.3.0
 Summary: A Python binding to Poppler-Qt5
 Home-page: https://github.com/frescobaldi/python-poppler-qt5
 Maintainer: Wilbert Berendsen
 Maintainer-email: wbs...@xs4all.nl
 License: LGPL
-Description: ==================
-        python-poppler-qt5
-        ==================
-        
-        A Python binding for libpoppler-qt5 that aims for completeness and for 
being
-        actively maintained.
-        
-        Created and maintained by Wilbert Berendsen <wbs...@xs4all.nl>, with 
help of
-        other contributors, especially where it concerns supporting many 
platforms and
-        build systems. Thanks for everyone's help!
-        
-        Homepage: https://pypi.python.org/pypi/python-poppler-qt5/
-        
-        
-        Usage::
-        
-            import popplerqt5
-            d = popplerqt5.Poppler.Document.load('file.pdf')
-        
-        
-        Documentation
-        -------------
-        
-        The Python API closely follows the Poppler Qt5 C++ interface library 
API,
-        documented at https://poppler.freedesktop.org/api/qt5/ .
-        
-        Note: Releases of PyQt5 < 5.4 currently do not support the QtXml 
module,
-        all methods that use the QDomDocument, QDomElement and QDomNode types 
are
-        disabled. This concerns the ``Document::toc()`` method and some 
constructors
-        and the ``store()`` methods in the ``Annotation`` subclasses. So, using
-        PyQt5 >= 5.4 is recommended.
-        
-        Wherever the C++ API requires ``QList``, ``QSet`` or ``QLinkedList``, 
any
-        Python sequence can be used. API calls that return ``QList``, ``QSet`` 
or
-        ``QLinkedList`` all return Python lists.
-        
-        There are a few other differences:
-        
-        ``Poppler::Document::getPdfVersion(int *major, int *minor)`` can 
simply be
-        called as ``d.getPdfVersion()``, (where ``d`` is a 
``Poppler::Document``
-        instance); it will return a tuple of two integers (major, minor).
-        
-        ``Poppler::Document`` has ``__len__`` and ``__getitem__`` methods,
-        corresponding to ``numPages()`` and ``page(int num)``.
-        
-        ``Poppler::FontIterator`` (returned by 
``Poppler::Document::newFontIterator``)
-        is also a Python iterable (e.g. has ``__iter__()`` and ``__next__()`` 
methods).
-        So although you can use::
-        
-            it = document.newFontIterator()
-            while it.hasNext():
-                fonts = it.next()  # list of FontInfo objects
-                ...
-        
-        you can also use the more Pythonic::
-        
-            for fonts in document.newFontIterator():
-                ...
-        
-        In addition to the Poppler namespace, there are two toplevel module
-        functions:
-        
-        ``popplerqt5.version()``
-            returns the version of the ``python-poppler-qt5`` package as a 
tuple of
-            ints, e.g. ``(0, 18, 2)``.
-        
-        ``popplerqt5.poppler_version()``
-            returns the version of the linked Poppler-Qt5 library as a tuple 
of ints,
-            e.g. ``(0, 24, 5)``.
-        
-            This is determined at build time. If at build time the Poppler-Qt5 
version
-            could not be determined and was not specified, an empty tuple 
might be
-            returned.
-        
-        
 Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: Developers
@@ -90,3 +15,81 @@
 Classifier: Operating System :: POSIX
 Classifier: Programming Language :: Python :: 3
 Classifier: Topic :: Multimedia :: Graphics :: Viewers
+License-File: LICENSE
+
+==================
+python-poppler-qt5
+==================
+
+A Python binding for libpoppler-qt5 that aims for completeness and for being
+actively maintained.
+
+Created and maintained by Wilbert Berendsen <wbs...@xs4all.nl>, with help of
+other contributors, especially where it concerns supporting many platforms and
+build systems. Thanks for everyone's help!
+
+Homepage: https://pypi.python.org/pypi/python-poppler-qt5/
+
+
+Usage::
+
+    import popplerqt5
+    d = popplerqt5.Poppler.Document.load('file.pdf')
+
+
+Documentation
+-------------
+
+The Python API closely follows the Poppler Qt5 C++ interface library API,
+documented at https://poppler.freedesktop.org/api/qt5/ .
+
+Note: Releases of PyQt5 < 5.4 currently do not support the QtXml module,
+all methods that use the QDomDocument, QDomElement and QDomNode types are
+disabled. This concerns the ``Document::toc()`` method and some constructors
+and the ``store()`` methods in the ``Annotation`` subclasses. So, using
+PyQt5 >= 5.4 is recommended.
+
+Wherever the C++ API requires ``QList``, ``QSet`` or ``QLinkedList``, any
+Python sequence can be used. API calls that return ``QList``, ``QSet`` or
+``QLinkedList`` all return Python lists.
+
+There are a few other differences:
+
+``Poppler::Document::getPdfVersion(int *major, int *minor)`` can simply be
+called as ``d.getPdfVersion()``, (where ``d`` is a ``Poppler::Document``
+instance); it will return a tuple of two integers (major, minor).
+
+``Poppler::Document`` has ``__len__`` and ``__getitem__`` methods,
+corresponding to ``numPages()`` and ``page(int num)``.
+
+``Poppler::FontIterator`` (returned by ``Poppler::Document::newFontIterator``)
+is also a Python iterable (e.g. has ``__iter__()`` and ``__next__()`` methods).
+So although you can use::
+
+    it = document.newFontIterator()
+    while it.hasNext():
+        fonts = it.next()  # list of FontInfo objects
+        ...
+
+you can also use the more Pythonic::
+
+    for fonts in document.newFontIterator():
+        ...
+
+In addition to the Poppler namespace, there are two toplevel module
+functions:
+
+``popplerqt5.version()``
+    returns the version of the ``python-poppler-qt5`` package as a tuple of
+    ints, e.g. ``(0, 18, 2)``.
+
+``popplerqt5.poppler_version()``
+    returns the version of the linked Poppler-Qt5 library as a tuple of ints,
+    e.g. ``(0, 24, 5)``.
+
+    This is determined at build time. If at build time the Poppler-Qt5 version
+    could not be determined and was not specified, an empty tuple might be
+    returned.
+
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-poppler-qt5-21.1.0/setup.py 
new/python-poppler-qt5-21.3.0/setup.py
--- old/python-poppler-qt5-21.1.0/setup.py      2021-01-07 16:01:44.000000000 
+0100
+++ new/python-poppler-qt5-21.3.0/setup.py      2021-03-04 17:06:28.000000000 
+0100
@@ -2,7 +2,7 @@
 
 project = dict(
     name = 'python-poppler-qt5',
-    version = '21.1.0',
+    version = '21.3.0',
     description = 'A Python binding to Poppler-Qt5',
     long_description = (
         'A Python binding to Poppler-Qt5 that aims for '
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/python-poppler-qt5-21.1.0/types.sip 
new/python-poppler-qt5-21.3.0/types.sip
--- old/python-poppler-qt5-21.1.0/types.sip     2020-02-09 12:02:56.000000000 
+0100
+++ new/python-poppler-qt5-21.3.0/types.sip     2021-03-04 17:03:22.000000000 
+0100
@@ -331,5 +331,98 @@
 };
 
 
+/**
+ * Convert QVector< QPair<TYPE, TYPE> >
+ * from and to a Python list of a 2-item tuple
+ */
+
+template<TYPE>
+%MappedType QVector< QPair<TYPE, TYPE> >
+{
+%TypeHeaderCode
+#include <qvector.h>
+#include <qpair.h>
+%End
+
+%ConvertFromTypeCode
+  // Create the list.
+  PyObject *l;
+
+  if ((l = PyList_New(sipCpp->size())) == NULL)
+      return NULL;
+
+  // Set the list elements.
+  for (int i = 0; i < sipCpp->size(); ++i)
+  {
+    QPair<TYPE, TYPE>* p = new QPair<TYPE, TYPE>(sipCpp->at(i));
+    PyObject *ptuple = PyTuple_New(2);
+    PyObject *pfirst;
+    PyObject *psecond;
+
+    TYPE *sfirst = new TYPE(p->first);
+    if ((pfirst = sipConvertFromType(sfirst, sipType_TYPE, sipTransferObj)) == 
NULL)
+    {
+      Py_DECREF(l);
+      Py_DECREF(ptuple);
+      return NULL;
+    }
+    PyTuple_SET_ITEM(ptuple, 0, pfirst);
+
+    TYPE *ssecond = new TYPE(p->second);
+    if ((psecond = sipConvertFromType(ssecond, sipType_TYPE, sipTransferObj)) 
== NULL)
+    {
+      Py_DECREF(l);
+      Py_DECREF(ptuple);
+      Py_DECREF(pfirst);
+      return NULL;
+    }
+    PyTuple_SET_ITEM(ptuple, 1, psecond);
+
+    PyList_SET_ITEM(l, i, ptuple);
+  }
+
+  return l;
+%End
+
+%ConvertToTypeCode
+  const sipTypeDef* qpair_type = sipFindType("QPair<TYPE, TYPE>");
+
+  // Check the type if that is all that is required.
+  if (sipIsErr == NULL)
+  {
+    if (!PySequence_Check(sipPy))
+      return 0;
+
+    for (int i = 0; i < PySequence_Size(sipPy); ++i)
+      if (!sipCanConvertToType(PySequence_ITEM(sipPy, i), qpair_type, 
SIP_NOT_NONE))
+        return 0;
+
+    return 1;
+  }
+
+
+  QVector< QPair<TYPE, TYPE> > *qv = new QVector< QPair<TYPE, TYPE> >;
+
+  for (int i = 0; i < PySequence_Size(sipPy); ++i)
+  {
+    int state;
+    QPair<TYPE, TYPE> * p = reinterpret_cast< QPair<TYPE, TYPE> * 
>(sipConvertToType(PySequence_ITEM(sipPy, i), qpair_type, sipTransferObj, 
SIP_NOT_NONE, &state, sipIsErr));
+
+    if (*sipIsErr)
+    {
+      sipReleaseType(p, qpair_type, state);
+      delete qv;
+      return 0;
+    }
+    qv->append(*p);
+    sipReleaseType(p, qpair_type, state);
+  }
+
+  *sipCppPtr = qv;
+  return sipGetState(sipTransferObj);
+%End
+
+};
+
 
 /* kate: indent-width 4; space-indent on; hl c++; indent-mode cstyle; */

Reply via email to