Add support for building against python 3.11 alpha 4.
This is Version 7.1.6 with README updates
Version: 7.1.5 (21-feb-2021)
Replace use of deprecated PyUnicode APIs with the supported version.
The class Py::String functions that used deprecated PyUnicode APIs
that have no replacements are not available for python 3.9 and later:
const Py_UNICODE *unicode_data() const;
unicodestring as_unicodestring() const;
Replace build-all.sh and build-all.cmd with build-all.py that can handle the build matrix.
Add limited API builds for all possible combinations.... read more
Fix for https://sourceforge.net/p/cxx/bugs/43/
memory leak caused by wrong ref count on python3 Py::String objects.
Remove support for supportPrint() etc as the tp_print field is
being removed from python either in 3.8 or 3.9.
Version: 7.1.2 (4-Mar-2019)
Fix problem with compiling for Python 2 and
the _Py_PackageContext symbol.
Add exception errorType() and errorValue() functions to access the type and value of an exception.
**Version: 7.1.0 (24-August-2018)
**
Can now build with Py_LIMITED_API, requires Python 3.4 or later.
Changes to support Python 3.7
Version: 7.0.3 (23-April-2017)
Update Py::Long to support long long consitently between Python2 and Python3.
Version: 7.0.2 (16-April-2017)
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.
Add extra methods to Py::String that as needed on Windows to support full unicode range of code points.
On Windows Python defines Py_UNICODE as unsigned short, which is too small to hold all Unicode values.
PyCXX has added to the Py::String API to support creationg from Py_UCS4 strings and converting Py::String() into Py::ucs4string objects.
Fix validate for Bytes to use the correct check function.
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.
A special thanks goes to Benjamin Webb, working at the US Army
Engineer Research and Development Center, who has contributed to
the design and testing of this release. 7.0.0 is better for his work.... read more
Fix various compiler warning.
Fix incorrect use of NULL.
Fix conversion from (const char *) to (char *) is deprecated warning.
Version 6.2.5 (18-August-2013)
Version 6.2.4 (3-March-2012)
* Fix problem compiling against clang compiler used with Mac OS X 10.7
* Fix segv when using getting the type() of extension objects
* Support PEP 3149
* Support Python 3.2
* For python 3.1 and onwards use the Capsule API - thanks to Michael Droettboom
* Fixed memory leak - thanks to Vivian De Smedt
* Improve setup_makefile.py to use distutils to find paths
Version 6.2.2 (26-Dec-2010)
* Fix problem compiling against Python 3.1.3
Version 6.2.1 (15-Aug-2010)
* Add support for NotImplementedError
* Remove String() and Byte() c'tors that are not allowed by ISO C++ and where ambiguous
Version 6.2.0 (9-May-2010)
* Fix problems with new style classes.
* Replace all example makefile and project files with setup_makefile.py script.
* Add APIs to make calling python functions easier. See TupleN(), callOnSelf(), self()
PyCXX Version 6.1.1 (26-Sep-2009)
* Supports Python 3 starting at Python 3.1 and Python 2.
* Code clean up to fix compiler warnings reported by gcc 4.2.1 on Mac OS X when building for Python 3.
PyCXX Project page: https://sourceforge.net/projects/cxx/
This release adds support for Python 2.5
and the PY_LONG_LONG type for Py::Int().
I have converted PyCXX from CVS to Subversion.
This will make it a lot easier to work on the
source with the subversion tools.
The release addresses build issues when using GCC 4.0.
GCC 4.0 generates new warns some of which are valid and fixed
but others that are just wrong (if then else warning of not all paths
return a value) are worked around.
Added new example make file for Mac OS X fink.
This is a maintenance release fixing a number of bugs and adding some minor features.
PyCXX V5.1 rc2 has been released. This version supports Python 1.5.2, 2.0.1, 2.1.1 and 2.2 beta.
Two bugs have been fixed since rc1.