viso-sdk-python 1.1.19__tar.gz → 1.1.20__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 (142) hide show
  1. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/CHANGELOG.md +5 -0
  2. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/PKG-INFO +1 -1
  3. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_redis_wrapper.py +49 -0
  4. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/_version.c +9 -9
  5. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/_version.py +1 -1
  6. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/redis_wrapper.c +1073 -560
  7. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/redis_wrapper.py +23 -3
  8. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk_python.egg-info/PKG-INFO +1 -1
  9. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/AUTHORS +0 -0
  10. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/COPYING +0 -0
  11. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/MANIFEST.in +0 -0
  12. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/README.md +0 -0
  13. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/Makefile +0 -0
  14. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/__init__.py +0 -0
  15. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/conf.py +0 -0
  16. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/ext/__init__.py +0 -0
  17. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/ext/docstrings.py +0 -0
  18. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/ext/manager_tmpl.j2 +0 -0
  19. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/index.rst +0 -0
  20. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/make.bat +0 -0
  21. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/modules.rst +0 -0
  22. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk._version.rst +0 -0
  23. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.constants.constants.rst +0 -0
  24. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.constants.modules.rst +0 -0
  25. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.constants.rst +0 -0
  26. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.constants.variables.rst +0 -0
  27. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.edge.common.rst +0 -0
  28. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.edge.rst +0 -0
  29. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.logging.logger.rst +0 -0
  30. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.logging.rst +0 -0
  31. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.model.download.rst +0 -0
  32. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.model.rst +0 -0
  33. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.mqtt.mqtt_wrapper.rst +0 -0
  34. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.mqtt.rst +0 -0
  35. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.mqtt.utils.rst +0 -0
  36. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.nodered.flow.rst +0 -0
  37. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.nodered.rst +0 -0
  38. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.redis.redis_wrapper.rst +0 -0
  39. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.redis.rst +0 -0
  40. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.rst +0 -0
  41. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.status.rst +0 -0
  42. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/docs/source/viso_sdk.status.status_logger.rst +0 -0
  43. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/pyproject.toml +0 -0
  44. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/requirements-dev.txt +0 -0
  45. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/requirements-docker.txt +0 -0
  46. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/requirements-docs.txt +0 -0
  47. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/requirements-lint.txt +0 -0
  48. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/requirements-test.txt +0 -0
  49. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/requirements.txt +0 -0
  50. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/setup.cfg +0 -0
  51. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/setup.py +0 -0
  52. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/__init__.py +0 -0
  53. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/conftest.py +0 -0
  54. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/fixtures/flow.json +0 -0
  55. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/integration/__init__.py +0 -0
  56. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/integration/test_status.py +0 -0
  57. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/meta/__init__.py +0 -0
  58. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/meta/test_ensure_type_hints.py +0 -0
  59. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/smoke/__init__.py +0 -0
  60. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/smoke/test_dists.py +0 -0
  61. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/__init__.py +0 -0
  62. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_flow.py +0 -0
  63. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_logger.py +0 -0
  64. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_model_fetch.py +0 -0
  65. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_nms.py +0 -0
  66. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_object.py +0 -0
  67. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_redis_utils.py +0 -0
  68. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_stream_cleanup.py +0 -0
  69. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_trace_malloc.py +0 -0
  70. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tests/unit/test_viso_data.py +0 -0
  71. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/tox.ini +0 -0
  72. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/__init__.c +0 -0
  73. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/__init__.py +0 -0
  74. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/__init__.c +0 -0
  75. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/__init__.py +0 -0
  76. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/constants.c +0 -0
  77. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/constants.py +0 -0
  78. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/modules.c +0 -0
  79. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/modules.py +0 -0
  80. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/variables.c +0 -0
  81. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/constants/variables.py +0 -0
  82. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/debug/__init__.c +0 -0
  83. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/debug/__init__.py +0 -0
  84. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/debug/trace_malloc.c +0 -0
  85. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/debug/trace_malloc.py +0 -0
  86. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/__init__.c +0 -0
  87. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/__init__.py +0 -0
  88. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/model_utils.c +0 -0
  89. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/model_utils.py +0 -0
  90. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/nms.c +0 -0
  91. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/nms.py +0 -0
  92. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/object.c +0 -0
  93. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/detection/object.py +0 -0
  94. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/edge/__init__.c +0 -0
  95. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/edge/__init__.py +0 -0
  96. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/edge/common.c +0 -0
  97. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/edge/common.py +0 -0
  98. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/logging/__init__.c +0 -0
  99. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/logging/__init__.py +0 -0
  100. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/logging/log_id.c +0 -0
  101. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/logging/log_id.py +0 -0
  102. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/logging/logger.c +0 -0
  103. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/logging/logger.py +0 -0
  104. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/model/__init__.c +0 -0
  105. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/model/__init__.py +0 -0
  106. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/model/fetch.c +0 -0
  107. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/model/fetch.py +0 -0
  108. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/mqtt/__init__.c +0 -0
  109. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/mqtt/__init__.py +0 -0
  110. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/mqtt/mqtt_wrapper.c +0 -0
  111. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/mqtt/mqtt_wrapper.py +0 -0
  112. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/mqtt/utils.c +0 -0
  113. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/mqtt/utils.py +0 -0
  114. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/nodered/__init__.c +0 -0
  115. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/nodered/__init__.py +0 -0
  116. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/nodered/flow.c +0 -0
  117. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/nodered/flow.py +0 -0
  118. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/py.typed +0 -0
  119. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/__init__.c +0 -0
  120. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/__init__.py +0 -0
  121. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/stream_cleanup.c +0 -0
  122. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/stream_cleanup.py +0 -0
  123. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/utils.c +0 -0
  124. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/utils.py +0 -0
  125. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/viso_data.c +0 -0
  126. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/redis/viso_data.py +0 -0
  127. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/roi/__init__.c +0 -0
  128. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/roi/__init__.py +0 -0
  129. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/roi/polygon_roi_manager.c +0 -0
  130. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/roi/polygon_roi_manager.py +0 -0
  131. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/status/__init__.c +0 -0
  132. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/status/__init__.py +0 -0
  133. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/status/status_logger.c +0 -0
  134. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/status/status_logger.py +0 -0
  135. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/structures/__init__.c +0 -0
  136. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/structures/__init__.py +0 -0
  137. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/structures/rollingq.c +0 -0
  138. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk/structures/rollingq.py +0 -0
  139. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk_python.egg-info/SOURCES.txt +0 -0
  140. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk_python.egg-info/dependency_links.txt +0 -0
  141. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk_python.egg-info/requires.txt +0 -0
  142. {viso_sdk_python-1.1.19 → viso_sdk_python-1.1.20}/viso_sdk_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,11 @@
1
1
  # Changelog
2
2
 
3
3
  <!--next-version-placeholder-->
4
+ ## v1.1.20
5
+ ### Fix
6
+ - publish notify message for avoiding missing message
7
+ - Add test script
8
+
4
9
  ## v1.1.19
5
10
  ### Fix
6
11
  - Fix timestamp error
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: viso-sdk-python
3
- Version: 1.1.19
3
+ Version: 1.1.20
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
@@ -41,6 +41,27 @@ class TestWriteData:
41
41
  rw.write_data("my_key", "val", ttl=60)
42
42
  client.set.assert_called_once_with("my_key", "val", ex=60)
43
43
 
44
+ def test_publishes_notification_on_successful_write(self, wrapper):
45
+ rw, client = wrapper
46
+ client.set.return_value = True
47
+ rw.write_data("my_key", "hello")
48
+ client.publish.assert_called_once_with("my_key_notify", "1")
49
+
50
+ def test_does_not_publish_when_write_fails(self, wrapper):
51
+ rw, client = wrapper
52
+ client.set.return_value = False
53
+ rw.write_data("my_key", "hello")
54
+ client.publish.assert_not_called()
55
+
56
+ def test_handles_publish_error_gracefully(self, wrapper):
57
+ rw, client = wrapper
58
+ client.set.return_value = True
59
+ client.publish.side_effect = Exception("publish failed")
60
+ result = rw.write_data("my_key", "hello")
61
+ # Should still return True even if publish fails
62
+ assert result is True
63
+ client.publish.assert_called_once_with("my_key_notify", "1")
64
+
44
65
 
45
66
  class TestReadData:
46
67
  def test_returns_raw_bytes(self, wrapper):
@@ -94,3 +115,31 @@ class TestWriteVisoData:
94
115
  client.delete.return_value = 1
95
116
  rw.write_viso_data(None, "key")
96
117
  client.delete.assert_called_once_with("key")
118
+
119
+ def test_publishes_notification_on_successful_write(self, wrapper):
120
+ rw, client = wrapper
121
+ client.set.return_value = True
122
+ rw.write_viso_data({"frame": None, "result": []}, "viso_key")
123
+ client.publish.assert_called_once_with("viso_key_notify", "1")
124
+
125
+ def test_does_not_publish_when_write_fails(self, wrapper):
126
+ rw, client = wrapper
127
+ client.set.return_value = False
128
+ rw.write_viso_data({"frame": None}, "viso_key")
129
+ client.publish.assert_not_called()
130
+
131
+ def test_handles_publish_error_gracefully(self, wrapper):
132
+ rw, client = wrapper
133
+ client.set.return_value = True
134
+ client.publish.side_effect = Exception("publish failed")
135
+ result = rw.write_viso_data({"frame": None}, "viso_key")
136
+ # Should still return True even if publish fails
137
+ assert result is True
138
+ client.publish.assert_called_once_with("viso_key_notify", "1")
139
+
140
+ def test_no_publish_when_deleting_with_none(self, wrapper):
141
+ rw, client = wrapper
142
+ client.delete.return_value = 1
143
+ rw.write_viso_data(None, "key")
144
+ # Should not publish when deleting
145
+ client.publish.assert_not_called()
@@ -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_19 __pyx_string_tab[1]
1997
+ #define __pyx_kp_u_1_1_20 __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.19"
2608
+ * __version__ = "1.1.20"
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.19" # <<<<<<<<<<<<<<
2615
+ * __version__ = "1.1.20" # <<<<<<<<<<<<<<
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_19) < (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_20) < (0)) __PYX_ERR(0, 17, __pyx_L1_error)
2618
2618
 
2619
2619
  /* "viso_sdk/_version.py":1
2620
2620
  * """ # <<<<<<<<<<<<<<
@@ -2689,23 +2689,23 @@ static int __Pyx_InitConstants(__pyx_mstatetype *__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
2691
  #if (CYTHON_COMPRESS_STRINGS) == 2 /* compression: bz2 (242 bytes) */
2692
- const char* const cstring = "BZh91AY&SYo\247\030\321\000\000\007\337\200@\000@\003x%\350\204A\000\277\357\377\2400\000\315[\014\246\251\261\032\217\005<\240\r\007\244\323@DM6\223LM2\000\000\001\240\324\3656\251\246\241\232\020\304\310\3204\321\241B}\317\023\177kg\260 \035\340 Z\376\rG[']N7\363d\253B\010\313\310Z\267(\347m\323\314\021\232\010\010\024@c\311w\270\016\003\344b\354\037\236\203J\027\241\211a\270\276(\315:U\024$b\337\332]'j\372\314\025\256\316\316e`Tm\0023)E\244\027\351\362\025\rH\213YH\275X\250Gz{\240\367\332\304\326\244\302\251\344\341_\034a\254\230\376\276!0f\271\314\347\255\367\004GrU*\004\201\212\020\326\026\203r\226\221\215=K\030Y%%\037\225\001,<\037\342\356H\247\n\022\r\364\343\032 ";
2692
+ const char* const cstring = "BZh91AY&SY\014hL\222\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\206\236\204zOQ\240\032h\320\241>\347\334\355\306\332o\010\007\210\230\206\3018\243\355\233\256o&\364d\260\241\004g\220Z\252\243\224\360\256\240\215P@@\242\003\032.\363\003x\371\030\272\217\3131\235\213\320\304\260\330a$f\275\252\212\0232o\355n\233\366}c\225\272\317\322\362\260*(\004\257)\202\322+\365\t\213F\204E\257\332(\257V#\271=\320{\360bnRamrp\272x\303I1\375H\205\001\242\3513\236\267\340\022\035\311T\350\022\006hCXZ\215\322ZF4\366,ct\325\224~TD\335\221\376.\344\212p\241 \030\320\231$";
2693
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
- #elif (CYTHON_COMPRESS_STRINGS) != 0 /* compression: zlib (196 bytes) */
2700
- const char* const cstring = "x\3325\216\275n\3030\014\204_\305/`#M\247\002A\177\320!K\206N]\tF\242c\"2\351JT\002\277}\3518\006\207;\334\007\362\330\275t>o\337:\315\231/\2035\373\335~\327\376r\321\016\2711\302\361\343\322\005\315\016Q>o\317|\323\257cs`\351u\003\357\213\266%^\333i\266A\345t\3749\275\342\271Lh\003\000V\3172@H,\004,`\031\003\2351\\=\333\036\000\3675C\344\034\321\310x$\267\202#\001\320\210\234\234C\317\211\026M\034H\312\303:\222\207j\254+\\wD\357\372\254\377\253\230\326\260\220E\352\261&o3*K'\030\333\272w\243\\X\375\330L\230\377\001;rm\357";
2701
- PyObject *data = __Pyx_DecompressString(cstring, 196, 1);
2699
+ #elif (CYTHON_COMPRESS_STRINGS) != 0 /* compression: zlib (195 bytes) */
2700
+ const char* const cstring = "x\3325\216\261n\3030\014D\177\305?`\301q\327\"m\321!K\206N]\tF\242c\"2\351JT\002\377}\3458\236\356p\017\307\243;\270\203\353\273o\235\227\304\327\321\232\276\353\273\366\227\263:\344\306\010\247\217\253\363\232*D\371\274\277\362]\277N\315;\313\240;8\256\332\346pk\347\305F\225\363\351\347\374\206\227<\243\215\000Xj\226\000|d!`\001K\350\351\202\376V\263\375\001\250\276$\010\234\002\032\031OT\255\340D\0004!\307\312a\340H\253F\366$\371i+\222\247j(\033\334:\242\017}\315\377\025\214[\230\311\002\rXb]3\312\353&\030\333\326\273S\312\254\365\330B\230\376\0012\253m\347";
2701
+ PyObject *data = __Pyx_DecompressString(cstring, 195, 1);
2702
2702
  if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
2703
2703
  const char* const bytes = __Pyx_PyBytes_AsString(data);
2704
2704
  #if !CYTHON_ASSUME_SAFE_MACROS
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.19Copyright 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.20Copyright 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
@@ -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.19"
17
+ __version__ = "1.1.20"