diff options
Diffstat (limited to 'python/sip/NEWS')
-rw-r--r-- | python/sip/NEWS | 198 |
1 files changed, 198 insertions, 0 deletions
diff --git a/python/sip/NEWS b/python/sip/NEWS new file mode 100644 index 00000000..919527ad --- /dev/null +++ b/python/sip/NEWS @@ -0,0 +1,198 @@ +v4.6 10th April 2007 + - Added support for wchar_t. + - The -g command line option releases the GIL whenever a call is made to the + wrapped library. + - Added the /HoldGIL/ annotation to explicitly retain the GIL when calling a + particular function in the wrapped library. + - Added sipFindClass() and sipFindNamedEnum() to the public API. + - /TransferThis/ may be specified more than once. + - Added support for __truediv__ and __itruediv__. + - The SIP code generator and module may be built as universal binaries under + MacOS/X using the -n command line option to configure.py. + +v4.5.2 9th December 2006 + - A bug fix release. + +v4.5.1 9th December 2006 + - Added the SIP_SSIZE_T type to help write PEP 353 compliant handwritten + code. + +v4.5 4th November 2006 + - Added support for Python v2.5. + - Added sip_config_args to sipconfig.py. + - sip.voidptr now implements __hex__(). + - Added sip.delete() to call a C++ instance's destructor, or return a C + structure to the heap. + - Added sip.isdeleted() to check if a C++ instance or C structure has been + destroyed or returned to the heap. + - Added sip.setdeleted() to mark that a C++ instance or C structure has been + destroyed or returned to the heap. + - Added support for pure virtual destructors. + - Added the __dtor__() method to allow Python code to be called from a C++ + destructor. + - Added the /NoDefaultCtors/ class annotation. + - The generated API files are now more complete and use Python types rather + than C/C++ types. + - Added support for embedding manifests for MSVC 2005. + +v4.4.5 10th June 2006 + - A bug fix release. + +v4.4.4 8th June 2006 + - Added %ExportedHeaderCode and %UnitCode. + - Added sipExportSymbol() and sipImportSymbol() to the public API. + +v4.4.3 27th April 2006 + - A bug fix release. + +v4.4.2 23rd April 2006 + - A bug fix release. + +v4.4.1 3rd April 2006 + - A bug fix release. + +v4.4 24th March 2006 + - The major number of the internal API has changed so it will be necessary + to regenerate all modules. + - This release introduces small incompatibilities that may affect handwritten + code. See the documentation for the details. + - Module names specified with %Module and %CModule can now include periods to + denote a Python package structure. + - Namespaces can be split across multiple Python modules. + - Class templates are now supported and instantiated using "typedef". + - Mapped type templates are now supported and instantiated automatically. + - Global operators are now supported. + - Operator casts in classes are now supported. + - C/C++ signed char type is now treated as a separate type to char. + - C/C++ long and unsigned long types are now wrapped as Python long objects + rather than Python integer objects. + - C/C++ long long and unsigned long long types are now supported. + - unsigned short and unsigned int are now implemented as long objects instead + of integer objects. + - Classes can now be declared using the /External/ annotation and be defined + in another, unspecified, module. + - /TransferThis/ can now be used in non-factory methods to change the + ownership to a different C++ instance or to change it to Python. + - /Constrained/ can now be used with booleans. + - Added support for Python's buffer interface, %BIGetCharBufferCode, + %BIGetReadBufferCode, %BIGetSegCountCode and %BIGetWriteBufferCode. + - The "user" member has been added to the sipWrapper structure and can be + used for any purpose by handwritten code. + - Function argument names are now parsed, but otherwise ignored. + - The "explicit" keyword is now parsed, but otherwise ignored. + - Added the /DelayDtor/ class annotation which given more control over the + order in which instances are deleted when an application terminates. + - Added support for the SIP_PYTYPE pseudo-type that represents a Python + type object. + - Added support for ellipsis (ie. "...") in function arguments. Any + remaining arguments will be gathered as a Python tuple. + - Add support for the /NoDerived/ annotation for Python class constructors + that have no C/C++ equivalent. + - The sipSelfWasArg boolean is now available to the %MethodCode of + non-abstract, virtual methods to indicate whether the class implementation + of the method rather than the virtual implementation should be called. + %MethodCode for non-abstract, virtual, protected methods must now call the + sipProtectVirt wrapper (rather than sipProtect). + - sipCanConvertToInstance(), sipConvertToInstance(), + sipForceConvertToInstance(), sipReleaseInstance(), + sipConvertFromInstance(), sipConvertFromNewInstance(), + sipCanConvertToMappedType(), sipConvertToMappedType(), + sipForceConvertToMappedType(), sipReleaseMappedType(), + sipConvertFromMappedType() and sipFindMappedType() have been added to the + SIP API. + - sipLong_AsUnsignedLong() has been added, primarily as a workaround for a + bug in Python v2.3.x and earlier. + - Added the 't', 'u', 'C' and 'D' format characters to sipParseResult(). + - Added the 't', 'u', 'B', 'C' and 'D' format characters to sipBuildResult(). + - Responsibility for interpreting and implementing the /Transfer/ and + /TransferBack/ annotations has been pushed down to %ConvertToTypeCode and + %ConvertFromTypeCode. The generated type convertors sipForceConvertTo_*() + and sipConvertFrom_*() have been deprecated. + - Added the %SIPNoEmitters directive for PyQt4. + - Added support for the __hash__ Python special method. + - The __getitem__ Python special method no longer requires %MethodCode. + - All of the calls to Qt have been moved out of the sip module and into PyQt. + The generated sipconfig.py file no longer contains any Qt specific + information. These changes mean that SIP can support PyQt v3 and v4 at the + same time. + - Static methods can now be defined as Qt slots. + - Removed SIP_BUILD from sip.h. + - The -c, -l, -q and -x flags to configure.py have been removed. + - Added the PythonModuleMakefile class to the build system for installing + pure Python modules. + - Added the create_wrapper() function to the build system for creating + platform dependent executable wrappers for Python scripts. + - Added Configuration.platform to the build system. + +v4.3.2 14th November 2005 + - The sipdistutils.py script has contributed by Giovanni Bajo that enables + SIP extension modules to be built with distutils. + +v4.3.1 10th September 2005 + - A bug fix release. + +v4.3 30th August 2005 + - The major number of the internal API has changed so it will be necessary + to regenerate all modules. + - C structures can now have constructors and a destructor defined so that + they can be made to behave more Pythonically. + - %TypeHeaderCode can now be used in namespaces. + - Added sip.SIP_VERSION_STR. + - Added support for Python's cyclic garbage collector, %GCTraverseCode and + %GCClearCode. + - Deprecated sipTransfer() and sip.transfer(). + - Added sipTransferTo, sipTransferBack(), sip.transferto() and + sip.transferback(). + - Added support for sipCppRet in %ConvertSubClassCode. + - Added support for %GetCode and %SetCode for instance variables and + structure members. + - Added support for %Exception and %RaiseCode. + - Added support for __pos__ and __abs__. + - sip.voidptr instances can now be created from Python. + - The ascobject() method has been added to sip.voidptr. + - Added the -c flag to configure.py to explicitly specify the location of + the qconfig.h file. + +v4.2.1 6th March 2005 + - Restored the pre-4.2 behaviour of Python exceptions raised in virtual + re-implementations. + - %Timeline can now be used more than once in a module. + +v4.2 19th February 2005 + - The /PyName/ annotation can now be applied to classes, namespaces, + enums, enum members and variables. + - Added the %PreInitialisationCode directive and is subject to version + control. %PostInitialisationCode is now subject to version control. + - Named enums now have distinct types and so can be differentiated from + integers in function signatures. + - The handling of Qt signals has changed so that "foreign" signals (ie. + those raised by ActiveX controls) can be handled. + - The voidptr, wrapper and wrappertype types are now exposed in the sip + module. + - Virtual and abstract operators are now supported. + - The __call__ slot no longer requires %MethodCode. + - Any Python exceptions raised in virtual re-implementations are now + detected when they occur. + - sip.cast() can now cast downwards as well as upwards. + - Added sip.SIP_VERSION. + - The -k flag to configure.py can now be used to build modules as builtins + to custom interpreters. + - The build system now strips modules and only exports the module + initialisation function by default (when supported by the platform). + +v4.1.1 24th September 2004 + - A bug fix release. + +v4.1 20th September 2004 + - Added the cast() method to the sip module. + - Added limited support for protected classes. + - Added the /Abstract/ class annotation. + - Added support for typedefs that define pointers to functions. + - The SIP_PYCALLABLE type now supports the /AllowNone/ annotation. + - Added support for MSVC.NET to the build system. + +v4.0.1 6th July 2004 + - A bug fix release. + +v4.0 23rd June 2004 + - The release of SIP v4. |