splight-lib 5.23.0.dev3__tar.gz → 5.23.1.dev0__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 (161) hide show
  1. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/PKG-INFO +1 -1
  2. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/pyproject.toml +1 -1
  3. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v4/remote_client.py +22 -12
  4. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/uv.lock +1 -1
  5. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/code-style.yaml +0 -0
  6. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/developer.yaml +0 -0
  7. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/pre-release.yaml +0 -0
  8. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/release.yaml +0 -0
  9. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/check_dev_version.py +0 -0
  10. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/check_master_version.py +0 -0
  11. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/check_pypi_version.py +0 -0
  12. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/check_release_version.py +0 -0
  13. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/check_version_uploaded.py +0 -0
  14. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/cleanup_pypi.py +0 -0
  15. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.github/workflows/scripts/requirements.txt +0 -0
  16. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.gitignore +0 -0
  17. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/.pre-commit-config.yaml +0 -0
  18. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/DOCS.md +0 -0
  19. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/LICENSE.txt +0 -0
  20. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/Makefile +0 -0
  21. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/README.md +0 -0
  22. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/__init__.py +0 -0
  23. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/abstract/__init__.py +0 -0
  24. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/abstract/client.py +0 -0
  25. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/auth/__init__.py +0 -0
  26. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/auth/token.py +0 -0
  27. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/__init__.py +0 -0
  28. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/database/__init__.py +0 -0
  29. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/database/abstract.py +0 -0
  30. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/database/builder.py +0 -0
  31. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/database/classmap.py +0 -0
  32. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/database/remote_client.py +0 -0
  33. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/__init__.py +0 -0
  34. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/builder.py +0 -0
  35. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/common/__init__.py +0 -0
  36. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/common/abstract.py +0 -0
  37. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/common/buffer.py +0 -0
  38. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v3/__init__.py +0 -0
  39. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v3/builder.py +0 -0
  40. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v3/classmap.py +0 -0
  41. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v3/constants.py +0 -0
  42. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v3/exceptions.py +0 -0
  43. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v3/remote_client.py +0 -0
  44. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v4/__init__.py +0 -0
  45. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v4/builder.py +0 -0
  46. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/datalake/v4/exceptions.py +0 -0
  47. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/exceptions.py +0 -0
  48. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/hub/__init__.py +0 -0
  49. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/hub/abstract.py +0 -0
  50. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/hub/client.py +0 -0
  51. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/tests/test_database.py +0 -0
  52. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/client/tests/test_datalake.py +0 -0
  53. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/component/__init__.py +0 -0
  54. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/component/abstract.py +0 -0
  55. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/component/exceptions.py +0 -0
  56. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/component/spec.py +0 -0
  57. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/component/tests/test_spec.py +0 -0
  58. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/config.py +0 -0
  59. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/conftest.py +0 -0
  60. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/constants.py +0 -0
  61. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/encryption.py +0 -0
  62. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/__init__.py +0 -0
  63. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/engine.py +0 -0
  64. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/exceptions.py +0 -0
  65. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/scheduling.py +0 -0
  66. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/task.py +0 -0
  67. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/tests/test_execution.py +0 -0
  68. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/tests/test_scheduling.py +0 -0
  69. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/execution/trigger.py +0 -0
  70. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/logging/__init__.py +0 -0
  71. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/logging/_internal.py +0 -0
  72. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/logging/component.py +0 -0
  73. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/logging/constants.py +0 -0
  74. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/logging/logging.py +0 -0
  75. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/logging/tests/test_logging.py +0 -0
  76. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/__init__.py +0 -0
  77. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/__init__.py +0 -0
  78. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/actions.py +0 -0
  79. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/alert.py +0 -0
  80. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/asset.py +0 -0
  81. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/attribute.py +0 -0
  82. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/bus.py +0 -0
  83. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/component.py +0 -0
  84. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/dashboard.py +0 -0
  85. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/data_address.py +0 -0
  86. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/datalake.py +0 -0
  87. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/datalake_base.py +0 -0
  88. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/exceptions.py +0 -0
  89. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/external_grid.py +0 -0
  90. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/file.py +0 -0
  91. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/function.py +0 -0
  92. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/generator.py +0 -0
  93. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/generic.py +0 -0
  94. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/grid.py +0 -0
  95. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/hub.py +0 -0
  96. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/hub_server.py +0 -0
  97. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/inverter.py +0 -0
  98. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/line.py +0 -0
  99. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/metadata.py +0 -0
  100. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/native.py +0 -0
  101. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/secret.py +0 -0
  102. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/segment.py +0 -0
  103. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/server.py +0 -0
  104. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/slack_generator.py +0 -0
  105. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/slack_line.py +0 -0
  106. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/tag.py +0 -0
  107. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/tests/models.json +0 -0
  108. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/tests/test_component_object_instance.py +0 -0
  109. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/tests/test_database_model.py +0 -0
  110. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/tests/test_metadata.py +0 -0
  111. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/tests/test_models.py +0 -0
  112. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/three_winding_transformer.py +0 -0
  113. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/transformer.py +0 -0
  114. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v3/variable_types.py +0 -0
  115. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/__init__.py +0 -0
  116. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/asset.py +0 -0
  117. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/attribute.py +0 -0
  118. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/base.py +0 -0
  119. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/battery.py +0 -0
  120. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/bus.py +0 -0
  121. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/component.py +0 -0
  122. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/data_address.py +0 -0
  123. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/datalake.py +0 -0
  124. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/datalake_base.py +0 -0
  125. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/exceptions.py +0 -0
  126. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/external_grid.py +0 -0
  127. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/file.py +0 -0
  128. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/generator.py +0 -0
  129. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/generic.py +0 -0
  130. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/grid.py +0 -0
  131. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/hub.py +0 -0
  132. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/hub_server.py +0 -0
  133. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/line.py +0 -0
  134. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/load.py +0 -0
  135. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/metadata.py +0 -0
  136. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/native.py +0 -0
  137. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/secret.py +0 -0
  138. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/segment.py +0 -0
  139. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/server.py +0 -0
  140. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/slack_line.py +0 -0
  141. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/solution.py +0 -0
  142. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/tag.py +0 -0
  143. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/transformer.py +0 -0
  144. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/_v4/variable_types.py +0 -0
  145. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/models/database.py +0 -0
  146. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/restclient/__init__.py +0 -0
  147. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/restclient/client.py +0 -0
  148. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/restclient/exceptions.py +0 -0
  149. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/restclient/tests/test_restclient.py +0 -0
  150. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/restclient/types.py +0 -0
  151. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/server/__init__.py +0 -0
  152. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/server/exceptions.py +0 -0
  153. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/server/server.py +0 -0
  154. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/settings.py +0 -0
  155. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/testing/__init__.py +0 -0
  156. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/tests/FakeProc.py +0 -0
  157. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/tests/asset_geometries.json +0 -0
  158. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/tests/test_api_contracts.py +0 -0
  159. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/utils/__init__.py +0 -0
  160. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/utils/custom_model.py +0 -0
  161. {splight_lib-5.23.0.dev3 → splight_lib-5.23.1.dev0}/splight_lib/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: splight-lib
3
- Version: 5.23.0.dev3
3
+ Version: 5.23.1.dev0
4
4
  Summary: Splight Python Library
5
5
  Author-email: Splight Dev <dev@splight.com>
6
6
  License-File: LICENSE.txt
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "splight-lib"
3
- version = "5.23.0dev3"
3
+ version = "5.23.1.dev0"
4
4
  description = "Splight Python Library"
5
5
  authors = [
6
6
  {name = "Splight Dev",email = "dev@splight.com"}
@@ -50,6 +50,7 @@ class SyncRemoteDatalakeClient(AbstractDatalakeClient):
50
50
  @retry(EXCEPTIONS, tries=3, delay=2, jitter=1)
51
51
  def save(self, records: dict) -> list[dict]:
52
52
  url = self._base_url / f"{self.prefix}/write/"
53
+ __import__("ipdb").set_trace()
53
54
  response = self._restclient.post(url, json=records)
54
55
  if response.is_error:
55
56
  raise DatalakeRequestError(response.status_code, response.text)
@@ -125,6 +126,7 @@ class BufferedAsyncRemoteDatalakeClient(SyncRemoteDatalakeClient):
125
126
  )
126
127
  self._data_buffers = {
127
128
  "default": DatalakeDocumentBuffer(buffer_size, buffer_timeout),
129
+ "solutions": DatalakeDocumentBuffer(buffer_size, buffer_timeout),
128
130
  "routineEvaluations": DatalakeDocumentBuffer(
129
131
  buffer_size, buffer_timeout
130
132
  ),
@@ -140,25 +142,28 @@ class BufferedAsyncRemoteDatalakeClient(SyncRemoteDatalakeClient):
140
142
  def save(self, records: dict) -> list[dict]:
141
143
  logger.debug("Saving documents in datalake", tags=LogTags.DATALAKE)
142
144
  instances = records["records"]
143
- buffer = self._data_buffers["default"]
145
+ collection = records["collection"]
146
+ buffer = self._data_buffers[collection]
144
147
  with self._lock:
145
148
  if buffer.should_flush():
146
149
  logger.debug(
147
150
  "Flushing datalake buffer with %s elements",
148
151
  len(buffer.data),
149
152
  )
150
- self._send_documents(buffer.data)
153
+ self._send_documents(collection, buffer.data)
151
154
  buffer.reset()
152
155
  buffer.add_documents(instances)
153
156
  return instances
154
157
 
155
158
  def _flusher(self):
156
159
  while True:
157
- for _, buffer in self._data_buffers.items():
158
- self._flush_buffer(buffer)
160
+ for collection, buffer in self._data_buffers.items():
161
+ self._flush_buffer(collection, buffer)
159
162
  sleep(0.5)
160
163
 
161
- def _flush_buffer(self, buffer: DatalakeDocumentBuffer) -> None:
164
+ def _flush_buffer(
165
+ self, collection: str, buffer: DatalakeDocumentBuffer
166
+ ) -> None:
162
167
  with self._lock:
163
168
  if buffer.should_flush():
164
169
  try:
@@ -166,15 +171,16 @@ class BufferedAsyncRemoteDatalakeClient(SyncRemoteDatalakeClient):
166
171
  "Flushing datalake buffer with %s elements",
167
172
  len(buffer.data),
168
173
  )
169
- self._send_documents(buffer.data)
174
+ self._send_documents(collection, buffer.data)
170
175
  buffer.reset()
171
176
  except Exception:
172
177
  logger.error("Unable to save documents", exc_info=True)
173
178
 
174
179
  @retry(EXCEPTIONS, tries=3, delay=2, jitter=1)
175
- def _send_documents(self, docs: list[dict]) -> list[dict]:
180
+ def _send_documents(self, collection: str, docs: list[dict]) -> list[dict]:
176
181
  url = self._base_url / f"{self.prefix}/write/"
177
182
  data = {
183
+ "collection": collection,
178
184
  "records": docs,
179
185
  }
180
186
  response = self._restclient.post(url, json=data)
@@ -220,6 +226,7 @@ class BufferedSyncRemoteDataClient(SyncRemoteDatalakeClient):
220
226
  )
221
227
  self._data_buffers = {
222
228
  "default": DatalakeDocumentBuffer(buffer_size, buffer_timeout),
229
+ "solutions": DatalakeDocumentBuffer(buffer_size, buffer_timeout),
223
230
  "routine_evaluations": DatalakeDocumentBuffer(
224
231
  buffer_size, buffer_timeout
225
232
  ),
@@ -232,23 +239,26 @@ class BufferedSyncRemoteDataClient(SyncRemoteDatalakeClient):
232
239
 
233
240
  def save(self, records: Records) -> list[dict]:
234
241
  logger.debug("Saving documents in datalake", tags=LogTags.DATALAKE)
235
- buffer = self._data_buffers["default"]
242
+ collection = records["collection"]
243
+ records = records["records"]
244
+ buffer = self._data_buffers[collection]
236
245
  with self._lock:
237
- buffer.add_documents(records["records"])
246
+ buffer.add_documents(records)
238
247
  if buffer.should_flush():
239
248
  logger.debug(
240
249
  "Flushing datalake buffer with %s elements",
241
250
  len(buffer.data),
242
251
  tags=LogTags.DATALAKE,
243
252
  )
244
- self._send_documents(buffer.data)
253
+ self._send_documents(collection, buffer.data)
245
254
  buffer.reset()
246
- return records["records"]
255
+ return records
247
256
 
248
257
  @retry(EXCEPTIONS, tries=3, delay=2, jitter=1)
249
- def _send_documents(self, docs: list[dict]) -> list[dict]:
258
+ def _send_documents(self, collection: str, docs: list[dict]) -> list[dict]:
250
259
  url = self._base_url / f"{self.prefix}/write/"
251
260
  data = {
261
+ "collection": collection,
252
262
  "records": docs,
253
263
  }
254
264
  response = self._restclient.post(url, json=data)
@@ -1748,7 +1748,7 @@ wheels = [
1748
1748
 
1749
1749
  [[package]]
1750
1750
  name = "splight-lib"
1751
- version = "5.23.0.dev3"
1751
+ version = "5.23.1.dev0"
1752
1752
  source = { editable = "." }
1753
1753
  dependencies = [
1754
1754
  { name = "apscheduler" },