Hello community,

here is the log from the commit of package python3-CXX for openSUSE:Factory 
checked in at 2013-12-11 11:32:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-CXX (Old)
 and      /work/SRC/openSUSE:Factory/.python3-CXX.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python3-CXX"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python3-CXX/python3-CXX.changes  2013-09-26 
14:47:27.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python3-CXX.new/python3-CXX.changes     
2013-12-11 11:32:18.000000000 +0100
@@ -1,0 +2,13 @@
+Fri Dec  6 15:08:28 UTC 2013 - [email protected]
+
+- Update to Version 6.2.5
+  * Fix build issue with GCC 4.2.1 on FreeBSD and Mac OS X (stop python 
defining isspace as a macro).
+  * Remove support for python 3.1 (API's are unstable).
+  * Add Python 3.3 support.
+  * Patch from Michael Droettboom to fix compilation issues.
+  * Patch from Michael Droettboom to add buffer interface for python3.
+- Remove upstreamed python-CXX-6.2.4-fix-indentation.patch
+- Add python-CXX-6.2.5-fix-version.patch
+  This will need to be fixed for any release where the version number is wrong
+
+-------------------------------------------------------------------

Old:
----
  pycxx-6.2.4.tar.gz
  python-CXX-6.2.4-fix-indentation.patch

New:
----
  pycxx-6.2.5.tar.gz
  python-CXX-6.2.5-fix-version.patch

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

Other differences:
------------------
++++++ python3-CXX.spec ++++++
--- /var/tmp/diff_new_pack.2ZAlVP/_old  2013-12-11 11:32:19.000000000 +0100
+++ /var/tmp/diff_new_pack.2ZAlVP/_new  2013-12-11 11:32:19.000000000 +0100
@@ -18,7 +18,7 @@
 %define modname CXX
 %define tarname pycxx
 Name:           python3-%{modname}
-Version:        6.2.4
+Version:        6.2.5
 Release:        0
 License:        BSD-3-Clause
 Summary:        Write Python extensions in C++
@@ -28,8 +28,8 @@
 Source1:        %{name}-rpmlintrc
 # PATCH-MISSING-TAG -- See 
http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
 Patch0:         python-%{modname}-6.2.3-change-include-paths.patch
-# PATCH-MISSING-TAG -- See 
http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines
-Patch1:         python-%{modname}-6.2.4-fix-indentation.patch
+# PATCH-FIX-UPSTREAM python-CXX-6.2.5-fix-version.patch -- fix version number 
from 6.24 to 6.25, needs to be updated for new releases
+Patch1:         python-CXX-6.2.5-fix-version.patch
 BuildRequires:  python3-2to3
 BuildRequires:  python3-devel
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build

++++++ pycxx-6.2.4.tar.gz -> pycxx-6.2.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/CXX/Python3/ExtensionTypeBase.hxx 
new/pycxx-6.2.5/CXX/Python3/ExtensionTypeBase.hxx
--- old/pycxx-6.2.4/CXX/Python3/ExtensionTypeBase.hxx   2010-03-28 
16:54:40.000000000 +0200
+++ new/pycxx-6.2.5/CXX/Python3/ExtensionTypeBase.hxx   2013-06-18 
20:40:36.000000000 +0200
@@ -121,7 +121,8 @@
         virtual Object number_power( const Object &, const Object & );
 
         // Buffer
-        // QQQ need to add py3 interface
+        virtual int buffer_get( Py_buffer *, int flags );
+        virtual int buffer_release( Py_buffer *buf );
 
     public:
         // helper functions to call function fn_name with 0 to 9 args
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/CXX/Version.hxx 
new/pycxx-6.2.5/CXX/Version.hxx
--- old/pycxx-6.2.4/CXX/Version.hxx     2011-03-21 21:49:12.000000000 +0100
+++ new/pycxx-6.2.5/CXX/Version.hxx     2013-08-18 16:51:19.000000000 +0200
@@ -40,7 +40,7 @@
 
 #define PYCXX_VERSION_MAJOR 6
 #define PYCXX_VERSION_MINOR 2
-#define PYCXX_VERSION_PATCH 4
+#define PYCXX_VERSION_PATCH 5
 #define PYCXX_MAKEVERSION( major, minor, patch ) 
((major<<16)|(minor<<8)|(patch))
 #define PYCXX_VERSION PYCXX_MAKEVERSION( PYCXX_VERSION_MAJOR, 
PYCXX_VERSION_MINOR, PYCXX_VERSION_PATCH )
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/CXX/WrapPython.h 
new/pycxx-6.2.5/CXX/WrapPython.h
--- old/pycxx-6.2.4/CXX/WrapPython.h    2009-07-19 17:16:47.000000000 +0200
+++ new/pycxx-6.2.5/CXX/WrapPython.h    2012-06-24 15:18:18.000000000 +0200
@@ -57,4 +57,15 @@
 // pull in python definitions
 #include <Python.h>
 
+// fix issue with Python assuming that isspace, toupper etc are macros
+#if defined(isspace)
+#undef isspace
+#undef isupper
+#undef islower
+#undef isalnum
+#undef isalpha
+#undef toupper
+#undef tolower
+#endif
+
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/README.html new/pycxx-6.2.5/README.html
--- old/pycxx-6.2.4/README.html 2012-03-03 22:40:33.000000000 +0100
+++ new/pycxx-6.2.5/README.html 2013-04-24 20:16:28.000000000 +0200
@@ -1,5 +1,4 @@
 <html>
-
 <head>
 <title>PyCXX README</title>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/SourceForge/index.html 
new/pycxx-6.2.5/SourceForge/index.html
--- old/pycxx-6.2.4/SourceForge/index.html      2011-02-06 13:51:38.000000000 
+0100
+++ new/pycxx-6.2.5/SourceForge/index.html      2013-08-18 16:51:19.000000000 
+0200
@@ -52,7 +52,18 @@
 <p>Latest PyCXX <a href="README.html">README</a> file.</p>
 
 <hr />
-<h2>Version 6.2.3 (6-Feb-2011)</h2>
+<h3>Version 6.2.5 (18-Aug-2013)</h3>
+<p>Fix build issue with GCC 4.2.1 on FreeBSD and Mac OS X (stop python 
defining isspace as a macro).</p>
+<p>Remove support for python 3.1 (API's are unstable).</p>
+<p>Add Python 3.3 support.</p>
+<p>Patch frm Michael Droettboom to fix compilation issues.</p>
+<p>Patch frm Michael Droettboom to add buffer interface for python3.</p>
+
+<h3>Version 6.2.4 (3-Mar-2012)</h3>
+<p>Fix memory leak in string encode and decode functions</p>
+<p>Fix indirect python loading on windows - Bool_type was missing</p>
+
+<h2>Version 6.2.3 (11-mar-2011)</h2>
 <p>Fix memory leak in string encode and decode functions</p>
 <p>Fix indirect python loading on windows - Bool_type was missing</p>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/Src/Python2/cxx_extensions.cxx 
new/pycxx-6.2.5/Src/Python2/cxx_extensions.cxx
--- old/pycxx-6.2.4/Src/Python2/cxx_extensions.cxx      2012-02-26 
15:32:54.000000000 +0100
+++ new/pycxx-6.2.5/Src/Python2/cxx_extensions.cxx      2013-06-18 
20:37:15.000000000 +0200
@@ -261,7 +261,9 @@
     static int setattr_handler( PyObject *, char *, PyObject * );
     static PyObject *getattro_handler( PyObject *, PyObject * );
     static int setattro_handler( PyObject *, PyObject *, PyObject * );
+#if defined( PYCXX_PYTHON_2TO3 )
     static int compare_handler( PyObject *, PyObject * );
+#endif
     static PyObject *rich_compare_handler( PyObject *, PyObject *, int );
     static PyObject *repr_handler( PyObject * );
     static PyObject *str_handler( PyObject * );
@@ -723,6 +725,7 @@
     }
 }
 
+#if defined( PYCXX_PYTHON_2TO3 )
 extern "C" int compare_handler( PyObject *self, PyObject *other )
 {
     try
@@ -735,6 +738,7 @@
         return -1;    // indicate error
     }
 }
+#endif
 
 #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 1)
 extern "C" PyObject *rich_compare_handler( PyObject *self, PyObject *other, 
int op )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/Src/Python3/cxx_extensions.cxx 
new/pycxx-6.2.5/Src/Python3/cxx_extensions.cxx
--- old/pycxx-6.2.4/Src/Python3/cxx_extensions.cxx      2012-02-26 
15:32:54.000000000 +0100
+++ new/pycxx-6.2.5/Src/Python3/cxx_extensions.cxx      2013-06-18 
20:40:36.000000000 +0200
@@ -262,7 +262,8 @@
     static PyObject *number_power_handler( PyObject *, PyObject *, PyObject * 
);
 
     // Buffer
-    // QQQ
+    static int buffer_get_handler( PyObject *, Py_buffer *, int );
+    static void buffer_release_handler( PyObject *, Py_buffer * );
 }
 
 extern "C" void standard_dealloc( PyObject *p )
@@ -345,8 +346,8 @@
         buffer_table = new PyBufferProcs;
         memset( buffer_table, 0, sizeof( PyBufferProcs ) );   // ensure new 
fields are 0
         table->tp_as_buffer = buffer_table;
-        // QQQ bf_getbuffer
-        // QQQ bf_releasebuffer
+        buffer_table->bf_getbuffer = buffer_get_handler;
+        buffer_table->bf_releasebuffer = buffer_release_handler;
     }
     return *this;
 }
@@ -1099,6 +1100,25 @@
 }
 
 // Buffer
+extern "C" int buffer_get_handler( PyObject *self, Py_buffer *buf, int flags )
+{
+    try
+    {
+        PythonExtensionBase *p = getPythonExtensionBase( self );
+        return p->buffer_get( buf, flags );
+    }
+    catch( Py::Exception & )
+    {
+        return -1;    // indicate error
+    }
+}
+
+extern "C" void buffer_release_handler( PyObject *self, Py_buffer *buf )
+{
+    PythonExtensionBase *p = getPythonExtensionBase( self );
+    p->buffer_release( buf );
+    // NOTE: No way to indicate error to Python
+}
 
 
//================================================================================
 //
@@ -1454,7 +1474,18 @@
 
 
 // Buffer
-// QQQ
+int PythonExtensionBase::buffer_get( Py_buffer *buf, int flags )
+{
+    missing_method( buffer_get );
+    return -1;
+}
+
+int PythonExtensionBase::buffer_release( Py_buffer *buf )
+{
+    /* This method is optional and only required if the buffer's
+       memory is dynamic. */
+    return 0;
+}
 
 
//--------------------------------------------------------------------------------
 //
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/build-all.cmd 
new/pycxx-6.2.5/build-all.cmd
--- old/pycxx-6.2.4/build-all.cmd       2012-01-14 13:08:11.000000000 +0100
+++ new/pycxx-6.2.5/build-all.cmd       2013-08-18 16:27:04.000000000 +0200
@@ -1,9 +1,15 @@
 setlocal
 call setup-msvc90
 c:\python27.win32\python setup_makefile.py win32 win32.mak
-nmake -f win32.mak clean all
+nmake -f win32.mak clean all 2>&1 | c:\unxutils\tee tmp-python27-build.log
+nmake -f win32.mak test 2>&1 | c:\unxutils\tee tmp-python27-test.log
 
 c:\python32.win32\python setup_makefile.py win32 win32.mak
-nmake -f win32.mak clean all
+nmake -f win32.mak clean all 2>&1 | c:\unxutils\tee tmp-python32-build.log
+nmake -f win32.mak test 2>&1 | c:\unxutils\tee tmp-python32-test.log
+
+c:\python33.win32\python setup_makefile.py win32 win32.mak
+nmake -f win32.mak clean all 2>&1 | c:\unxutils\tee tmp-python33-build.log
+nmake -f win32.mak test 2>&1 | c:\unxutils\tee tmp-python33-test.log
 
 endlocal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/build-all.sh new/pycxx-6.2.5/build-all.sh
--- old/pycxx-6.2.4/build-all.sh        2012-01-14 13:16:46.000000000 +0100
+++ new/pycxx-6.2.5/build-all.sh        2013-06-18 20:36:18.000000000 +0200
@@ -7,8 +7,8 @@
     python2.5 \
     python2.6 \
     python2.7 \
-    python3.1 \
     python3.2 \
+    python3.3 \
     ;
 do
     if which $PYTHON >/dev/null
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/how_to_release_pycxx.txt 
new/pycxx-6.2.5/how_to_release_pycxx.txt
--- old/pycxx-6.2.4/how_to_release_pycxx.txt    2010-12-26 17:25:54.000000000 
+0100
+++ new/pycxx-6.2.5/how_to_release_pycxx.txt    2012-03-04 00:13:44.000000000 
+0100
@@ -11,7 +11,7 @@
     3. Select File
     4. Create New Folder
     5. Name the Folder PyCXX V<maj>.<min>.<patch> e.g. PyCXX V6.1.1
-    7. Upload the source kit and its PyCXX-Release-Notes-readme.txt
+    7. Upload the source kit and its PyCXX-Release-Notes-readme.txt (as 
README.txt)
     9. Click on the source kit (i) icon and choose Select All platforms
 4.  Add news about release
     1. Click Develop
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/setup.py new/pycxx-6.2.5/setup.py
--- old/pycxx-6.2.4/setup.py    2010-05-02 21:10:27.000000000 +0200
+++ new/pycxx-6.2.5/setup.py    2013-06-18 20:20:30.000000000 +0200
@@ -12,18 +12,18 @@
 class my_install (install):
 
     def finalize_options (self):
-       if not self.install_data or (len(self.install_data) < 8) :
-           self.install_data = "$base/share/python$py_version_short"
+        if not self.install_data or (len(self.install_data) < 8) :
+            self.install_data = "$base/share/python$py_version_short"
         install.finalize_options (self)
 
     def run (self):
-       self.distribution.data_files = [("CXX", sources)]
-       self.distribution.headers = headers
+        self.distribution.data_files = [("CXX", sources)]
+        self.distribution.headers = headers
         install.run (self)
 
 
 setup (name             = "CXX",
-       version          = "6.2.0",
+       version          = "6.2.4",
        maintainer       = "Barry Scott",
        maintainer_email = "[email protected]",
        description      = "Facility for extending Python with C++",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pycxx-6.2.4/tag_pycxx.py new/pycxx-6.2.5/tag_pycxx.py
--- old/pycxx-6.2.4/tag_pycxx.py        2010-08-15 19:20:10.000000000 +0200
+++ new/pycxx-6.2.5/tag_pycxx.py        2013-08-18 11:42:10.000000000 +0200
@@ -64,8 +64,8 @@
         return
 
     version = sys.argv[1]
-    from_url = 'https://cxx.svn.sourceforge.net/svnroot/cxx/trunk/CXX'
-    tag_base_url = 'https://cxx.svn.sourceforge.net/svnroot/cxx/tags'
+    from_url = 'https://svn.code.sf.net/p/cxx/code/trunk/CXX'
+    tag_base_url = 'https://svn.code.sf.net/p/cxx/code/tags'
 
     make_tag( from_url, tag_base_url, version )
 

++++++ python-CXX-6.2.5-fix-version.patch ++++++
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -33,7 +33,7 @@
 
 
 setup (name             = "CXX",
-       version          = "6.2.4",
+       version          = "6.2.5",
        maintainer       = "Barry Scott",
        maintainer_email = "[email protected]",
        description      = "Facility for extending Python with C++",
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to