digitalhub 0.8.0b10__tar.gz → 0.8.0b12__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 (236) hide show
  1. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/PKG-INFO +1 -1
  2. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/dhcore/client.py +39 -11
  3. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/local/client.py +1 -1
  4. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/runtime_entity/builder.py +11 -0
  5. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/_base/builder.py +1 -1
  6. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/crud.py +1 -1
  7. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/_base/builder.py +1 -1
  8. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/crud.py +1 -1
  9. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/_base/builder.py +1 -1
  10. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/crud.py +1 -1
  11. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/_base/builder.py +1 -1
  12. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/crud.py +1 -1
  13. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/_base/entity.py +8 -7
  14. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/_base/builder.py +21 -1
  15. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/crud.py +1 -1
  16. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/_base/builder.py +22 -1
  17. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/_base/builder.py +1 -1
  18. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/crud.py +1 -1
  19. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/io_utils.py +38 -2
  20. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub.egg-info/PKG-INFO +1 -1
  21. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/pyproject.toml +2 -2
  22. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/LICENSE.txt +0 -0
  23. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/README.md +0 -0
  24. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/__init__.py +0 -0
  25. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/__init__.py +0 -0
  26. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/_base/__init__.py +0 -0
  27. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/_base/client.py +0 -0
  28. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/api.py +0 -0
  29. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/builder.py +0 -0
  30. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/dhcore/__init__.py +0 -0
  31. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/dhcore/env.py +0 -0
  32. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/dhcore/models.py +0 -0
  33. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/dhcore/utils.py +0 -0
  34. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/client/local/__init__.py +0 -0
  35. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/context/__init__.py +0 -0
  36. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/context/api.py +0 -0
  37. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/context/builder.py +0 -0
  38. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/context/context.py +0 -0
  39. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/__init__.py +0 -0
  40. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/_base/__init__.py +0 -0
  41. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/_base/datastore.py +0 -0
  42. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/api.py +0 -0
  43. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/builder.py +0 -0
  44. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/local/__init__.py +0 -0
  45. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/local/datastore.py +0 -0
  46. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/remote/__init__.py +0 -0
  47. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/remote/datastore.py +0 -0
  48. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/s3/__init__.py +0 -0
  49. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/s3/datastore.py +0 -0
  50. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/sql/__init__.py +0 -0
  51. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/datastores/sql/datastore.py +0 -0
  52. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/__init__.py +0 -0
  53. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/__init__.py +0 -0
  54. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/_base/__init__.py +0 -0
  55. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/_base/entity.py +0 -0
  56. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/api_utils.py +0 -0
  57. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/context/__init__.py +0 -0
  58. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/context/entity.py +0 -0
  59. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/crud.py +0 -0
  60. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/__init__.py +0 -0
  61. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/_constructors/__init__.py +0 -0
  62. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/_constructors/metadata.py +0 -0
  63. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/_constructors/name.py +0 -0
  64. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/_constructors/spec.py +0 -0
  65. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/_constructors/status.py +0 -0
  66. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/_constructors/uuid.py +0 -0
  67. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/builder.py +0 -0
  68. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/entity.py +0 -0
  69. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/metadata.py +0 -0
  70. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/spec.py +0 -0
  71. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/entity/status.py +0 -0
  72. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/executable/__init__.py +0 -0
  73. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/executable/entity.py +0 -0
  74. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/material/__init__.py +0 -0
  75. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/material/entity.py +0 -0
  76. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/material/spec.py +0 -0
  77. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/material/status.py +0 -0
  78. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/runtime_entity/__init__.py +0 -0
  79. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/unversioned/__init__.py +0 -0
  80. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/unversioned/builder.py +0 -0
  81. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/unversioned/entity.py +0 -0
  82. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/versioned/__init__.py +0 -0
  83. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/versioned/builder.py +0 -0
  84. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/_base/versioned/entity.py +0 -0
  85. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/__init__.py +0 -0
  86. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/_base/__init__.py +0 -0
  87. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/_base/entity.py +0 -0
  88. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/_base/spec.py +0 -0
  89. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/_base/status.py +0 -0
  90. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/artifact/__init__.py +0 -0
  91. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/artifact/builder.py +0 -0
  92. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/artifact/entity.py +0 -0
  93. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/artifact/spec.py +0 -0
  94. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/artifact/artifact/status.py +0 -0
  95. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/builders.py +0 -0
  96. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/__init__.py +0 -0
  97. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/_base/__init__.py +0 -0
  98. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/_base/entity.py +0 -0
  99. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/_base/spec.py +0 -0
  100. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/_base/status.py +0 -0
  101. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/dataitem/__init__.py +0 -0
  102. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/dataitem/builder.py +0 -0
  103. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/dataitem/entity.py +0 -0
  104. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/dataitem/spec.py +0 -0
  105. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/dataitem/status.py +0 -0
  106. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/iceberg/__init__.py +0 -0
  107. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/iceberg/builder.py +0 -0
  108. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/iceberg/entity.py +0 -0
  109. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/iceberg/spec.py +0 -0
  110. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/iceberg/status.py +0 -0
  111. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/table/__init__.py +0 -0
  112. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/table/builder.py +0 -0
  113. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/table/entity.py +0 -0
  114. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/table/models.py +0 -0
  115. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/table/spec.py +0 -0
  116. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/dataitem/table/status.py +0 -0
  117. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/__init__.py +0 -0
  118. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/_base/__init__.py +0 -0
  119. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/_base/entity.py +0 -0
  120. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/_base/models.py +0 -0
  121. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/_base/spec.py +0 -0
  122. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/function/_base/status.py +0 -0
  123. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/__init__.py +0 -0
  124. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/_base/__init__.py +0 -0
  125. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/_base/entity.py +0 -0
  126. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/_base/spec.py +0 -0
  127. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/_base/status.py +0 -0
  128. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/huggingface/__init__.py +0 -0
  129. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/huggingface/builder.py +0 -0
  130. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/huggingface/entity.py +0 -0
  131. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/huggingface/spec.py +0 -0
  132. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/huggingface/status.py +0 -0
  133. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/__init__.py +0 -0
  134. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/builder.py +0 -0
  135. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/entity.py +0 -0
  136. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/models.py +0 -0
  137. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/spec.py +0 -0
  138. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/status.py +0 -0
  139. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/mlflow/utils.py +0 -0
  140. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/model/__init__.py +0 -0
  141. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/model/builder.py +0 -0
  142. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/model/entity.py +0 -0
  143. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/model/spec.py +0 -0
  144. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/model/status.py +0 -0
  145. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/sklearn/__init__.py +0 -0
  146. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/sklearn/builder.py +0 -0
  147. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/sklearn/entity.py +0 -0
  148. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/sklearn/spec.py +0 -0
  149. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/model/sklearn/status.py +0 -0
  150. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/__init__.py +0 -0
  151. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/_base/__init__.py +0 -0
  152. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/_base/builder.py +0 -0
  153. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/_base/spec.py +0 -0
  154. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/_base/status.py +0 -0
  155. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/project/crud.py +0 -0
  156. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/__init__.py +0 -0
  157. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/_base/__init__.py +0 -0
  158. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/_base/entity.py +0 -0
  159. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/_base/spec.py +0 -0
  160. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/_base/status.py +0 -0
  161. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/run/crud.py +0 -0
  162. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/__init__.py +0 -0
  163. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/_base/__init__.py +0 -0
  164. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/_base/builder.py +0 -0
  165. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/_base/entity.py +0 -0
  166. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/_base/spec.py +0 -0
  167. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/secret/_base/status.py +0 -0
  168. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/__init__.py +0 -0
  169. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/_base/__init__.py +0 -0
  170. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/_base/entity.py +0 -0
  171. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/_base/models.py +0 -0
  172. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/_base/spec.py +0 -0
  173. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/_base/status.py +0 -0
  174. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/task/crud.py +0 -0
  175. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/utils/__init__.py +0 -0
  176. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/utils/api.py +0 -0
  177. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/utils/entity_types.py +0 -0
  178. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/utils/state.py +0 -0
  179. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/utils/utils.py +0 -0
  180. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/__init__.py +0 -0
  181. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/_base/__init__.py +0 -0
  182. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/_base/entity.py +0 -0
  183. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/_base/spec.py +0 -0
  184. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/entities/workflow/_base/status.py +0 -0
  185. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/factory/__init__.py +0 -0
  186. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/factory/api.py +0 -0
  187. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/factory/factory.py +0 -0
  188. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/factory/utils.py +0 -0
  189. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/__init__.py +0 -0
  190. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/_base/__init__.py +0 -0
  191. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/_base/builder.py +0 -0
  192. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/_base/reader.py +0 -0
  193. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/api.py +0 -0
  194. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/factory.py +0 -0
  195. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/pandas/__init__.py +0 -0
  196. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/pandas/builder.py +0 -0
  197. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/readers/pandas/reader.py +0 -0
  198. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/runtimes/__init__.py +0 -0
  199. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/runtimes/_base.py +0 -0
  200. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/runtimes/builder.py +0 -0
  201. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/__init__.py +0 -0
  202. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/_base/__init__.py +0 -0
  203. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/_base/store.py +0 -0
  204. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/api.py +0 -0
  205. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/builder.py +0 -0
  206. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/local/__init__.py +0 -0
  207. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/local/store.py +0 -0
  208. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/remote/__init__.py +0 -0
  209. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/remote/store.py +0 -0
  210. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/s3/__init__.py +0 -0
  211. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/s3/store.py +0 -0
  212. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/sql/__init__.py +0 -0
  213. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/stores/sql/store.py +0 -0
  214. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/__init__.py +0 -0
  215. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/data_utils.py +0 -0
  216. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/exceptions.py +0 -0
  217. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/file_utils.py +0 -0
  218. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/generic_utils.py +0 -0
  219. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/git_utils.py +0 -0
  220. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/logger.py +0 -0
  221. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/s3_utils.py +0 -0
  222. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub/utils/uri_utils.py +0 -0
  223. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub.egg-info/SOURCES.txt +0 -0
  224. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub.egg-info/dependency_links.txt +0 -0
  225. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub.egg-info/requires.txt +0 -0
  226. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/digitalhub.egg-info/top_level.txt +0 -0
  227. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/setup.cfg +0 -0
  228. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/local/CRUD/test_artifacts.py +0 -0
  229. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/local/CRUD/test_dataitems.py +0 -0
  230. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/local/CRUD/test_models.py +0 -0
  231. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/local/imports/test_imports.py +0 -0
  232. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/test_crud_functions.py +0 -0
  233. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/test_crud_runs.py +0 -0
  234. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/test_crud_tasks.py +0 -0
  235. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/testkfp.py +0 -0
  236. {digitalhub-0.8.0b10 → digitalhub-0.8.0b12}/test/testkfp_pipeline.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: digitalhub
3
- Version: 0.8.0b10
3
+ Version: 0.8.0b12
4
4
  Summary: Python SDK for Digitalhub
5
5
  Author-email: Fondazione Bruno Kessler <dslab@fbk.eu>, Matteo Martini <mmartini@fbk.eu>
6
6
  License: Apache License
@@ -1,5 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import datetime
4
+ import json
3
5
  import os
4
6
  import typing
5
7
  from urllib.parse import urlparse
@@ -83,7 +85,10 @@ class ClientDHCore(Client):
83
85
  dict
84
86
  Response object.
85
87
  """
86
- kwargs["json"] = obj
88
+ if "headers" not in kwargs:
89
+ kwargs["headers"] = {}
90
+ kwargs["headers"]['Content-Type'] = "application/json"
91
+ kwargs["data"] = json.dumps(obj, default=ClientDHCore._json_serialize)
87
92
  return self._prepare_call("POST", api, **kwargs)
88
93
 
89
94
  def read_object(self, api: str, **kwargs) -> dict:
@@ -122,7 +127,10 @@ class ClientDHCore(Client):
122
127
  dict
123
128
  Response object.
124
129
  """
125
- kwargs["json"] = obj
130
+ if "headers" not in kwargs:
131
+ kwargs["headers"] = {}
132
+ kwargs["headers"]['Content-Type'] = "application/json"
133
+ kwargs["data"] = json.dumps(obj, default=ClientDHCore._json_serialize)
126
134
  return self._prepare_call("PUT", api, **kwargs)
127
135
 
128
136
  def delete_object(self, api: str, **kwargs) -> dict:
@@ -165,7 +173,7 @@ class ClientDHCore(Client):
165
173
  if kwargs is None:
166
174
  kwargs = {}
167
175
 
168
- if kwargs.get("params") is None:
176
+ if "params" not in kwargs:
169
177
  kwargs["params"] = {}
170
178
 
171
179
  start_page = 0
@@ -203,12 +211,31 @@ class ClientDHCore(Client):
203
211
  try:
204
212
  return self.list_objects(api, **kwargs)[0]
205
213
  except IndexError:
206
- raise IndexError("No objects found")
214
+ raise BackendError("No object found.")
207
215
 
208
216
  ##############################
209
217
  # Call methods
210
218
  ##############################
211
219
 
220
+ @staticmethod
221
+ def _json_serialize(obj: dict) -> dict:
222
+ """
223
+ JSON datetime to ISO format serializer.
224
+
225
+ Parameters
226
+ ----------
227
+ obj : dict
228
+ The object to serialize.
229
+
230
+ Returns
231
+ -------
232
+ dict
233
+ The serialized object.
234
+ """
235
+ if isinstance(obj, (datetime.datetime, datetime.date)):
236
+ return obj.isoformat()
237
+ raise TypeError ("Type %s not serializable" % type(obj))
238
+
212
239
  def _prepare_call(self, call_type: str, api: str, **kwargs) -> dict:
213
240
  """
214
241
  Prepare a call to the DHCore API.
@@ -230,12 +257,12 @@ class ClientDHCore(Client):
230
257
  if kwargs is None:
231
258
  kwargs = {}
232
259
  url = self._endpoint_core + api
233
- kwargs = self._set_auth_header(kwargs)
260
+ kwargs = self._set_auth(kwargs)
234
261
  return self._make_call(call_type, url, **kwargs)
235
262
 
236
- def _set_auth_header(self, kwargs: dict) -> dict:
263
+ def _set_auth(self, kwargs: dict) -> dict:
237
264
  """
238
- Set the authentication header.
265
+ Set the authentication type.
239
266
 
240
267
  Parameters
241
268
  ----------
@@ -245,13 +272,14 @@ class ClientDHCore(Client):
245
272
  Returns
246
273
  -------
247
274
  dict
248
- Keyword arguments with the authentication header.
275
+ Keyword arguments with the authentication parameters.
249
276
  """
250
277
  if self._auth_type == "basic":
251
278
  kwargs["auth"] = self._user, self._password
252
279
  elif self._auth_type == "oauth2":
253
- kwargs["headers"] = {"Authorization": f"Bearer {self._access_token}"}
254
-
280
+ if "headers" not in kwargs:
281
+ kwargs["headers"] = {}
282
+ kwargs["headers"]["Authorization"] = f"Bearer {self._access_token}"
255
283
  return kwargs
256
284
 
257
285
  def _make_call(self, call_type: str, url: str, refresh_token: bool = True, **kwargs) -> dict:
@@ -281,7 +309,7 @@ class ClientDHCore(Client):
281
309
  # Handle token refresh
282
310
  if response.status_code in [401] and refresh_token:
283
311
  self._get_new_access_token()
284
- kwargs = self._set_auth_header(kwargs)
312
+ kwargs = self._set_auth(kwargs)
285
313
  return self._make_call(call_type, url, refresh_token=False, **kwargs)
286
314
 
287
315
  self._raise_for_error(response)
@@ -470,7 +470,7 @@ class ClientLocal(Client):
470
470
  copied = deepcopy(entity)
471
471
 
472
472
  # Remove spec if not embedded
473
- if not copied.get("metadata", {}).get("embedded", True):
473
+ if not copied.get("metadata", {}).get("embedded", False):
474
474
  copied.pop("spec", None)
475
475
 
476
476
  # Add to project spec
@@ -93,3 +93,14 @@ class RuntimeEntityBuilder:
93
93
  """
94
94
  task_kinds = [i["kind"] for i in self.TASKS_KINDS]
95
95
  return [self.EXECUTABLE_KIND, self.RUN_KIND, *task_kinds]
96
+
97
+ def get_all_actions(self) -> list[str]:
98
+ """
99
+ Get all actions.
100
+
101
+ Returns
102
+ -------
103
+ list[str]
104
+ All actions.
105
+ """
106
+ return [i["action"] for i in self.TASKS_KINDS]
@@ -25,7 +25,7 @@ class ArtifactBuilder(VersionedBuilder):
25
25
  uuid: str | None = None,
26
26
  description: str | None = None,
27
27
  labels: list[str] | None = None,
28
- embedded: bool = True,
28
+ embedded: bool = False,
29
29
  path: str | None = None,
30
30
  **kwargs,
31
31
  ) -> Artifact:
@@ -29,7 +29,7 @@ def new_artifact(
29
29
  uuid: str | None = None,
30
30
  description: str | None = None,
31
31
  labels: list[str] | None = None,
32
- embedded: bool = True,
32
+ embedded: bool = False,
33
33
  path: str | None = None,
34
34
  **kwargs,
35
35
  ) -> Artifact:
@@ -25,7 +25,7 @@ class DataitemBuilder(VersionedBuilder):
25
25
  uuid: str | None = None,
26
26
  description: str | None = None,
27
27
  labels: list[str] | None = None,
28
- embedded: bool = True,
28
+ embedded: bool = False,
29
29
  path: str | None = None,
30
30
  **kwargs,
31
31
  ) -> Dataitem:
@@ -35,7 +35,7 @@ def new_dataitem(
35
35
  uuid: str | None = None,
36
36
  description: str | None = None,
37
37
  labels: list[str] | None = None,
38
- embedded: bool = True,
38
+ embedded: bool = False,
39
39
  path: str | None = None,
40
40
  **kwargs,
41
41
  ) -> Dataitem:
@@ -25,7 +25,7 @@ class FunctionBuilder(VersionedBuilder, RuntimeEntityBuilder):
25
25
  uuid: str | None = None,
26
26
  description: str | None = None,
27
27
  labels: list[str] | None = None,
28
- embedded: bool = True,
28
+ embedded: bool = False,
29
29
  **kwargs,
30
30
  ) -> Function:
31
31
  """
@@ -25,7 +25,7 @@ def new_function(
25
25
  uuid: str | None = None,
26
26
  description: str | None = None,
27
27
  labels: list[str] | None = None,
28
- embedded: bool = True,
28
+ embedded: bool = False,
29
29
  **kwargs,
30
30
  ) -> Function:
31
31
  """
@@ -25,7 +25,7 @@ class ModelBuilder(VersionedBuilder):
25
25
  uuid: str | None = None,
26
26
  description: str | None = None,
27
27
  labels: list[str] | None = None,
28
- embedded: bool = True,
28
+ embedded: bool = False,
29
29
  path: str | None = None,
30
30
  **kwargs,
31
31
  ) -> Model:
@@ -28,7 +28,7 @@ def new_model(
28
28
  uuid: str | None = None,
29
29
  description: str | None = None,
30
30
  labels: list[str] | None = None,
31
- embedded: bool = True,
31
+ embedded: bool = False,
32
32
  path: str | None = None,
33
33
  **kwargs,
34
34
  ) -> Model:
@@ -229,7 +229,8 @@ class Project(Entity):
229
229
  # Entity types are stored as a list of entities
230
230
  for idx, entity in enumerate(obj.get("spec", {}).get(entity_type, [])):
231
231
  # Export entity if not embedded is in metadata, else do nothing
232
- if not entity["metadata"]["embedded"]:
232
+ embedded = entity["metadata"].get("embedded", False)
233
+ if not embedded:
233
234
  # Get entity object from backend
234
235
  obj_dict: dict = read_entity_api_ctx(entity["key"])
235
236
 
@@ -338,7 +339,7 @@ class Project(Entity):
338
339
  uuid: str | None = None,
339
340
  description: str | None = None,
340
341
  labels: list[str] | None = None,
341
- embedded: bool = True,
342
+ embedded: bool = False,
342
343
  path: str | None = None,
343
344
  **kwargs,
344
345
  ) -> Artifact:
@@ -629,7 +630,7 @@ class Project(Entity):
629
630
  uuid: str | None = None,
630
631
  description: str | None = None,
631
632
  labels: list[str] | None = None,
632
- embedded: bool = True,
633
+ embedded: bool = False,
633
634
  path: str | None = None,
634
635
  **kwargs,
635
636
  ) -> Dataitem:
@@ -933,7 +934,7 @@ class Project(Entity):
933
934
  uuid: str | None = None,
934
935
  description: str | None = None,
935
936
  labels: list[str] | None = None,
936
- embedded: bool = True,
937
+ embedded: bool = False,
937
938
  path: str | None = None,
938
939
  **kwargs,
939
940
  ) -> Model:
@@ -1225,7 +1226,7 @@ class Project(Entity):
1225
1226
  uuid: str | None = None,
1226
1227
  description: str | None = None,
1227
1228
  labels: list[str] | None = None,
1228
- embedded: bool = True,
1229
+ embedded: bool = False,
1229
1230
  **kwargs,
1230
1231
  ) -> Function:
1231
1232
  """
@@ -1471,7 +1472,7 @@ class Project(Entity):
1471
1472
  uuid: str | None = None,
1472
1473
  description: str | None = None,
1473
1474
  labels: list[str] | None = None,
1474
- embedded: bool = True,
1475
+ embedded: bool = False,
1475
1476
  **kwargs,
1476
1477
  ) -> Workflow:
1477
1478
  """
@@ -1716,7 +1717,7 @@ class Project(Entity):
1716
1717
  uuid: str | None = None,
1717
1718
  description: str | None = None,
1718
1719
  labels: list[str] | None = None,
1719
- embedded: bool = True,
1720
+ embedded: bool = False,
1720
1721
  secret_value: str | None = None,
1721
1722
  **kwargs,
1722
1723
  ) -> Secret:
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import typing
4
4
 
5
- from digitalhub.entities._base.runtime_entity.builder import RuntimeEntityBuilder
5
+ from digitalhub.entities._base.runtime_entity.builder import RuntimeEntityBuilder, EntityError
6
6
  from digitalhub.entities._base.unversioned.builder import UnversionedBuilder
7
7
  from digitalhub.entities.utils.entity_types import EntityTypes
8
8
 
@@ -52,6 +52,9 @@ class RunBuilder(UnversionedBuilder, RuntimeEntityBuilder):
52
52
  Run
53
53
  Object instance.
54
54
  """
55
+ if task is None:
56
+ raise EntityError("Missing task in run spec")
57
+ self._check_kind_validity(task)
55
58
  uuid = self.build_uuid(uuid)
56
59
  metadata = self.build_metadata(
57
60
  project=project,
@@ -72,3 +75,20 @@ class RunBuilder(UnversionedBuilder, RuntimeEntityBuilder):
72
75
  spec=spec,
73
76
  status=status,
74
77
  )
78
+
79
+ def _check_kind_validity(self, task: str) -> None:
80
+ """
81
+ Check kind validity.
82
+
83
+ Parameters
84
+ ----------
85
+ task : str
86
+ Task string.
87
+
88
+ Returns
89
+ -------
90
+ None
91
+ """
92
+ task_kind = task.split("://")[0]
93
+ if task_kind not in self.get_all_kinds():
94
+ raise EntityError(f"Invalid run '{self.ENTITY_KIND}' for task kind '{task_kind}'")
@@ -27,7 +27,7 @@ def new_secret(
27
27
  uuid: str | None = None,
28
28
  description: str | None = None,
29
29
  labels: list[str] | None = None,
30
- embedded: bool = True,
30
+ embedded: bool = False,
31
31
  secret_value: str | None = None,
32
32
  **kwargs,
33
33
  ) -> Secret:
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import typing
4
4
 
5
- from digitalhub.entities._base.runtime_entity.builder import RuntimeEntityBuilder
5
+ from digitalhub.entities._base.runtime_entity.builder import RuntimeEntityBuilder, EntityError
6
6
  from digitalhub.entities._base.unversioned.builder import UnversionedBuilder
7
7
  from digitalhub.entities.utils.entity_types import EntityTypes
8
8
 
@@ -49,6 +49,10 @@ class TaskBuilder(UnversionedBuilder, RuntimeEntityBuilder):
49
49
  Task
50
50
  Object instance.
51
51
  """
52
+ if function is None:
53
+ raise EntityError("function must be provided")
54
+
55
+ self._check_kind_validity(function)
52
56
  uuid = self.build_uuid(uuid)
53
57
  metadata = self.build_metadata(
54
58
  project=project,
@@ -68,3 +72,20 @@ class TaskBuilder(UnversionedBuilder, RuntimeEntityBuilder):
68
72
  spec=spec,
69
73
  status=status,
70
74
  )
75
+
76
+ def _check_kind_validity(self, function: str) -> None:
77
+ """
78
+ Check kind validity.
79
+
80
+ Parameters
81
+ ----------
82
+ function : str
83
+ Function string.
84
+
85
+ Returns
86
+ -------
87
+ None
88
+ """
89
+ function_kind = function.split("://")[0]
90
+ if self.EXECUTABLE_KIND != function_kind:
91
+ raise EntityError(f"Invalid task '{self.ENTITY_KIND}' for function kind '{function_kind}'")
@@ -25,7 +25,7 @@ class WorkflowBuilder(VersionedBuilder, RuntimeEntityBuilder):
25
25
  uuid: str | None = None,
26
26
  description: str | None = None,
27
27
  labels: list[str] | None = None,
28
- embedded: bool = True,
28
+ embedded: bool = False,
29
29
  **kwargs,
30
30
  ) -> Workflow:
31
31
  """
@@ -26,7 +26,7 @@ def new_workflow(
26
26
  uuid: str | None = None,
27
27
  description: str | None = None,
28
28
  labels: list[str] | None = None,
29
- embedded: bool = True,
29
+ embedded: bool = False,
30
30
  **kwargs,
31
31
  ) -> Workflow:
32
32
  """
@@ -37,6 +37,42 @@ def write_yaml(filepath: str | Path, obj: dict | list[dict]) -> None:
37
37
  ##############################
38
38
 
39
39
 
40
+
41
+ class NoDatesSafeLoader(yaml.SafeLoader):
42
+ """
43
+ Loader implementation to exclude implicit resolvers.
44
+
45
+ Taken from https://stackoverflow.com/a/37958106
46
+ """
47
+
48
+ @classmethod
49
+ def remove_implicit_resolver(cls, tag_to_remove: str) -> None:
50
+ """
51
+ Remove implicit resolvers for a particular tag
52
+ Takes care not to modify resolvers in super classes.
53
+ We want to load datetimes as strings, not dates, because we
54
+ go on to serialise as json which doesn't have the advanced types
55
+ of yaml, and leads to incompatibilities down the track.
56
+
57
+ Parameters
58
+ ----------
59
+ tag_to_remove : str
60
+ The tag to remove
61
+
62
+ Returns
63
+ -------
64
+ None
65
+ """
66
+ if not 'yaml_implicit_resolvers' in cls.__dict__:
67
+ cls.yaml_implicit_resolvers = cls.yaml_implicit_resolvers.copy()
68
+
69
+ for first_letter, mappings in cls.yaml_implicit_resolvers.items():
70
+ cls.yaml_implicit_resolvers[first_letter] = [(tag, regexp)
71
+ for tag, regexp in mappings
72
+ if tag != tag_to_remove]
73
+
74
+ NoDatesSafeLoader.remove_implicit_resolver('tag:yaml.org,2002:timestamp')
75
+
40
76
  def read_yaml(filepath: str | Path) -> dict | list[dict]:
41
77
  """
42
78
  Read a yaml file and return a dict or a list of dict.
@@ -53,12 +89,12 @@ def read_yaml(filepath: str | Path) -> dict | list[dict]:
53
89
  """
54
90
  try:
55
91
  with open(filepath, "r", encoding="utf-8") as in_file:
56
- data = yaml.load(in_file, Loader=yaml.SafeLoader)
92
+ data = yaml.load(in_file, Loader=NoDatesSafeLoader)
57
93
 
58
94
  # If yaml contains multiple documents
59
95
  except yaml.composer.ComposerError:
60
96
  with open(filepath, "r", encoding="utf-8") as in_file:
61
- data = list(yaml.load_all(in_file, Loader=yaml.SafeLoader))
97
+ data = list(yaml.load_all(in_file, Loader=NoDatesSafeLoader))
62
98
  return data
63
99
 
64
100
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: digitalhub
3
- Version: 0.8.0b10
3
+ Version: 0.8.0b12
4
4
  Summary: Python SDK for Digitalhub
5
5
  Author-email: Fondazione Bruno Kessler <dslab@fbk.eu>, Matteo Martini <mmartini@fbk.eu>
6
6
  License: Apache License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "digitalhub"
7
- version = "0.8.0b10"
7
+ version = "0.8.0b12"
8
8
  description = "Python SDK for Digitalhub"
9
9
  readme = "README.md"
10
10
  authors = [
@@ -77,7 +77,7 @@ line-length = 120
77
77
  convention = "numpy"
78
78
 
79
79
  [tool.bumpver]
80
- current_version = "0.8.0b10"
80
+ current_version = "0.8.0b12"
81
81
  version_pattern = "MAJOR.MINOR.PATCH[PYTAGNUM]"
82
82
  commit_message = "Bump version {old_version} -> {new_version}"
83
83
  commit = false
File without changes
File without changes