Releases
0.0.4
Compare
Sorry, something went wrong.
No results found
New Features/API
HPy headers are C++ compliant
Python 3.10 support
HPyField : References to Python objects that can be stored in raw native memory owned by Python objects.
new API functions: HPyField_Load, HPyField_Store
HPyGlobal : References to Python objects that can be stored into a C global variable.
new API functions: HPyGlobal_Load, HPyGlobal_Store
note: HPyGlobal does not allow to share Python objects between (sub)interpreters
GIL support
new API functions : HPy_ReenterPythonExecution, HPy_LeavePythonExecution
Value building support (HPy_BuildValue)
New type slots
HPy_mp_ass_subscript, HPy_mp_length, HPy_mp_subscript
HPy_tp_finalize
Other new API functions
HPyErr_SetFromErrnoWithFilename, HPyErr_SetFromErrnoWithFilenameObjects
HPyErr_ExceptionMatches
HPyErr_WarnEx
HPyErr_WriteUnraisable
HPy_Contains
HPyLong_AsVoidPtr
HPyLong_AsDouble
HPyUnicode_AsASCIIString, HPyUnicode_DecodeASCII
HPyUnicode_AsLatin1String, HPyUnicode_DecodeLatin1
HPyUnicode_DecodeFSDefault, HPyUnicode_DecodeFSDefaultAndSize
HPyUnicode_ReadChar
Debug mode
Support activation of debug mode via environment variable HPY_DEBUG
Support capturing stack traces of handle allocations
Check for invalid use of raw data pointers (e.g HPyUnicode_AsUTF8AndSize) after handle was closed.
Detect invalid handles returned from extension functions
Detect incorrect closing of handles passed as arguments
Misc Changes
Removed unnecessary prefix "m_" from fields of HPyModuleDef (incompatible change)
For HPy implementors: new pytest mark for HPy tests assuming synchronous GC
You can’t perform that action at this time.