Hi all,
 
We would like to use more python API in libzypp-bindings, such as PoolQuery, and I have tried to import the related API to libzypp, but fails.
 
Here’s the patch I used to import PoolQuery API:
---
diff -uNr libzypp-bindings-0.5.8/swig/PoolQuery.i libzypp-bindings-0.5.8.new/swig/PoolQuery.i
--- libzypp-bindings-0.5.8/swig/PoolQuery.i     1970-01-01 08:00:00.000000000 +0800
+++ libzypp-bindings-0.5.8.new/swig/PoolQuery.i 2011-08-30 13:19:41.067491333 +0800
@@ -0,0 +1 @@
+%include <zypp/PoolQuery.h>
diff -uNr libzypp-bindings-0.5.8/swig/zypp.i libzypp-bindings-0.5.8.new/swig/zypp.i
--- libzypp-bindings-0.5.8/swig/zypp.i  2011-08-30 13:18:41.251366083 +0800
+++ libzypp-bindings-0.5.8.new/swig/zypp.i      2011-08-30 13:48:54.900428645 +0800
@@ -59,6 +59,7 @@
#include "zypp/Resolver.h"
#include "zypp/pool/GetResolvablesToInsDel.h"
 
+#include "zypp/PoolQuery.h"
#include "zypp/Product.h"
 
using namespace boost;
@@ -159,6 +160,7 @@
%include "TmpPath.i"
%include "Resolver.i"
%include "ZConfig.i"
+%include "PoolQuery.i"
 
%ignore zypp::ZYpp::setTextLocale;
%ignore zypp::ZYpp::getTextLocale;
---
But, I have got the following build error.
###########
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc: In function 'PyObject* _wrap___lshift__(PyObject*, PyObject*)':
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc:122672: error: redefinition of 'PyObject* _wrap___lshift__(PyObject*, PyObject*)'
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc:107956: error: 'PyObject* _wrap___lshift__(PyObject*, PyObject*)' previously defined here
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc: In function 'PyObject* _wrap_dumpOn(PyObject*, PyObject*)':
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc:122718: error: redefinition of 'PyObject* _wrap_dumpOn(PyObject*, PyObject*)'
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc:122336: error: 'PyObject* _wrap_dumpOn(PyObject*, PyObject*)' previously defined here
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc: In function 'PyObject* _wrap_ZYppFactoryException_locker_pid(PyObject*, PyObject*)':
/home/abuild/rpmbuild/BUILD/libzypp-bindings-0.5.8/swig/python/libzypp_python.cc:123604: warning: 'pid_t zypp::ZYppFactoryException::locker_pid() const' is deprecated (declared at /usr/include/zypp/ZYppFactory.h:33)
###########
 
Do you have any comments?
 
Thanks In advance.
Qiang