digitalhub 0.13.0b3__tar.gz → 0.13.1__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.

Potentially problematic release.


This version of digitalhub might be problematic. Click here for more details.

Files changed (309) hide show
  1. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/PKG-INFO +1 -1
  2. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/material/entity.py +1 -1
  3. digitalhub-0.13.1/digitalhub/entities/_commons/metrics.py +202 -0
  4. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_commons/utils.py +36 -9
  5. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_processors/base.py +150 -79
  6. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_processors/context.py +363 -212
  7. digitalhub-0.13.1/digitalhub/entities/_processors/utils.py +206 -0
  8. digitalhub-0.13.1/digitalhub/entities/artifact/utils.py +81 -0
  9. digitalhub-0.13.1/digitalhub/entities/dataitem/utils.py +238 -0
  10. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/crud.py +1 -1
  11. digitalhub-0.13.1/digitalhub/entities/model/utils.py +81 -0
  12. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/enums.py +1 -0
  13. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/api.py +1 -1
  14. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/builder.py +66 -4
  15. digitalhub-0.13.1/digitalhub/stores/data/sql/configurator.py +120 -0
  16. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/sql/store.py +169 -78
  17. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/generic_utils.py +1 -2
  18. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/pyproject.toml +2 -2
  19. digitalhub-0.13.0b3/digitalhub/entities/_commons/metrics.py +0 -168
  20. digitalhub-0.13.0b3/digitalhub/entities/_commons/types.py +0 -9
  21. digitalhub-0.13.0b3/digitalhub/entities/_processors/utils.py +0 -162
  22. digitalhub-0.13.0b3/digitalhub/entities/artifact/utils.py +0 -66
  23. digitalhub-0.13.0b3/digitalhub/entities/dataitem/utils.py +0 -188
  24. digitalhub-0.13.0b3/digitalhub/entities/model/utils.py +0 -66
  25. digitalhub-0.13.0b3/digitalhub/stores/data/sql/configurator.py +0 -70
  26. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.github/scripts/bump.sh +0 -0
  27. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.github/scripts/changelog.sh +0 -0
  28. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.github/scripts/cliff.toml +0 -0
  29. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.github/workflows/release.yml +0 -0
  30. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.github/workflows/run_local_test.yml +0 -0
  31. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.github/workflows/test_release.yml +0 -0
  32. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/.gitignore +0 -0
  33. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/AUTHORS +0 -0
  34. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/CONTRIBUTING +0 -0
  35. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/COPYRIGHT +0 -0
  36. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/LICENSE +0 -0
  37. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/README.md +0 -0
  38. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/__init__.py +0 -0
  39. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/context/api.py +0 -0
  40. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/context/builder.py +0 -0
  41. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/context/context.py +0 -0
  42. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/__init__.py +0 -0
  43. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/__init__.py +0 -0
  44. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/_base/__init__.py +0 -0
  45. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/_base/entity.py +0 -0
  46. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/context/__init__.py +0 -0
  47. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/context/entity.py +0 -0
  48. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/__init__.py +0 -0
  49. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/_constructors/__init__.py +0 -0
  50. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/_constructors/metadata.py +0 -0
  51. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/_constructors/name.py +0 -0
  52. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/_constructors/spec.py +0 -0
  53. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/_constructors/status.py +0 -0
  54. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/_constructors/uuid.py +0 -0
  55. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/builder.py +0 -0
  56. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/entity.py +0 -0
  57. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/metadata.py +0 -0
  58. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/spec.py +0 -0
  59. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/entity/status.py +0 -0
  60. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/executable/__init__.py +0 -0
  61. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/executable/entity.py +0 -0
  62. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/material/__init__.py +0 -0
  63. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/material/spec.py +0 -0
  64. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/material/status.py +0 -0
  65. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/material/utils.py +0 -0
  66. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/runtime_entity/__init__.py +0 -0
  67. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/runtime_entity/builder.py +0 -0
  68. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/unversioned/__init__.py +0 -0
  69. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/unversioned/builder.py +0 -0
  70. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/unversioned/entity.py +0 -0
  71. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/versioned/__init__.py +0 -0
  72. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/versioned/builder.py +0 -0
  73. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_base/versioned/entity.py +0 -0
  74. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_commons/__init__.py +0 -0
  75. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_commons/enums.py +0 -0
  76. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/_processors/__init__.py +0 -0
  77. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/__init__.py +0 -0
  78. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/_base/__init__.py +0 -0
  79. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/_base/builder.py +0 -0
  80. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/_base/entity.py +0 -0
  81. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/_base/spec.py +0 -0
  82. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/_base/status.py +0 -0
  83. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/artifact/__init__.py +0 -0
  84. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/artifact/builder.py +0 -0
  85. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/artifact/entity.py +0 -0
  86. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/artifact/spec.py +0 -0
  87. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/artifact/status.py +0 -0
  88. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/artifact/crud.py +0 -0
  89. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/builders.py +0 -0
  90. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/__init__.py +0 -0
  91. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/_base/__init__.py +0 -0
  92. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/_base/builder.py +0 -0
  93. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/_base/entity.py +0 -0
  94. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/_base/spec.py +0 -0
  95. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/_base/status.py +0 -0
  96. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/crud.py +0 -0
  97. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/dataitem/__init__.py +0 -0
  98. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/dataitem/builder.py +0 -0
  99. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/dataitem/entity.py +0 -0
  100. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/dataitem/spec.py +0 -0
  101. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/dataitem/status.py +0 -0
  102. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/iceberg/__init__.py +0 -0
  103. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/iceberg/builder.py +0 -0
  104. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/iceberg/entity.py +0 -0
  105. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/iceberg/spec.py +0 -0
  106. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/iceberg/status.py +0 -0
  107. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/__init__.py +0 -0
  108. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/builder.py +0 -0
  109. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/entity.py +0 -0
  110. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/models.py +0 -0
  111. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/spec.py +0 -0
  112. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/status.py +0 -0
  113. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/dataitem/table/utils.py +0 -0
  114. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/__init__.py +0 -0
  115. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/_base/__init__.py +0 -0
  116. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/_base/builder.py +0 -0
  117. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/_base/entity.py +0 -0
  118. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/_base/spec.py +0 -0
  119. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/_base/status.py +0 -0
  120. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/function/crud.py +0 -0
  121. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/__init__.py +0 -0
  122. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/_base/__init__.py +0 -0
  123. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/_base/builder.py +0 -0
  124. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/_base/entity.py +0 -0
  125. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/_base/spec.py +0 -0
  126. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/_base/status.py +0 -0
  127. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/huggingface/__init__.py +0 -0
  128. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/huggingface/builder.py +0 -0
  129. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/huggingface/entity.py +0 -0
  130. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/huggingface/spec.py +0 -0
  131. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/huggingface/status.py +0 -0
  132. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/__init__.py +0 -0
  133. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/builder.py +0 -0
  134. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/entity.py +0 -0
  135. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/models.py +0 -0
  136. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/spec.py +0 -0
  137. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/status.py +0 -0
  138. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/mlflow/utils.py +0 -0
  139. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/model/__init__.py +0 -0
  140. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/model/builder.py +0 -0
  141. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/model/entity.py +0 -0
  142. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/model/spec.py +0 -0
  143. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/model/status.py +0 -0
  144. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/sklearn/__init__.py +0 -0
  145. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/sklearn/builder.py +0 -0
  146. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/sklearn/entity.py +0 -0
  147. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/sklearn/spec.py +0 -0
  148. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/model/sklearn/status.py +0 -0
  149. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/__init__.py +0 -0
  150. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/_base/__init__.py +0 -0
  151. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/_base/builder.py +0 -0
  152. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/_base/entity.py +0 -0
  153. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/_base/models.py +0 -0
  154. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/_base/spec.py +0 -0
  155. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/_base/status.py +0 -0
  156. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/crud.py +0 -0
  157. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/project/utils.py +0 -0
  158. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/__init__.py +0 -0
  159. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/_base/__init__.py +0 -0
  160. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/_base/builder.py +0 -0
  161. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/_base/entity.py +0 -0
  162. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/_base/spec.py +0 -0
  163. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/_base/status.py +0 -0
  164. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/run/crud.py +0 -0
  165. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/__init__.py +0 -0
  166. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/_base/__init__.py +0 -0
  167. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/_base/builder.py +0 -0
  168. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/_base/entity.py +0 -0
  169. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/_base/spec.py +0 -0
  170. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/_base/status.py +0 -0
  171. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/secret/crud.py +0 -0
  172. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/__init__.py +0 -0
  173. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/__init__.py +0 -0
  174. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/builder.py +0 -0
  175. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/entity.py +0 -0
  176. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/models.py +0 -0
  177. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/spec.py +0 -0
  178. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/status.py +0 -0
  179. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/_base/utils.py +0 -0
  180. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/task/crud.py +0 -0
  181. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/__init__.py +0 -0
  182. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/_base/__init__.py +0 -0
  183. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/_base/builder.py +0 -0
  184. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/_base/entity.py +0 -0
  185. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/_base/spec.py +0 -0
  186. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/_base/status.py +0 -0
  187. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/crud.py +0 -0
  188. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/lifecycle/__init__.py +0 -0
  189. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/lifecycle/builder.py +0 -0
  190. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/lifecycle/entity.py +0 -0
  191. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/lifecycle/spec.py +0 -0
  192. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/lifecycle/status.py +0 -0
  193. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/scheduler/__init__.py +0 -0
  194. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/scheduler/builder.py +0 -0
  195. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/scheduler/entity.py +0 -0
  196. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/scheduler/spec.py +0 -0
  197. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/trigger/scheduler/status.py +0 -0
  198. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/__init__.py +0 -0
  199. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/_base/__init__.py +0 -0
  200. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/_base/builder.py +0 -0
  201. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/_base/entity.py +0 -0
  202. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/_base/spec.py +0 -0
  203. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/_base/status.py +0 -0
  204. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/entities/workflow/crud.py +0 -0
  205. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/factory/__init__.py +0 -0
  206. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/factory/factory.py +0 -0
  207. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/factory/utils.py +0 -0
  208. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/runtimes/__init__.py +0 -0
  209. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/runtimes/_base.py +0 -0
  210. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/runtimes/builder.py +0 -0
  211. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/runtimes/enums.py +0 -0
  212. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/__init__.py +0 -0
  213. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/__init__.py +0 -0
  214. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/_base/__init__.py +0 -0
  215. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/_base/api_builder.py +0 -0
  216. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/_base/client.py +0 -0
  217. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/_base/key_builder.py +0 -0
  218. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/_base/params_builder.py +0 -0
  219. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/api.py +0 -0
  220. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/builder.py +0 -0
  221. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/__init__.py +0 -0
  222. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/api_builder.py +0 -0
  223. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/client.py +0 -0
  224. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/configurator.py +0 -0
  225. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/enums.py +0 -0
  226. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/error_parser.py +0 -0
  227. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/key_builder.py +0 -0
  228. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/models.py +0 -0
  229. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/params_builder.py +0 -0
  230. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/dhcore/utils.py +0 -0
  231. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/local/__init__.py +0 -0
  232. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/local/api_builder.py +0 -0
  233. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/local/client.py +0 -0
  234. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/local/enums.py +0 -0
  235. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/local/key_builder.py +0 -0
  236. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/client/local/params_builder.py +0 -0
  237. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/__init__.py +0 -0
  238. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/api.py +0 -0
  239. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/configurator.py +0 -0
  240. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/handler.py +0 -0
  241. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/ini_module.py +0 -0
  242. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/credentials/store.py +0 -0
  243. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/__init__.py +0 -0
  244. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/_base/__init__.py +0 -0
  245. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/_base/store.py +0 -0
  246. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/enums.py +0 -0
  247. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/local/__init__.py +0 -0
  248. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/local/store.py +0 -0
  249. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/remote/__init__.py +0 -0
  250. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/remote/store.py +0 -0
  251. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/s3/__init__.py +0 -0
  252. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/s3/configurator.py +0 -0
  253. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/s3/store.py +0 -0
  254. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/s3/utils.py +0 -0
  255. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/data/sql/__init__.py +0 -0
  256. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/__init__.py +0 -0
  257. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/__init__.py +0 -0
  258. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/_base/__init__.py +0 -0
  259. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/_base/builder.py +0 -0
  260. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/_base/reader.py +0 -0
  261. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/api.py +0 -0
  262. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/factory.py +0 -0
  263. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/pandas/__init__.py +0 -0
  264. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/pandas/builder.py +0 -0
  265. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/data/pandas/reader.py +0 -0
  266. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/stores/readers/query/__init__.py +0 -0
  267. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/__init__.py +0 -0
  268. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/enums.py +0 -0
  269. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/exceptions.py +0 -0
  270. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/file_utils.py +0 -0
  271. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/git_utils.py +0 -0
  272. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/io_utils.py +0 -0
  273. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/logger.py +0 -0
  274. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/types.py +0 -0
  275. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/digitalhub/utils/uri_utils.py +0 -0
  276. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/README.md +0 -0
  277. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/local-copy/README.md +0 -0
  278. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/local-copy/local_copy.sh +0 -0
  279. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/DBT.dockerfile +0 -0
  280. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/KFP.dockerfile +0 -0
  281. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/PY10.dockerfile +0 -0
  282. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/PY11.dockerfile +0 -0
  283. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/PY9.dockerfile +0 -0
  284. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/README.md +0 -0
  285. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/quick-docker-copy/build_containers.sh +0 -0
  286. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/spec_exporter/README.md +0 -0
  287. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/scripts/spec_exporter/exporter.sh +0 -0
  288. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/CRUD/test_artifacts.py +0 -0
  289. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/CRUD/test_dataitems.py +0 -0
  290. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/CRUD/test_models.py +0 -0
  291. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/imports/test_imports.py +0 -0
  292. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/artifact/artifact-http.json +0 -0
  293. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/artifact/artifact-local.json +0 -0
  294. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/artifact/artifact-s3.json +0 -0
  295. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/artifact/artifact-sql.json +0 -0
  296. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/dataitem/dataitem-table.json +0 -0
  297. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/dataitem/dataitem.json +0 -0
  298. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/model/model-huggingface.json +0 -0
  299. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/model/model-mlflow.json +0 -0
  300. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/model/model-sklearn.json +0 -0
  301. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/model/model.json +0 -0
  302. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/project.json +0 -0
  303. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/entities/secret.json +0 -0
  304. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/local/instances/test_validate.py +0 -0
  305. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/test_crud_functions.py +0 -0
  306. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/test_crud_runs.py +0 -0
  307. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/test_crud_tasks.py +0 -0
  308. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/testkfp.py +0 -0
  309. {digitalhub-0.13.0b3 → digitalhub-0.13.1}/test/testkfp_pipeline.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: digitalhub
3
- Version: 0.13.0b3
3
+ Version: 0.13.1
4
4
  Summary: Python SDK for Digitalhub
5
5
  Project-URL: Homepage, https://github.com/scc-digitalhub/digitalhub-sdk
6
6
  Author-email: Fondazione Bruno Kessler <digitalhub@fbk.eu>, Matteo Martini <mmartini@fbk.eu>
@@ -200,7 +200,7 @@ class MaterialEntity(VersionedEntity):
200
200
  list
201
201
  Paths of the files in the status.
202
202
  """
203
- return [f.get("path") for f in self.status.files]
203
+ return [f.get("path") if f.get("path") is not None else f.get("name") for f in self.status.files]
204
204
 
205
205
  ##############################
206
206
  # Private Helpers
@@ -0,0 +1,202 @@
1
+ # SPDX-FileCopyrightText: © 2025 DSLab - Fondazione Bruno Kessler
2
+ #
3
+ # SPDX-License-Identifier: Apache-2.0
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Any, Union
8
+
9
+ from pydantic import BaseModel, ValidationError
10
+
11
+ MetricType = Union[float, int, list[Union[float, int]]]
12
+
13
+
14
+ class Metric(BaseModel):
15
+ """
16
+ Pydantic model for validating metric values.
17
+
18
+ This model ensures that metric values are of the correct type,
19
+ accepting single numeric values or lists of numeric values.
20
+
21
+ Attributes
22
+ ----------
23
+ value : MetricType
24
+ The metric value, which can be a float, int, or list of floats/ints.
25
+ """
26
+
27
+ value: MetricType
28
+
29
+
30
+ def validate_metric_value(value: Any) -> MetricType:
31
+ """
32
+ Validate and convert a value to a proper metric type.
33
+
34
+ Uses Pydantic validation to ensure the input value conforms to
35
+ the MetricType specification (float, int, or list of floats/ints).
36
+
37
+ Parameters
38
+ ----------
39
+ value : Any
40
+ The value to validate and convert.
41
+
42
+ Returns
43
+ -------
44
+ MetricType
45
+ The validated metric value.
46
+
47
+ Raises
48
+ ------
49
+ ValueError
50
+ If the value cannot be converted to a valid metric type.
51
+ """
52
+ try:
53
+ return Metric(value=value).value
54
+ except ValidationError as e:
55
+ raise ValueError("Invalid metric value. Must be a list of floats or ints or a float or an int.") from e
56
+
57
+
58
+ def set_metrics(
59
+ metrics: dict[str, MetricType],
60
+ key: str,
61
+ value: Any,
62
+ overwrite: bool,
63
+ single_value: bool,
64
+ ) -> dict[str, MetricType]:
65
+ """
66
+ Set or update a metric value in the metrics dictionary.
67
+
68
+ This function routes to appropriate handling based on the value type
69
+ and the single_value flag. It can handle single values, lists, and
70
+ appending to existing metrics.
71
+
72
+ Parameters
73
+ ----------
74
+ metrics : dict[str, MetricType]
75
+ The metrics dictionary to update.
76
+ key : str
77
+ The metric key to set or update.
78
+ value : Any
79
+ The value to set for the metric.
80
+ overwrite : bool
81
+ Whether to overwrite existing metrics.
82
+ single_value : bool
83
+ Whether to treat the value as a single metric rather than
84
+ appending to a list.
85
+
86
+ Returns
87
+ -------
88
+ dict[str, MetricType]
89
+ The updated metrics dictionary.
90
+ """
91
+ if isinstance(value, list):
92
+ return handle_metric_list(metrics, key, value, overwrite)
93
+ elif single_value:
94
+ return handle_metric_single(metrics, key, value, overwrite)
95
+ return handle_metric_list_append(metrics, key, value, overwrite)
96
+
97
+
98
+ def handle_metric_single(
99
+ metrics: dict[str, MetricType],
100
+ key: str,
101
+ value: float | int,
102
+ overwrite: bool,
103
+ ) -> dict:
104
+ """
105
+ Handle setting a single metric value.
106
+
107
+ Sets or overwrites a metric with a single numeric value. If the key
108
+ already exists and overwrite is False, the existing value is preserved.
109
+
110
+ Parameters
111
+ ----------
112
+ metrics : dict[str, MetricType]
113
+ The metrics dictionary to update.
114
+ key : str
115
+ The metric key to set.
116
+ value : float | int
117
+ The single numeric value to set.
118
+ overwrite : bool
119
+ Whether to overwrite an existing metric with the same key.
120
+
121
+ Returns
122
+ -------
123
+ dict
124
+ The updated metrics dictionary.
125
+ """
126
+ if key not in metrics or overwrite:
127
+ metrics[key] = value
128
+ return metrics
129
+
130
+
131
+ def handle_metric_list_append(
132
+ metrics: dict[str, MetricType],
133
+ key: str,
134
+ value: float | int,
135
+ overwrite: bool,
136
+ ) -> dict:
137
+ """
138
+ Handle appending a single value to a metric list.
139
+
140
+ If the metric doesn't exist or overwrite is True, creates a new list
141
+ with the single value. If the metric exists as a list, appends to it.
142
+ If the metric exists as a single value, converts it to a list and appends.
143
+
144
+ Parameters
145
+ ----------
146
+ metrics : dict[str, MetricType]
147
+ The metrics dictionary to update.
148
+ key : str
149
+ The metric key to append to.
150
+ value : float | int
151
+ The numeric value to append.
152
+ overwrite : bool
153
+ Whether to overwrite an existing metric instead of appending.
154
+
155
+ Returns
156
+ -------
157
+ dict
158
+ The updated metrics dictionary.
159
+ """
160
+ if key not in metrics or overwrite:
161
+ metrics[key] = [value]
162
+ elif isinstance(metrics[key], list):
163
+ metrics[key].append(value)
164
+ else:
165
+ metrics[key] = [metrics[key], value]
166
+ return metrics
167
+
168
+
169
+ def handle_metric_list(
170
+ metrics: dict[str, MetricType],
171
+ key: str,
172
+ value: list[int | float],
173
+ overwrite: bool,
174
+ ) -> dict:
175
+ """
176
+ Handle setting or extending a metric with a list of values.
177
+
178
+ If the metric doesn't exist or overwrite is True, sets the metric to
179
+ the provided list. If the metric exists and overwrite is False, extends
180
+ the existing list with the new values.
181
+
182
+ Parameters
183
+ ----------
184
+ metrics : dict[str, MetricType]
185
+ The metrics dictionary to update.
186
+ key : str
187
+ The metric key to set or extend.
188
+ value : list[int | float]
189
+ The list of numeric values to set or extend with.
190
+ overwrite : bool
191
+ Whether to overwrite an existing metric instead of extending it.
192
+
193
+ Returns
194
+ -------
195
+ dict
196
+ The updated metrics dictionary.
197
+ """
198
+ if key not in metrics or overwrite:
199
+ metrics[key] = value
200
+ else:
201
+ metrics[key].extend(value)
202
+ return metrics
@@ -9,17 +9,28 @@ from digitalhub.entities._commons.enums import EntityTypes
9
9
 
10
10
  def parse_entity_key(key: str) -> tuple[str, str, str, str | None, str]:
11
11
  """
12
- Parse the entity key. Returns project, entity type, kind, name and uuid.
12
+ Parse an entity key into its constituent components.
13
+
14
+ Extracts project name, entity type, kind, name, and UUID from a
15
+ standardized entity key format. Handles special cases for tasks
16
+ and runs which don't have name components.
13
17
 
14
18
  Parameters
15
19
  ----------
16
20
  key : str
17
- The entity key.
21
+ The entity key in format "store://project/type/kind/name:uuid"
22
+ or "store://project/type/kind/uuid" for tasks and runs.
18
23
 
19
24
  Returns
20
25
  -------
21
26
  tuple[str, str, str, str | None, str]
22
- Project, entity type, kind, name and uuid.
27
+ A tuple containing (project, entity_type, kind, name, uuid).
28
+ The name component is None for tasks and runs.
29
+
30
+ Raises
31
+ ------
32
+ ValueError
33
+ If the key format is invalid or cannot be parsed.
23
34
  """
24
35
  try:
25
36
  # Remove "store://" from the key
@@ -53,17 +64,25 @@ def parse_entity_key(key: str) -> tuple[str, str, str, str | None, str]:
53
64
 
54
65
  def get_entity_type_from_key(key: str) -> str:
55
66
  """
56
- Get entity type from key.
67
+ Extract the entity type from an entity key.
68
+
69
+ Parses the entity key and returns only the entity type component,
70
+ which indicates the kind of entity (artifact, function, run, etc.).
57
71
 
58
72
  Parameters
59
73
  ----------
60
74
  key : str
61
- The key of the entity.
75
+ The entity key in standardized format.
62
76
 
63
77
  Returns
64
78
  -------
65
79
  str
66
- The entity type.
80
+ The entity type extracted from the key.
81
+
82
+ Raises
83
+ ------
84
+ ValueError
85
+ If the key format is invalid or cannot be parsed.
67
86
  """
68
87
  _, entity_type, _, _, _ = parse_entity_key(key)
69
88
  return entity_type
@@ -71,17 +90,25 @@ def get_entity_type_from_key(key: str) -> str:
71
90
 
72
91
  def get_project_from_key(key: str) -> str:
73
92
  """
74
- Get project from key.
93
+ Extract the project name from an entity key.
94
+
95
+ Parses the entity key and returns only the project component,
96
+ which identifies the project context the entity belongs to.
75
97
 
76
98
  Parameters
77
99
  ----------
78
100
  key : str
79
- The key of the entity.
101
+ The entity key in standardized format.
80
102
 
81
103
  Returns
82
104
  -------
83
105
  str
84
- The project.
106
+ The project name extracted from the key.
107
+
108
+ Raises
109
+ ------
110
+ ValueError
111
+ If the key format is invalid or cannot be parsed.
85
112
  """
86
113
  project, _, _, _, _ = parse_entity_key(key)
87
114
  return project