SIP v6.0.0 Released

4 January 2021

SIP v6.0.0 has been released. This is a major feature release. It removes support for all features that were deprecated in SIP v5 and adds new features required by PyQt6. It also supports PyQt5.

  • All features deprecated in SIP v5 have been removed.
  • Added ABI v13.0 of the sip module. This uses the Python enum module to implement all enums.
  • Added support for mapped type convertors to have additional user-defined state. This is implemented using the %ReleaseCode directive, the SIP_USER flag and the sipConvertToTypeUS(), sipForceConvertToTypeUS() and sipReleaseTypeUS() API functions. (ABI v13 only.)
  • %ConvertFromTypeCode and %ConvertToTypeCode are now optional for mapped types.
  • Added support for the SIP_PYENUM additional SIP type.
  • Added sipIsEnumFlag().
  • Added the /BaseType/ enum annotation for specifying the exact Python enum type to be used. (ABI v13 only.)
  • Added support for wrapping named unions.
  • Added support for Py_hash_t. (ABI v13 only.)
  • Python names automatically have a _ appended if they are Python keywords.
  • The lexer can now handle '\xNN' characters.
  • sip.pyi and py.typed are automatically installed if dunder-init is specified and pep484-pyi is specified for at least one module.