Hello community, here is the log from the commit of package python-CXX for openSUSE:Factory checked in at 2017-08-28 15:15:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-CXX (Old) and /work/SRC/openSUSE:Factory/.python-CXX.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python-CXX" Mon Aug 28 15:15:54 2017 rev:2 rq:518610 version:7.0.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-CXX/python-CXX.changes 2014-09-12 10:03:15.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.python-CXX.new/python-CXX.changes 2017-08-28 15:17:10.352664449 +0200 @@ -1,0 +2,42 @@ +Wed Aug 23 22:21:26 UTC 2017 - toddrme2178@gmail.com + +- Implement single-spec version +- Update to Version 7.0.3 + * Update Py::Long to support long long consitently between Python2 and Python3. +- Update to Version 7.0.2 + * Add Py::Char ord() method to return the long value of a character. + * Fix String::size() that could return twice the actual length. This affected as_ucs4string() which would return a string with its second half as uninitialised memory. + * Fix setup.py for the Demo code to build all the required C++ code. +- Update to Version 7.0.1 + * Add support for Full Unicode range on Windows. + * Add sym link for README.txt to allow testing of index.html. +- Update to Version 7.0.0 + * Warning: This version fixes a number of problems that require source incompatible changes. + However by defining PYCXX_6_2_COMPATIBILITY the V6.2.x API is restored. This is not recommended for new code. + * The first version of python3 that is supported is 3.3. + * New source file needs to built: Src/cxx_exceptions.cxx. This file implements the new exception handling features. + * Fix the type used for lengths and sequence indexes to use Py_ssize_t. This will require sources changes for users of PyCXX. + * Implement smart handling of Exceptions between C++ and Python. You can now catch exceptions in C++ by type that are raised in C++ or Python. + * All builtin exceptions are support and are user defined exceptions. + * The base exception type is now BaseException not Exception. To upgrade source code replace all use of Exception with BaseException. + * The documentation has been updated to describe the new exception features. + * The supportSequence, supportMapping, supportNumber etc functions now take a bit mask that defines which specific callbacks are handled. +- Update to Version 6.2.8 + * Fix crash when a member function is called via callMemberFunction() and that function raises an expection. + * Found in comment on StackOverFlow. Fix memory size allocated for new objects. It used the wrong size calculation, but was big enough to avoid problems. +- Update to Version 6.2.7 + * Fix missing ptr__Unicode_Type. + * Fixes from learn0more@gmail.com make python2 also remember the m_module and add accessor functions. + * Fix for indirection issues from Vivian De Smedt. + * Update to work with latest Microsoft Visual C++ for python 2.7. All test run in Win32 and Win64. + * PyCXX.html documention has been updated, especially with 2TO3 information. + * Use delete[] for objects allocated with new[]. +- Update to Version 6.2.6 + * 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 unneeded patch `python-CXX-6.2.5-fix-version.patch` + +------------------------------------------------------------------- Old: ---- pycxx-6.2.5.tar.gz python-CXX-6.2.5-fix-version.patch New: ---- pycxx-7.0.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-CXX.spec ++++++ --- /var/tmp/diff_new_pack.IrOIcu/_old 2017-08-28 15:17:11.684477307 +0200 +++ /var/tmp/diff_new_pack.IrOIcu/_new 2017-08-28 15:17:11.708473935 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-CXX # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2017 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 @@ -16,31 +16,27 @@ # -%define modname CXX -%define tarname pycxx +%{?!python_module:%define python_module() python-%{**} python3-%{**}} +%bcond_with test Name: python-CXX -Version: 6.2.5 +Version: 7.0.3 Release: 0 Summary: Write Python extensions in C++ License: BSD-3-Clause Group: Development/Languages/Python Url: http://CXX.sourceforge.net/ -Source0: %{tarname}-%{version}.tar.gz -Source1: %{name}-rpmlintrc -# PATCH-MISSING-TAG -- See http://wiki.opensuse.org/openSUSE:Packaging_Patches_guidelines +Source0: pycxx-%{version}.tar.gz +Source99: python-CXX-rpmlintrc Patch0: python-CXX-6.2.3-change-include-paths.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: python-devel -BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: %{python_module devel} +BuildRequires: %{python_module setuptools} +BuildRequires: fdupes +BuildRequires: python-rpm-macros Provides: python-cxx = %{version} Obsoletes: python-cxx < %{version} -%if 0%{?suse_version} <= 1110 -%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} -%else BuildArch: noarch -%py_requires -%endif + +%python_subpackages %description PyCXX is a set of classes to help create extensions of Python in the C @@ -52,9 +48,6 @@ Summary: Development files for %{name} Group: Development/Languages/Python Requires: %{name} = %{version} -%if 0%{?suse_version} > 1110 -%py_requires -d -%endif Provides: python-cxx-devel = %{version} Obsoletes: python-cxx-devel < %{version} @@ -62,35 +55,47 @@ Header files and documentation for %{name} development. %prep -%setup -q -n %{tarname}-%{version} +%setup -q -n pycxx-%{version} %patch0 -p1 -%patch1 -p1 %build -python setup.py build +%python_build %install -python setup.py install --root=%{buildroot} --prefix=%{_prefix} -install %{modname}/*.hxx %{buildroot}/%{_includedir}/python%{py_ver}/%{modname} -install %{modname}/*.h %{buildroot}/%{_includedir}/python%{py_ver}/%{modname}/ -cp -R %{modname}/Python2 %{buildroot}/%{_includedir}/python%{py_ver}/%{modname}/ -install Src/*.c %{buildroot}/%{_datadir}/python%{py_ver}/%{modname}/ -install Src/*.cxx %{buildroot}/%{_datadir}/python%{py_ver}/%{modname}/ -cp -R Src/Python2 %{buildroot}/%{_datadir}/python%{py_ver}/%{modname}/ -chmod -x %{buildroot}/%{_datadir}/python%{py_ver}/%{modname}/*.* -chmod -x %{buildroot}/%{_includedir}/python%{py_ver}/%{modname}/*.* +%python_install +%{python_expand %fdupes %{buildroot}%{$python_sitelib} +CURPY=`echo "%{$python_version}" | head -c 1` +INCDIR=%{$python_sysconfig_path include} +mkdir -p %{buildroot}/%{_datadir}/python%{$python_bin_suffix}/CXX/Python${CURPY}/ +mkdir -p %{buildroot}/${INCDIR}/CXX/Python${CURPY}/ +install -m 644 Src/*.* %{buildroot}/%{_datadir}/python%{$python_bin_suffix}/CXX/ +install -m 644 CXX/*.* %{buildroot}/${INCDIR}/CXX/ +install -m 644 Src/Python${CURPY}/*.* %{buildroot}/%{_datadir}/python%{$python_bin_suffix}/CXX/Python${CURPY}/ +install -m 644 CXX/Python${CURPY}/*.* %{buildroot}/${INCDIR}/CXX/Python${CURPY}/ +%fdupes %{buildroot}/%{_datadir}/python%{$python_bin_suffix} +%fdupes %{buildroot}/${INCDIR}/ +} + +%if %{with test} +%check +%python_exec setup.py test +%endif -%files +%files %{python_files} %defattr(-,root,root) %doc README.html COPYRIGHT -%{python_sitelib}/%{modname}/ -%{python_sitelib}/%{modname}-%{version}-py%{py_ver}.egg-info +%{python_sitelib}/CXX/ +%{python_sitelib}/CXX-%{version}-py*.egg-info -%files devel +%files %{python_files devel} %defattr(-,root,root) -%doc Doc/Python2/ -%{_includedir}/python%{py_ver}/%{modname}/ -%dir %{_datadir}/python%{py_ver}/ -%{_datadir}/python%{py_ver}/%{modname}/ +%python2_only %doc Doc/Python2/ +%python2_only %doc Doc/Python3/ +%python3_only %doc Demo/Python2/ +%python3_only %doc Demo/Python3/ +%dir %{_datadir}/python%{python_bin_suffix} +%dir %{_includedir}/python%{python_bin_suffix}* +%{_datadir}/python%{python_bin_suffix}/CXX/ +%{_includedir}/python%{python_bin_suffix}*/CXX/ %changelog ++++++ pycxx-6.2.5.tar.gz -> pycxx-7.0.3.tar.gz ++++++ ++++ 9501 lines of diff (skipped)