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]
