viso-sdk-python 1.1.11__tar.gz → 1.1.12__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/CHANGELOG.md +4 -0
  2. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/PKG-INFO +1 -1
  3. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/__init__.c +8 -8
  4. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/_version.c +17 -17
  5. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/_version.py +1 -1
  6. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/__init__.c +16 -9
  7. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/constants.c +8 -8
  8. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/modules.c +8 -8
  9. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/variables.c +24 -10
  10. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/__init__.c +8 -8
  11. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/object.c +40 -12
  12. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/utils/__init__.c +8 -8
  13. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/utils/nms.c +40 -12
  14. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/edge/__init__.c +8 -8
  15. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/edge/common.c +40 -12
  16. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/logging/__init__.c +8 -8
  17. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/logging/logger.c +32 -11
  18. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/mqtt/__init__.c +8 -8
  19. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/mqtt/mqtt_wrapper.c +32 -11
  20. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/mqtt/utils.c +24 -10
  21. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/nodered/__init__.c +8 -8
  22. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/nodered/flow.c +32 -11
  23. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/__init__.c +8 -8
  24. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/redis_wrapper.c +32 -11
  25. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/utils.c +40 -12
  26. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/viso_data.c +74 -53
  27. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/viso_data.py +3 -3
  28. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/roi/__init__.c +8 -8
  29. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/roi/polygon_roi_manager.c +32 -11
  30. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/status/__init__.c +8 -8
  31. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/status/status_logger.c +32 -11
  32. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/structures/__init__.c +8 -8
  33. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/structures/rollingq.c +32 -11
  34. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk_python.egg-info/PKG-INFO +1 -1
  35. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/AUTHORS +0 -0
  36. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/COPYING +0 -0
  37. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/MANIFEST.in +0 -0
  38. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/README.md +0 -0
  39. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/Makefile +0 -0
  40. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/__init__.py +0 -0
  41. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/conf.py +0 -0
  42. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/ext/__init__.py +0 -0
  43. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/ext/docstrings.py +0 -0
  44. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/ext/manager_tmpl.j2 +0 -0
  45. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/index.rst +0 -0
  46. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/make.bat +0 -0
  47. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/modules.rst +0 -0
  48. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk._version.rst +0 -0
  49. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.constants.constants.rst +0 -0
  50. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.constants.modules.rst +0 -0
  51. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.constants.rst +0 -0
  52. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.constants.variables.rst +0 -0
  53. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.edge.common.rst +0 -0
  54. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.edge.rst +0 -0
  55. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.logging.logger.rst +0 -0
  56. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.logging.rst +0 -0
  57. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.model.download.rst +0 -0
  58. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.model.rst +0 -0
  59. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.mqtt.mqtt_wrapper.rst +0 -0
  60. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.mqtt.rst +0 -0
  61. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.mqtt.utils.rst +0 -0
  62. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.nodered.flow.rst +0 -0
  63. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.nodered.rst +0 -0
  64. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.redis.redis_wrapper.rst +0 -0
  65. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.redis.rst +0 -0
  66. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.rst +0 -0
  67. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.status.rst +0 -0
  68. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/docs/source/viso_sdk.status.status_logger.rst +0 -0
  69. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/pyproject.toml +0 -0
  70. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/requirements-dev.txt +0 -0
  71. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/requirements-docker.txt +0 -0
  72. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/requirements-docs.txt +0 -0
  73. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/requirements-lint.txt +0 -0
  74. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/requirements-test.txt +0 -0
  75. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/requirements.txt +0 -0
  76. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/setup.cfg +0 -0
  77. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/setup.py +0 -0
  78. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/__init__.py +0 -0
  79. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/conftest.py +0 -0
  80. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/fixtures/flow.json +0 -0
  81. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/meta/__init__.py +0 -0
  82. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/meta/test_ensure_type_hints.py +0 -0
  83. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/sample.png +0 -0
  84. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/smoke/__init__.py +0 -0
  85. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/smoke/test_dists.py +0 -0
  86. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/test_flow.py +0 -0
  87. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/test_status.py +0 -0
  88. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tests/test_status_logger.py +0 -0
  89. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/tox.ini +0 -0
  90. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/__init__.py +0 -0
  91. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/__init__.py +0 -0
  92. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/constants.py +0 -0
  93. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/modules.py +0 -0
  94. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/constants/variables.py +0 -0
  95. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/__init__.py +0 -0
  96. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/object.py +0 -0
  97. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/utils/__init__.py +0 -0
  98. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/detection/utils/nms.py +0 -0
  99. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/edge/__init__.py +0 -0
  100. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/edge/common.py +0 -0
  101. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/logging/__init__.py +0 -0
  102. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/logging/logger.py +0 -0
  103. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/mqtt/__init__.py +0 -0
  104. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/mqtt/mqtt_wrapper.py +0 -0
  105. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/mqtt/utils.py +0 -0
  106. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/nodered/__init__.py +0 -0
  107. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/nodered/flow.py +0 -0
  108. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/py.typed +0 -0
  109. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/__init__.py +0 -0
  110. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/redis_wrapper.py +0 -0
  111. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/redis/utils.py +0 -0
  112. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/roi/__init__.py +0 -0
  113. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/roi/polygon_roi_manager.py +0 -0
  114. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/status/__init__.py +0 -0
  115. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/status/status_logger.py +0 -0
  116. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/structures/__init__.py +0 -0
  117. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk/structures/rollingq.py +0 -0
  118. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk_python.egg-info/SOURCES.txt +0 -0
  119. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk_python.egg-info/dependency_links.txt +0 -0
  120. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk_python.egg-info/requires.txt +0 -0
  121. {viso_sdk_python-1.1.11 → viso_sdk_python-1.1.12}/viso_sdk_python.egg-info/top_level.txt +0 -0
@@ -2,6 +2,10 @@
2
2
 
3
3
  <!--next-version-placeholder-->
4
4
 
5
+ ## v1.1.12
6
+ ### Fix
7
+ - Fix metadata update methods to handle falsy values (0, False) correctly in MetaSource, MetaModule, and MetaFrameFormat classes. Previously, output_port_idx=0 was being filtered out during metadata propagation.
8
+
5
9
  ## v1.1.11
6
10
  ### Enhancements
7
11
  - Increase log file size to 50MB
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: viso-sdk-python
3
- Version: 1.1.11
3
+ Version: 1.1.12
4
4
  Summary: VisoSDK: A Python SDK for use in Viso containers
5
5
  Home-page: https://gitlab.com/TopKamera/03_edge/Base/viso-sdk-python-public.git
6
6
  Author: support@viso.ai
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -3318,13 +3318,13 @@ CYTHON_UNUSED static int __Pyx_VectorcallBuilder_AddArg_Check(PyObject *key, PyO
3318
3318
  /* dict_setdefault (used by CLineInTraceback) */
3319
3319
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
3320
3320
  PyObject* value;
3321
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
3321
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
3322
+ PyDict_SetDefaultRef(d, key, default_value, &value);
3323
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
3322
3324
  PyObject *args[] = {d, key, default_value};
3323
3325
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
3324
3326
  #elif CYTHON_COMPILING_IN_LIMITED_API
3325
3327
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
3326
- #elif PY_VERSION_HEX >= 0x030d0000
3327
- PyDict_SetDefaultRef(d, key, default_value, &value);
3328
3328
  #else
3329
3329
  value = PyDict_SetDefault(d, key, default_value);
3330
3330
  if (unlikely(!value)) return NULL;
@@ -4447,14 +4447,14 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
4447
4447
 
4448
4448
  /* DecompressString */
4449
4449
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
4450
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
4450
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
4451
4451
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
4452
4452
  PyObject *methodname = PyUnicode_FromString("decompress");
4453
4453
  if (unlikely(!methodname)) return NULL;
4454
4454
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
4455
4455
  if (algo == 3) {
4456
4456
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
4457
- if (unlikely(!fromlist)) return NULL;
4457
+ if (unlikely(!fromlist)) goto bad;
4458
4458
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
4459
4459
  Py_DECREF(fromlist);
4460
4460
  } else
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -1994,7 +1994,7 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati
1994
1994
  #endif
1995
1995
  /* #### Code section: constant_name_defines ### */
1996
1996
  #define __pyx_kp_u_ __pyx_string_tab[0]
1997
- #define __pyx_kp_u_1_1_11 __pyx_string_tab[1]
1997
+ #define __pyx_kp_u_1_1_12 __pyx_string_tab[1]
1998
1998
  #define __pyx_kp_u_Copyright_2020 __pyx_string_tab[2]
1999
1999
  #define __pyx_kp_u_Viso_ai_team __pyx_string_tab[3]
2000
2000
  #define __pyx_kp_u__2 __pyx_string_tab[4]
@@ -2605,16 +2605,16 @@ __Pyx_RefNannySetupContext("PyInit__version", 0);
2605
2605
  * __license__ = "LGPL3"
2606
2606
  * __title__ = "viso-sdk-python" # <<<<<<<<<<<<<<
2607
2607
  *
2608
- * __version__ = "1.1.11"
2608
+ * __version__ = "1.1.12"
2609
2609
  */
2610
2610
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_title, __pyx_mstate_global->__pyx_kp_u_viso_sdk_python) < (0)) __PYX_ERR(0, 15, __pyx_L1_error)
2611
2611
 
2612
2612
  /* "viso_sdk/_version.py":17
2613
2613
  * __title__ = "viso-sdk-python"
2614
2614
  *
2615
- * __version__ = "1.1.11" # <<<<<<<<<<<<<<
2615
+ * __version__ = "1.1.12" # <<<<<<<<<<<<<<
2616
2616
  */
2617
- if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_version, __pyx_mstate_global->__pyx_kp_u_1_1_11) < (0)) __PYX_ERR(0, 17, __pyx_L1_error)
2617
+ if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_version, __pyx_mstate_global->__pyx_kp_u_1_1_12) < (0)) __PYX_ERR(0, 17, __pyx_L1_error)
2618
2618
 
2619
2619
  /* "viso_sdk/_version.py":1
2620
2620
  * """ # <<<<<<<<<<<<<<
@@ -2688,16 +2688,16 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) {
2688
2688
  CYTHON_UNUSED_VAR(__pyx_mstate);
2689
2689
  {
2690
2690
  const struct { const unsigned int length: 5; } index[] = {{1},{6},{15},{12},{1},{18},{26},{15},{5},{7},{10},{18},{13},{8},{8},{7},{9},{8},{11},{8},{10},{8},{3},{2},{4},{12},{10},{8},{9},{11},{4}};
2691
- #if (CYTHON_COMPRESS_STRINGS) == 2 /* compression: bz2 (243 bytes) */
2692
- const char* const cstring = "BZh91AY&SY\350DP>\000\000\007\337\200@\000@\003x\005\350\204A\000\277\357\377\2400\000\315[\r\n\236\024\332\217\032\232j\000\321\264\232h\010\211\246\322i\211\246@\006\200\006\203S\324\332\246\232\206\236\204mOQ\240\032h\320\241\027\265\356[q\266\233\302\001\342BD\307\307\211\302\331\301\217\344\376\216\236\024 C<\203N\246r\302u\324\021\252\010\010\024@cE\336`o\037#\027q~Y\214\354^\206%\206\303\031\243\265\355T0\2457\376\325\213\r\237]q\356\2644\274\232\005E\000\235\344\2305$\337QQh\320\210\265\373E\025\352\304w'\272\017|\330\233\224\230[\\\234.\303\030i&?\251\020\2404]&s\326\374\002C\271*\235\002@\315\010k\013Q\272KH\306\236\305\214n\232\262\217\312\210[\262/\342\356H\247\n\022\035\010\212\007\300";
2693
- PyObject *data = __Pyx_DecompressString(cstring, 243, 2);
2691
+ #if (CYTHON_COMPRESS_STRINGS) == 2 /* compression: bz2 (242 bytes) */
2692
+ const char* const cstring = "BZh91AY&SY\270\350\217\303\000\000\007\337\200@\000@\003x\005\350\204A\000\277\357\377\2400\000\315[\014\246\251\261O(\360\232j\000\321\264\232h\010\211\246\322i\211\246@\006\200\006\203S\324\332\246\232\214\236\204cQ\240\032h\320\241>\347\334\355\306\332o\010\007\210\210\226\301\234Q\366\315\367;\223z2XP\2023\310-UQ\316\374)\240#D\020\020(\200\306k\276 p\037#\027q~z\r+^\206E\205F\022Fk\332\250\2413&\376\326\351\277g\3269[\254\375/+\002\242\200J\362\230-\"\277P\230\260jDZ\355\302j\345Z;\323\335\007\277\006&\325&\026S'\013o\312\032\311\217\351\304(\r\027I\234\365\277\000\220\356J\247@\2203B\032\302\324n\222\3221\247\261c\033\246\254\243\362\242&\354\217\361w$S\205\t\013\216\210\3740";
2693
+ PyObject *data = __Pyx_DecompressString(cstring, 242, 2);
2694
2694
  if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
2695
2695
  const char* const bytes = __Pyx_PyBytes_AsString(data);
2696
2696
  #if !CYTHON_ASSUME_SAFE_MACROS
2697
2697
  if (likely(bytes)); else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
2698
2698
  #endif
2699
2699
  #elif (CYTHON_COMPRESS_STRINGS) != 0 /* compression: zlib (194 bytes) */
2700
- const char* const cstring = "x\3325\216\261n\3030\014D\177\305?`#I\327\"m\321!K\206N]\tF\242c\"2\351JT\002\377}\3518\006\207;\334\003y\354\366\235\317\376[\2479\363u\260\346\260;\354\332_.\332!7F8~\\\273\240\331!\312\347\375\225o\372uj\336Yz\335\300q\321\266\304[;\3156\250\234O?\3477\274\224\tm\000\300\352Y\006\010\211\205\200\005,c\240\013\206\233g\333\003\340\276f\210\234#\032\031\217\344Vp$\000\032\221\223s\3509\321\242\211\003IyZG\362T\215u\205\353\216\350C_\365\177\025\323\032\026\262H=\326\344mFe\351\004c[\367\356\224\013\253\037\233\t\363?2\252m\347";
2700
+ const char* const cstring = "x\3325\216\275n\3030\014\204_\305/`#u\327\242?\350\220%C\246\256\004#\3211\021\231t%*\205\337\276t\034\203\303\035\356\003y\354^:\237\376[\347%\363u\264\246?\364\207\366\207\213v\310\215\021N\037\327.hv\210\362y\177\346\273~\035\2337\226Aw\360\276j[\342\255\235\027\033UN\307\363\351\025/eF\033\001\260z\226\001Bb!`\001\313\030\350\202\341\346\331\376\000\270\257\031\"\347\210F\306\023\271\025\234\010\200&\344\344\034\006N\264j\342@R\036\326\221<Tc\335\340\266#\372\247\317\372\337\212i\013\013Y\244\001k\3626\243\262v\202\261m{w\312\205\325\217-\204\371\0373\303m\350";
2701
2701
  PyObject *data = __Pyx_DecompressString(cstring, 194, 1);
2702
2702
  if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
2703
2703
  const char* const bytes = __Pyx_PyBytes_AsString(data);
@@ -2705,7 +2705,7 @@ const char* const cstring = "x\3325\216\261n\3030\014D\177\305?`#I\327\"m\321!K\
2705
2705
  if (likely(bytes)); else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
2706
2706
  #endif
2707
2707
  #else /* compression: none (287 bytes) */
2708
- const char* const bytes = ".1.1.11Copyright 2020-Viso.ai team?g.corrigan@viso.ai viso.ai AG <info@viso.ai>viso-sdk-pythonLGPL3abspath__author__cline_in_traceback__copyright___cur_dirdatetimedirname__email____file____license____main____module____name__nowospath__qualname__setdefault__test____title____version__year";
2708
+ const char* const bytes = ".1.1.12Copyright 2020-Viso.ai team?g.corrigan@viso.ai viso.ai AG <info@viso.ai>viso-sdk-pythonLGPL3abspath__author__cline_in_traceback__copyright___cur_dirdatetimedirname__email____file____license____main____module____name__nowospath__qualname__setdefault__test____title____version__year";
2709
2709
  PyObject *data = NULL;
2710
2710
  CYTHON_UNUSED_VAR(__Pyx_DecompressString);
2711
2711
  #endif
@@ -3447,13 +3447,13 @@ bad:
3447
3447
  /* dict_setdefault (used by CLineInTraceback) */
3448
3448
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
3449
3449
  PyObject* value;
3450
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
3450
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
3451
+ PyDict_SetDefaultRef(d, key, default_value, &value);
3452
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
3451
3453
  PyObject *args[] = {d, key, default_value};
3452
3454
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
3453
3455
  #elif CYTHON_COMPILING_IN_LIMITED_API
3454
3456
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
3455
- #elif PY_VERSION_HEX >= 0x030d0000
3456
- PyDict_SetDefaultRef(d, key, default_value, &value);
3457
3457
  #else
3458
3458
  value = PyDict_SetDefault(d, key, default_value);
3459
3459
  if (unlikely(!value)) return NULL;
@@ -4608,14 +4608,14 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
4608
4608
 
4609
4609
  /* DecompressString */
4610
4610
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
4611
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
4611
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
4612
4612
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
4613
4613
  PyObject *methodname = PyUnicode_FromString("decompress");
4614
4614
  if (unlikely(!methodname)) return NULL;
4615
4615
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
4616
4616
  if (algo == 3) {
4617
4617
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
4618
- if (unlikely(!fromlist)) return NULL;
4618
+ if (unlikely(!fromlist)) goto bad;
4619
4619
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
4620
4620
  Py_DECREF(fromlist);
4621
4621
  } else
@@ -14,4 +14,4 @@ __email__ = "g.corrigan@viso.ai"
14
14
  __license__ = "LGPL3"
15
15
  __title__ = "viso-sdk-python"
16
16
 
17
- __version__ = "1.1.11"
17
+ __version__ = "1.1.12"
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -2790,7 +2790,14 @@ const char* const bytes = "?viso_sdk.constants.__init__*LOG_DIRLOG_SIZENODE_IDNO
2790
2790
  PyObject **table = __pyx_mstate->__pyx_number_tab;
2791
2791
  for (Py_ssize_t i=0; i<1; ++i) {
2792
2792
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
2793
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
2793
+ #if PY_VERSION_HEX < 0x030E0000
2794
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
2795
+ #else
2796
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
2797
+ #endif
2798
+ {
2799
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
2800
+ }
2794
2801
  #else
2795
2802
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
2796
2803
  #endif
@@ -3444,13 +3451,13 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name)
3444
3451
  /* dict_setdefault (used by CLineInTraceback) */
3445
3452
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
3446
3453
  PyObject* value;
3447
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
3454
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
3455
+ PyDict_SetDefaultRef(d, key, default_value, &value);
3456
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
3448
3457
  PyObject *args[] = {d, key, default_value};
3449
3458
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
3450
3459
  #elif CYTHON_COMPILING_IN_LIMITED_API
3451
3460
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
3452
- #elif PY_VERSION_HEX >= 0x030d0000
3453
- PyDict_SetDefaultRef(d, key, default_value, &value);
3454
3461
  #else
3455
3462
  value = PyDict_SetDefault(d, key, default_value);
3456
3463
  if (unlikely(!value)) return NULL;
@@ -4611,14 +4618,14 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
4611
4618
 
4612
4619
  /* DecompressString */
4613
4620
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
4614
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
4621
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
4615
4622
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
4616
4623
  PyObject *methodname = PyUnicode_FromString("decompress");
4617
4624
  if (unlikely(!methodname)) return NULL;
4618
4625
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
4619
4626
  if (algo == 3) {
4620
4627
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
4621
- if (unlikely(!fromlist)) return NULL;
4628
+ if (unlikely(!fromlist)) goto bad;
4622
4629
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
4623
4630
  Py_DECREF(fromlist);
4624
4631
  } else
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -5212,13 +5212,13 @@ static PyObject *__Pyx_PyList_Pack(Py_ssize_t n, ...) {
5212
5212
  /* dict_setdefault (used by CLineInTraceback) */
5213
5213
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
5214
5214
  PyObject* value;
5215
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
5215
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
5216
+ PyDict_SetDefaultRef(d, key, default_value, &value);
5217
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
5216
5218
  PyObject *args[] = {d, key, default_value};
5217
5219
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
5218
5220
  #elif CYTHON_COMPILING_IN_LIMITED_API
5219
5221
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
5220
- #elif PY_VERSION_HEX >= 0x030d0000
5221
- PyDict_SetDefaultRef(d, key, default_value, &value);
5222
5222
  #else
5223
5223
  value = PyDict_SetDefault(d, key, default_value);
5224
5224
  if (unlikely(!value)) return NULL;
@@ -6373,14 +6373,14 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
6373
6373
 
6374
6374
  /* DecompressString */
6375
6375
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
6376
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
6376
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
6377
6377
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
6378
6378
  PyObject *methodname = PyUnicode_FromString("decompress");
6379
6379
  if (unlikely(!methodname)) return NULL;
6380
6380
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
6381
6381
  if (algo == 3) {
6382
6382
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
6383
- if (unlikely(!fromlist)) return NULL;
6383
+ if (unlikely(!fromlist)) goto bad;
6384
6384
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
6385
6385
  Py_DECREF(fromlist);
6386
6386
  } else
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -4159,13 +4159,13 @@ static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObj
4159
4159
  /* dict_setdefault (used by CLineInTraceback) */
4160
4160
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
4161
4161
  PyObject* value;
4162
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
4162
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
4163
+ PyDict_SetDefaultRef(d, key, default_value, &value);
4164
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
4163
4165
  PyObject *args[] = {d, key, default_value};
4164
4166
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
4165
4167
  #elif CYTHON_COMPILING_IN_LIMITED_API
4166
4168
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
4167
- #elif PY_VERSION_HEX >= 0x030d0000
4168
- PyDict_SetDefaultRef(d, key, default_value, &value);
4169
4169
  #else
4170
4170
  value = PyDict_SetDefault(d, key, default_value);
4171
4171
  if (unlikely(!value)) return NULL;
@@ -5346,14 +5346,14 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
5346
5346
 
5347
5347
  /* DecompressString */
5348
5348
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
5349
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
5349
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
5350
5350
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
5351
5351
  PyObject *methodname = PyUnicode_FromString("decompress");
5352
5352
  if (unlikely(!methodname)) return NULL;
5353
5353
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
5354
5354
  if (algo == 3) {
5355
5355
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
5356
- if (unlikely(!fromlist)) return NULL;
5356
+ if (unlikely(!fromlist)) goto bad;
5357
5357
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
5358
5358
  Py_DECREF(fromlist);
5359
5359
  } else
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -3593,7 +3593,14 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) {
3593
3593
  PyObject **table = __pyx_mstate->__pyx_tuple;
3594
3594
  for (Py_ssize_t i=0; i<2; ++i) {
3595
3595
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
3596
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
3596
+ #if PY_VERSION_HEX < 0x030E0000
3597
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
3598
+ #else
3599
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
3600
+ #endif
3601
+ {
3602
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
3603
+ }
3597
3604
  #else
3598
3605
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
3599
3606
  #endif
@@ -3667,7 +3674,14 @@ const char* const bytes = "?/visoviso_sdk/constants/variables.pyNODE_IDNODE_TYPE
3667
3674
  PyObject **table = stringtab + 40;
3668
3675
  for (Py_ssize_t i=0; i<5; ++i) {
3669
3676
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
3670
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
3677
+ #if PY_VERSION_HEX < 0x030E0000
3678
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
3679
+ #else
3680
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
3681
+ #endif
3682
+ {
3683
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
3684
+ }
3671
3685
  #else
3672
3686
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
3673
3687
  #endif
@@ -4652,13 +4666,13 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *const *imported_names, P
4652
4666
  /* dict_setdefault (used by FetchCommonType) */
4653
4667
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
4654
4668
  PyObject* value;
4655
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
4669
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
4670
+ PyDict_SetDefaultRef(d, key, default_value, &value);
4671
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
4656
4672
  PyObject *args[] = {d, key, default_value};
4657
4673
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
4658
4674
  #elif CYTHON_COMPILING_IN_LIMITED_API
4659
4675
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
4660
- #elif PY_VERSION_HEX >= 0x030d0000
4661
- PyDict_SetDefaultRef(d, key, default_value, &value);
4662
4676
  #else
4663
4677
  value = PyDict_SetDefault(d, key, default_value);
4664
4678
  if (unlikely(!value)) return NULL;
@@ -7589,14 +7603,14 @@ done:
7589
7603
 
7590
7604
  /* DecompressString */
7591
7605
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
7592
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
7606
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
7593
7607
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
7594
7608
  PyObject *methodname = PyUnicode_FromString("decompress");
7595
7609
  if (unlikely(!methodname)) return NULL;
7596
7610
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
7597
7611
  if (algo == 3) {
7598
7612
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
7599
- if (unlikely(!fromlist)) return NULL;
7613
+ if (unlikely(!fromlist)) goto bad;
7600
7614
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
7601
7615
  Py_DECREF(fromlist);
7602
7616
  } else
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -2532,13 +2532,13 @@ set_path:
2532
2532
  /* dict_setdefault (used by CLineInTraceback) */
2533
2533
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
2534
2534
  PyObject* value;
2535
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
2535
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
2536
+ PyDict_SetDefaultRef(d, key, default_value, &value);
2537
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
2536
2538
  PyObject *args[] = {d, key, default_value};
2537
2539
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
2538
2540
  #elif CYTHON_COMPILING_IN_LIMITED_API
2539
2541
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
2540
- #elif PY_VERSION_HEX >= 0x030d0000
2541
- PyDict_SetDefaultRef(d, key, default_value, &value);
2542
2542
  #else
2543
2543
  value = PyDict_SetDefault(d, key, default_value);
2544
2544
  if (unlikely(!value)) return NULL;
@@ -3975,14 +3975,14 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
3975
3975
 
3976
3976
  /* DecompressString */
3977
3977
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
3978
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
3978
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
3979
3979
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
3980
3980
  PyObject *methodname = PyUnicode_FromString("decompress");
3981
3981
  if (unlikely(!methodname)) return NULL;
3982
3982
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
3983
3983
  if (algo == 3) {
3984
3984
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
3985
- if (unlikely(!fromlist)) return NULL;
3985
+ if (unlikely(!fromlist)) goto bad;
3986
3986
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
3987
3987
  Py_DECREF(fromlist);
3988
3988
  } else
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.2.3 */
1
+ /* Generated by Cython 3.2.4 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -34,8 +34,8 @@ END: Cython Metadata */
34
34
  #elif PY_VERSION_HEX < 0x03080000
35
35
  #error Cython requires Python 3.8+.
36
36
  #else
37
- #define __PYX_ABI_VERSION "3_2_3"
38
- #define CYTHON_HEX_VERSION 0x030203F0
37
+ #define __PYX_ABI_VERSION "3_2_4"
38
+ #define CYTHON_HEX_VERSION 0x030204F0
39
39
  #define CYTHON_FUTURE_DIVISION 1
40
40
  /* CModulePreamble */
41
41
  #include <stddef.h>
@@ -6136,7 +6136,14 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) {
6136
6136
  PyObject **table = __pyx_mstate->__pyx_tuple;
6137
6137
  for (Py_ssize_t i=0; i<3; ++i) {
6138
6138
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
6139
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6139
+ #if PY_VERSION_HEX < 0x030E0000
6140
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
6141
+ #else
6142
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
6143
+ #endif
6144
+ {
6145
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6146
+ }
6140
6147
  #else
6141
6148
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
6142
6149
  #endif
@@ -6148,7 +6155,14 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) {
6148
6155
  PyObject **table = __pyx_mstate->__pyx_slice;
6149
6156
  for (Py_ssize_t i=0; i<1; ++i) {
6150
6157
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
6151
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6158
+ #if PY_VERSION_HEX < 0x030E0000
6159
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
6160
+ #else
6161
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
6162
+ #endif
6163
+ {
6164
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6165
+ }
6152
6166
  #else
6153
6167
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
6154
6168
  #endif
@@ -6222,7 +6236,14 @@ const char* const bytes = ".?viso_sdk/detection/object.pyviso_sdk.detection.util
6222
6236
  PyObject **table = stringtab + 90;
6223
6237
  for (Py_ssize_t i=0; i<6; ++i) {
6224
6238
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
6225
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6239
+ #if PY_VERSION_HEX < 0x030E0000
6240
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
6241
+ #else
6242
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
6243
+ #endif
6244
+ {
6245
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6246
+ }
6226
6247
  #else
6227
6248
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
6228
6249
  #endif
@@ -6251,7 +6272,14 @@ const char* const bytes = ".?viso_sdk/detection/object.pyviso_sdk.detection.util
6251
6272
  PyObject **table = __pyx_mstate->__pyx_number_tab;
6252
6273
  for (Py_ssize_t i=0; i<4; ++i) {
6253
6274
  #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
6254
- Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6275
+ #if PY_VERSION_HEX < 0x030E0000
6276
+ if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
6277
+ #else
6278
+ if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
6279
+ #endif
6280
+ {
6281
+ Py_SET_REFCNT(table[i], _Py_IMMORTAL_REFCNT_LOCAL);
6282
+ }
6255
6283
  #else
6256
6284
  Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
6257
6285
  #endif
@@ -8347,13 +8375,13 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {
8347
8375
  /* dict_setdefault (used by FetchCommonType) */
8348
8376
  static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
8349
8377
  PyObject* value;
8350
- #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
8378
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
8379
+ PyDict_SetDefaultRef(d, key, default_value, &value);
8380
+ #elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
8351
8381
  PyObject *args[] = {d, key, default_value};
8352
8382
  value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
8353
8383
  #elif CYTHON_COMPILING_IN_LIMITED_API
8354
8384
  value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
8355
- #elif PY_VERSION_HEX >= 0x030d0000
8356
- PyDict_SetDefaultRef(d, key, default_value, &value);
8357
8385
  #else
8358
8386
  value = PyDict_SetDefault(d, key, default_value);
8359
8387
  if (unlikely(!value)) return NULL;
@@ -11217,14 +11245,14 @@ done:
11217
11245
 
11218
11246
  /* DecompressString */
11219
11247
  static PyObject *__Pyx_DecompressString(const char *s, Py_ssize_t length, int algo) {
11220
- PyObject *module, *decompress, *compressed_bytes, *decompressed;
11248
+ PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
11221
11249
  const char* module_name = algo == 3 ? "compression.zstd" : algo == 2 ? "bz2" : "zlib";
11222
11250
  PyObject *methodname = PyUnicode_FromString("decompress");
11223
11251
  if (unlikely(!methodname)) return NULL;
11224
11252
  #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
11225
11253
  if (algo == 3) {
11226
11254
  PyObject *fromlist = Py_BuildValue("[O]", methodname);
11227
- if (unlikely(!fromlist)) return NULL;
11255
+ if (unlikely(!fromlist)) goto bad;
11228
11256
  module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
11229
11257
  Py_DECREF(fromlist);
11230
11258
  } else