datachain 0.37.3__tar.gz → 0.37.5__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 datachain might be problematic. Click here for more details.

Files changed (447) hide show
  1. {datachain-0.37.3 → datachain-0.37.5}/.pre-commit-config.yaml +1 -1
  2. {datachain-0.37.3 → datachain-0.37.5}/PKG-INFO +1 -1
  3. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/checkpoints.md +15 -7
  4. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/dataset.py +4 -9
  5. {datachain-0.37.3 → datachain-0.37.5}/src/datachain.egg-info/PKG-INFO +1 -1
  6. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_datachain.py +6 -0
  7. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_union.py +27 -0
  8. {datachain-0.37.3 → datachain-0.37.5}/.cruft.json +0 -0
  9. {datachain-0.37.3 → datachain-0.37.5}/.gitattributes +0 -0
  10. {datachain-0.37.3 → datachain-0.37.5}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  11. {datachain-0.37.3 → datachain-0.37.5}/.github/ISSUE_TEMPLATE/empty_issue.md +0 -0
  12. {datachain-0.37.3 → datachain-0.37.5}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  13. {datachain-0.37.3 → datachain-0.37.5}/.github/codecov.yaml +0 -0
  14. {datachain-0.37.3 → datachain-0.37.5}/.github/dependabot.yml +0 -0
  15. {datachain-0.37.3 → datachain-0.37.5}/.github/workflows/benchmarks.yml +0 -0
  16. {datachain-0.37.3 → datachain-0.37.5}/.github/workflows/release.yml +0 -0
  17. {datachain-0.37.3 → datachain-0.37.5}/.github/workflows/tests-studio.yml +0 -0
  18. {datachain-0.37.3 → datachain-0.37.5}/.github/workflows/tests.yml +0 -0
  19. {datachain-0.37.3 → datachain-0.37.5}/.github/workflows/update-template.yaml +0 -0
  20. {datachain-0.37.3 → datachain-0.37.5}/.gitignore +0 -0
  21. {datachain-0.37.3 → datachain-0.37.5}/CODE_OF_CONDUCT.rst +0 -0
  22. {datachain-0.37.3 → datachain-0.37.5}/LICENSE +0 -0
  23. {datachain-0.37.3 → datachain-0.37.5}/README.rst +0 -0
  24. {datachain-0.37.3 → datachain-0.37.5}/docs/api_hooks.py +0 -0
  25. {datachain-0.37.3 → datachain-0.37.5}/docs/assets/captioned_cartoons.png +0 -0
  26. {datachain-0.37.3 → datachain-0.37.5}/docs/assets/datachain-white.svg +0 -0
  27. {datachain-0.37.3 → datachain-0.37.5}/docs/assets/datachain.svg +0 -0
  28. {datachain-0.37.3 → datachain-0.37.5}/docs/assets/webhook_dialog.png +0 -0
  29. {datachain-0.37.3 → datachain-0.37.5}/docs/assets/webhook_list.png +0 -0
  30. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/auth/login.md +0 -0
  31. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/auth/logout.md +0 -0
  32. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/auth/team.md +0 -0
  33. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/auth/token.md +0 -0
  34. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/index.md +0 -0
  35. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/job/cancel.md +0 -0
  36. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/job/clusters.md +0 -0
  37. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/job/logs.md +0 -0
  38. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/job/ls.md +0 -0
  39. {datachain-0.37.3 → datachain-0.37.5}/docs/commands/job/run.md +0 -0
  40. {datachain-0.37.3 → datachain-0.37.5}/docs/contributing.md +0 -0
  41. {datachain-0.37.3 → datachain-0.37.5}/docs/css/github-permalink-style.css +0 -0
  42. {datachain-0.37.3 → datachain-0.37.5}/docs/examples.md +0 -0
  43. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/db_migrations.md +0 -0
  44. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/delta.md +0 -0
  45. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/env.md +0 -0
  46. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/index.md +0 -0
  47. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/namespaces.md +0 -0
  48. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/processing.md +0 -0
  49. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/remotes.md +0 -0
  50. {datachain-0.37.3 → datachain-0.37.5}/docs/guide/retry.md +0 -0
  51. {datachain-0.37.3 → datachain-0.37.5}/docs/index.md +0 -0
  52. {datachain-0.37.3 → datachain-0.37.5}/docs/overrides/main.html +0 -0
  53. {datachain-0.37.3 → datachain-0.37.5}/docs/quick-start.md +0 -0
  54. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/arrowrow.md +0 -0
  55. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/bbox.md +0 -0
  56. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/file.md +0 -0
  57. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/imagefile.md +0 -0
  58. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/index.md +0 -0
  59. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/pose.md +0 -0
  60. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/segment.md +0 -0
  61. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/tarvfile.md +0 -0
  62. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/textfile.md +0 -0
  63. {datachain-0.37.3 → datachain-0.37.5}/docs/references/data-types/videofile.md +0 -0
  64. {datachain-0.37.3 → datachain-0.37.5}/docs/references/datachain.md +0 -0
  65. {datachain-0.37.3 → datachain-0.37.5}/docs/references/func.md +0 -0
  66. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/aggregate.md +0 -0
  67. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/array.md +0 -0
  68. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/conditional.md +0 -0
  69. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/numeric.md +0 -0
  70. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/path.md +0 -0
  71. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/random.md +0 -0
  72. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/string.md +0 -0
  73. {datachain-0.37.3 → datachain-0.37.5}/docs/references/functions/window.md +0 -0
  74. {datachain-0.37.3 → datachain-0.37.5}/docs/references/index.md +0 -0
  75. {datachain-0.37.3 → datachain-0.37.5}/docs/references/toolkit.md +0 -0
  76. {datachain-0.37.3 → datachain-0.37.5}/docs/references/torch.md +0 -0
  77. {datachain-0.37.3 → datachain-0.37.5}/docs/references/udf.md +0 -0
  78. {datachain-0.37.3 → datachain-0.37.5}/docs/studio/api/.gitkeep +0 -0
  79. {datachain-0.37.3 → datachain-0.37.5}/docs/studio/webhooks.md +0 -0
  80. {datachain-0.37.3 → datachain-0.37.5}/docs/templates/main.dot +0 -0
  81. {datachain-0.37.3 → datachain-0.37.5}/docs/templates/operation.dot +0 -0
  82. {datachain-0.37.3 → datachain-0.37.5}/docs/templates/responses.def +0 -0
  83. {datachain-0.37.3 → datachain-0.37.5}/docs/tutorials.md +0 -0
  84. {datachain-0.37.3 → datachain-0.37.5}/examples/computer_vision/iptc_exif_xmp_lib.py +0 -0
  85. {datachain-0.37.3 → datachain-0.37.5}/examples/computer_vision/llava2_image_desc_lib.py +0 -0
  86. {datachain-0.37.3 → datachain-0.37.5}/examples/computer_vision/openimage-detect.py +0 -0
  87. {datachain-0.37.3 → datachain-0.37.5}/examples/computer_vision/ultralytics-bbox.py +0 -0
  88. {datachain-0.37.3 → datachain-0.37.5}/examples/computer_vision/ultralytics-pose.py +0 -0
  89. {datachain-0.37.3 → datachain-0.37.5}/examples/computer_vision/ultralytics-segment.py +0 -0
  90. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/common_sql_functions.py +0 -0
  91. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/json-csv-reader.py +0 -0
  92. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/nested_datamodel.py +0 -0
  93. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/torch-loader.py +0 -0
  94. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/udfs/parallel.py +0 -0
  95. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/udfs/simple.py +0 -0
  96. {datachain-0.37.3 → datachain-0.37.5}/examples/get_started/udfs/stateful.py +0 -0
  97. {datachain-0.37.3 → datachain-0.37.5}/examples/incremental_processing/delta.py +0 -0
  98. {datachain-0.37.3 → datachain-0.37.5}/examples/incremental_processing/retry.py +0 -0
  99. {datachain-0.37.3 → datachain-0.37.5}/examples/incremental_processing/utils.py +0 -0
  100. {datachain-0.37.3 → datachain-0.37.5}/examples/llm_and_nlp/claude-query.py +0 -0
  101. {datachain-0.37.3 → datachain-0.37.5}/examples/llm_and_nlp/hf-dataset-llm-eval.py +0 -0
  102. {datachain-0.37.3 → datachain-0.37.5}/examples/multimodal/audio-to-text.py +0 -0
  103. {datachain-0.37.3 → datachain-0.37.5}/examples/multimodal/clip_inference.py +0 -0
  104. {datachain-0.37.3 → datachain-0.37.5}/examples/multimodal/hf_pipeline.py +0 -0
  105. {datachain-0.37.3 → datachain-0.37.5}/examples/multimodal/openai_image_desc_lib.py +0 -0
  106. {datachain-0.37.3 → datachain-0.37.5}/examples/multimodal/wds.py +0 -0
  107. {datachain-0.37.3 → datachain-0.37.5}/examples/multimodal/wds_filtered.py +0 -0
  108. {datachain-0.37.3 → datachain-0.37.5}/mkdocs.yml +0 -0
  109. {datachain-0.37.3 → datachain-0.37.5}/noxfile.py +0 -0
  110. {datachain-0.37.3 → datachain-0.37.5}/pyproject.toml +0 -0
  111. {datachain-0.37.3 → datachain-0.37.5}/setup.cfg +0 -0
  112. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/__init__.py +0 -0
  113. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/__main__.py +0 -0
  114. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/asyn.py +0 -0
  115. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cache.py +0 -0
  116. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/catalog/__init__.py +0 -0
  117. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/catalog/catalog.py +0 -0
  118. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/catalog/datasource.py +0 -0
  119. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/catalog/dependency.py +0 -0
  120. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/catalog/loader.py +0 -0
  121. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/checkpoint.py +0 -0
  122. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/__init__.py +0 -0
  123. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/__init__.py +0 -0
  124. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/datasets.py +0 -0
  125. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/du.py +0 -0
  126. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/index.py +0 -0
  127. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/ls.py +0 -0
  128. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/misc.py +0 -0
  129. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/query.py +0 -0
  130. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/commands/show.py +0 -0
  131. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/parser/__init__.py +0 -0
  132. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/parser/job.py +0 -0
  133. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/parser/studio.py +0 -0
  134. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/parser/utils.py +0 -0
  135. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/cli/utils.py +0 -0
  136. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/__init__.py +0 -0
  137. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/azure.py +0 -0
  138. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/fileslice.py +0 -0
  139. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/fsspec.py +0 -0
  140. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/gcs.py +0 -0
  141. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/hf.py +0 -0
  142. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/http.py +0 -0
  143. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/local.py +0 -0
  144. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/client/s3.py +0 -0
  145. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/config.py +0 -0
  146. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/__init__.py +0 -0
  147. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/db_engine.py +0 -0
  148. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/job.py +0 -0
  149. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/metastore.py +0 -0
  150. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/schema.py +0 -0
  151. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/serializer.py +0 -0
  152. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/sqlite.py +0 -0
  153. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/data_storage/warehouse.py +0 -0
  154. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/dataset.py +0 -0
  155. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/delta.py +0 -0
  156. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/diff/__init__.py +0 -0
  157. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/error.py +0 -0
  158. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/fs/__init__.py +0 -0
  159. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/fs/reference.py +0 -0
  160. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/fs/utils.py +0 -0
  161. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/__init__.py +0 -0
  162. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/aggregate.py +0 -0
  163. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/array.py +0 -0
  164. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/base.py +0 -0
  165. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/conditional.py +0 -0
  166. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/func.py +0 -0
  167. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/numeric.py +0 -0
  168. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/path.py +0 -0
  169. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/random.py +0 -0
  170. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/string.py +0 -0
  171. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/func/window.py +0 -0
  172. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/hash_utils.py +0 -0
  173. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/job.py +0 -0
  174. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/__init__.py +0 -0
  175. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/arrow.py +0 -0
  176. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/audio.py +0 -0
  177. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/clip.py +0 -0
  178. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/convert/__init__.py +0 -0
  179. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/convert/flatten.py +0 -0
  180. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/convert/python_to_sql.py +0 -0
  181. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/convert/sql_to_python.py +0 -0
  182. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/convert/unflatten.py +0 -0
  183. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/convert/values_to_tuples.py +0 -0
  184. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/data_model.py +0 -0
  185. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dataset_info.py +0 -0
  186. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/__init__.py +0 -0
  187. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/csv.py +0 -0
  188. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/database.py +0 -0
  189. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/datachain.py +0 -0
  190. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/datasets.py +0 -0
  191. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/hf.py +0 -0
  192. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/json.py +0 -0
  193. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/listings.py +0 -0
  194. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/pandas.py +0 -0
  195. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/parquet.py +0 -0
  196. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/records.py +0 -0
  197. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/storage.py +0 -0
  198. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/storage_pattern.py +0 -0
  199. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/utils.py +0 -0
  200. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/dc/values.py +0 -0
  201. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/file.py +0 -0
  202. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/hf.py +0 -0
  203. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/image.py +0 -0
  204. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/listing.py +0 -0
  205. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/listing_info.py +0 -0
  206. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/meta_formats.py +0 -0
  207. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/model_store.py +0 -0
  208. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/namespaces.py +0 -0
  209. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/projects.py +0 -0
  210. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/pytorch.py +0 -0
  211. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/settings.py +0 -0
  212. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/signal_schema.py +0 -0
  213. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/tar.py +0 -0
  214. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/text.py +0 -0
  215. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/udf.py +0 -0
  216. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/udf_signature.py +0 -0
  217. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/utils.py +0 -0
  218. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/video.py +0 -0
  219. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/webdataset.py +0 -0
  220. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/lib/webdataset_laion.py +0 -0
  221. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/listing.py +0 -0
  222. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/__init__.py +0 -0
  223. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/bbox.py +0 -0
  224. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/pose.py +0 -0
  225. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/segment.py +0 -0
  226. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/ultralytics/__init__.py +0 -0
  227. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/ultralytics/bbox.py +0 -0
  228. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/ultralytics/pose.py +0 -0
  229. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/ultralytics/segment.py +0 -0
  230. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/model/utils.py +0 -0
  231. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/namespace.py +0 -0
  232. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/node.py +0 -0
  233. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/nodes_fetcher.py +0 -0
  234. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/nodes_thread_pool.py +0 -0
  235. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/plugins.py +0 -0
  236. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/progress.py +0 -0
  237. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/project.py +0 -0
  238. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/py.typed +0 -0
  239. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/__init__.py +0 -0
  240. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/batch.py +0 -0
  241. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/dispatch.py +0 -0
  242. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/metrics.py +0 -0
  243. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/params.py +0 -0
  244. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/queue.py +0 -0
  245. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/schema.py +0 -0
  246. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/session.py +0 -0
  247. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/query/udf.py +0 -0
  248. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/remote/__init__.py +0 -0
  249. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/remote/studio.py +0 -0
  250. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/script_meta.py +0 -0
  251. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/semver.py +0 -0
  252. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/__init__.py +0 -0
  253. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/default/__init__.py +0 -0
  254. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/default/base.py +0 -0
  255. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/__init__.py +0 -0
  256. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/aggregate.py +0 -0
  257. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/array.py +0 -0
  258. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/conditional.py +0 -0
  259. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/numeric.py +0 -0
  260. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/path.py +0 -0
  261. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/random.py +0 -0
  262. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/functions/string.py +0 -0
  263. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/postgresql_dialect.py +0 -0
  264. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/postgresql_types.py +0 -0
  265. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/selectable.py +0 -0
  266. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/sqlite/__init__.py +0 -0
  267. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/sqlite/base.py +0 -0
  268. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/sqlite/types.py +0 -0
  269. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/sqlite/vector.py +0 -0
  270. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/types.py +0 -0
  271. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/sql/utils.py +0 -0
  272. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/studio.py +0 -0
  273. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/telemetry.py +0 -0
  274. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/toolkit/__init__.py +0 -0
  275. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/toolkit/split.py +0 -0
  276. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/torch/__init__.py +0 -0
  277. {datachain-0.37.3 → datachain-0.37.5}/src/datachain/utils.py +0 -0
  278. {datachain-0.37.3 → datachain-0.37.5}/src/datachain.egg-info/SOURCES.txt +0 -0
  279. {datachain-0.37.3 → datachain-0.37.5}/src/datachain.egg-info/dependency_links.txt +0 -0
  280. {datachain-0.37.3 → datachain-0.37.5}/src/datachain.egg-info/entry_points.txt +0 -0
  281. {datachain-0.37.3 → datachain-0.37.5}/src/datachain.egg-info/requires.txt +0 -0
  282. {datachain-0.37.3 → datachain-0.37.5}/src/datachain.egg-info/top_level.txt +0 -0
  283. {datachain-0.37.3 → datachain-0.37.5}/tests/__init__.py +0 -0
  284. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/__init__.py +0 -0
  285. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/conftest.py +0 -0
  286. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/datasets/.dvc/.gitignore +0 -0
  287. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/datasets/.dvc/config +0 -0
  288. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/datasets/.gitignore +0 -0
  289. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/datasets/laion-tiny.npz.dvc +0 -0
  290. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/test_datachain.py +0 -0
  291. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/test_ls.py +0 -0
  292. {datachain-0.37.3 → datachain-0.37.5}/tests/benchmarks/test_version.py +0 -0
  293. {datachain-0.37.3 → datachain-0.37.5}/tests/conftest.py +0 -0
  294. {datachain-0.37.3 → datachain-0.37.5}/tests/data.py +0 -0
  295. {datachain-0.37.3 → datachain-0.37.5}/tests/examples/__init__.py +0 -0
  296. {datachain-0.37.3 → datachain-0.37.5}/tests/examples/test_examples.py +0 -0
  297. {datachain-0.37.3 → datachain-0.37.5}/tests/examples/test_wds_e2e.py +0 -0
  298. {datachain-0.37.3 → datachain-0.37.5}/tests/examples/wds_data.py +0 -0
  299. {datachain-0.37.3 → datachain-0.37.5}/tests/func/__init__.py +0 -0
  300. {datachain-0.37.3 → datachain-0.37.5}/tests/func/data/Big_Buck_Bunny_360_10s_1MB.mp4 +0 -0
  301. {datachain-0.37.3 → datachain-0.37.5}/tests/func/data/lena.jpg +0 -0
  302. {datachain-0.37.3 → datachain-0.37.5}/tests/func/fake-service-account-credentials.json +0 -0
  303. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/__init__.py +0 -0
  304. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_aggregate.py +0 -0
  305. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_array.py +0 -0
  306. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_conditional.py +0 -0
  307. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_numeric.py +0 -0
  308. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_path.py +0 -0
  309. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_random.py +0 -0
  310. {datachain-0.37.3 → datachain-0.37.5}/tests/func/functions/test_string.py +0 -0
  311. {datachain-0.37.3 → datachain-0.37.5}/tests/func/model/__init__.py +0 -0
  312. {datachain-0.37.3 → datachain-0.37.5}/tests/func/model/data/running-mask0.png +0 -0
  313. {datachain-0.37.3 → datachain-0.37.5}/tests/func/model/data/running-mask1.png +0 -0
  314. {datachain-0.37.3 → datachain-0.37.5}/tests/func/model/data/running.jpg +0 -0
  315. {datachain-0.37.3 → datachain-0.37.5}/tests/func/model/data/ships.jpg +0 -0
  316. {datachain-0.37.3 → datachain-0.37.5}/tests/func/model/test_yolo.py +0 -0
  317. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_audio.py +0 -0
  318. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_catalog.py +0 -0
  319. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_checkpoints.py +0 -0
  320. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_client.py +0 -0
  321. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_cloud_transfer.py +0 -0
  322. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_data_storage.py +0 -0
  323. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_datachain_merge.py +0 -0
  324. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_dataset_query.py +0 -0
  325. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_datasets.py +0 -0
  326. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_delta.py +0 -0
  327. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_feature_pickling.py +0 -0
  328. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_file.py +0 -0
  329. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_hf.py +0 -0
  330. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_hidden_field.py +0 -0
  331. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_image.py +0 -0
  332. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_listing.py +0 -0
  333. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_ls.py +0 -0
  334. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_meta_formats.py +0 -0
  335. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_metastore.py +0 -0
  336. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_metrics.py +0 -0
  337. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_mutate.py +0 -0
  338. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_pull.py +0 -0
  339. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_pytorch.py +0 -0
  340. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_query.py +0 -0
  341. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_read_database.py +0 -0
  342. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_read_dataset_remote.py +0 -0
  343. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_read_dataset_version_specifiers.py +0 -0
  344. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_retry.py +0 -0
  345. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_session.py +0 -0
  346. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_storage_pattern.py +0 -0
  347. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_studio_datetime_parsing.py +0 -0
  348. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_temp_table_tracking.py +0 -0
  349. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_to_database.py +0 -0
  350. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_toolkit.py +0 -0
  351. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_udf.py +0 -0
  352. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_video.py +0 -0
  353. {datachain-0.37.3 → datachain-0.37.5}/tests/func/test_warehouse.py +0 -0
  354. {datachain-0.37.3 → datachain-0.37.5}/tests/scripts/feature_class.py +0 -0
  355. {datachain-0.37.3 → datachain-0.37.5}/tests/scripts/feature_class_exception.py +0 -0
  356. {datachain-0.37.3 → datachain-0.37.5}/tests/scripts/feature_class_parallel.py +0 -0
  357. {datachain-0.37.3 → datachain-0.37.5}/tests/scripts/feature_class_parallel_data_model.py +0 -0
  358. {datachain-0.37.3 → datachain-0.37.5}/tests/scripts/name_len_slow.py +0 -0
  359. {datachain-0.37.3 → datachain-0.37.5}/tests/test_atomicity.py +0 -0
  360. {datachain-0.37.3 → datachain-0.37.5}/tests/test_cli_e2e.py +0 -0
  361. {datachain-0.37.3 → datachain-0.37.5}/tests/test_cli_studio.py +0 -0
  362. {datachain-0.37.3 → datachain-0.37.5}/tests/test_import_time.py +0 -0
  363. {datachain-0.37.3 → datachain-0.37.5}/tests/test_job_management_e2e.py +0 -0
  364. {datachain-0.37.3 → datachain-0.37.5}/tests/test_query_e2e.py +0 -0
  365. {datachain-0.37.3 → datachain-0.37.5}/tests/test_telemetry.py +0 -0
  366. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/__init__.py +0 -0
  367. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/__init__.py +0 -0
  368. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/conftest.py +0 -0
  369. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_arrow.py +0 -0
  370. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_audio.py +0 -0
  371. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_checkpoints.py +0 -0
  372. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_clip.py +0 -0
  373. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_datachain.py +0 -0
  374. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_datachain_bootstrap.py +0 -0
  375. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_datachain_merge.py +0 -0
  376. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_diff.py +0 -0
  377. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_feature.py +0 -0
  378. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_feature_utils.py +0 -0
  379. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_file.py +0 -0
  380. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_hf.py +0 -0
  381. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_image.py +0 -0
  382. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_listing_info.py +0 -0
  383. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_namespace.py +0 -0
  384. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_partition_by.py +0 -0
  385. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_project.py +0 -0
  386. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_python_to_sql.py +0 -0
  387. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_schema.py +0 -0
  388. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_settings.py +0 -0
  389. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_signal_schema.py +0 -0
  390. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_sql_to_python.py +0 -0
  391. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_storage_pattern.py +0 -0
  392. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_text.py +0 -0
  393. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_udf.py +0 -0
  394. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_udf_signature.py +0 -0
  395. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_utils.py +0 -0
  396. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/lib/test_webdataset.py +0 -0
  397. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/model/__init__.py +0 -0
  398. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/model/test_bbox.py +0 -0
  399. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/model/test_pose.py +0 -0
  400. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/model/test_segment.py +0 -0
  401. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/model/test_utils.py +0 -0
  402. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/__init__.py +0 -0
  403. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/sqlite/__init__.py +0 -0
  404. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/sqlite/test_types.py +0 -0
  405. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/sqlite/test_utils.py +0 -0
  406. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/test_array.py +0 -0
  407. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/test_conditional.py +0 -0
  408. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/test_path.py +0 -0
  409. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/test_random.py +0 -0
  410. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/test_selectable.py +0 -0
  411. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/sql/test_string.py +0 -0
  412. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_asyn.py +0 -0
  413. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_batching.py +0 -0
  414. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_cache.py +0 -0
  415. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_catalog.py +0 -0
  416. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_catalog_loader.py +0 -0
  417. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_cli_datasets.py +0 -0
  418. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_cli_parsing.py +0 -0
  419. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_client.py +0 -0
  420. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_client_gcs.py +0 -0
  421. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_client_http.py +0 -0
  422. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_client_s3.py +0 -0
  423. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_config.py +0 -0
  424. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_data_storage.py +0 -0
  425. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_database_engine.py +0 -0
  426. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_datachain_hash.py +0 -0
  427. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_dataset.py +0 -0
  428. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_dispatch.py +0 -0
  429. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_fileslice.py +0 -0
  430. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_func.py +0 -0
  431. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_hash_utils.py +0 -0
  432. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_job_management.py +0 -0
  433. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_listing.py +0 -0
  434. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_metastore.py +0 -0
  435. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_module_exports.py +0 -0
  436. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_pytorch.py +0 -0
  437. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_query.py +0 -0
  438. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_query_metrics.py +0 -0
  439. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_query_params.py +0 -0
  440. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_query_steps_hash.py +0 -0
  441. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_script_meta.py +0 -0
  442. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_semver.py +0 -0
  443. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_serializer.py +0 -0
  444. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_session.py +0 -0
  445. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_utils.py +0 -0
  446. {datachain-0.37.3 → datachain-0.37.5}/tests/unit/test_warehouse.py +0 -0
  447. {datachain-0.37.3 → datachain-0.37.5}/tests/utils.py +0 -0
@@ -24,7 +24,7 @@ repos:
24
24
  - id: trailing-whitespace
25
25
  exclude: '^LICENSES/'
26
26
  - repo: https://github.com/astral-sh/ruff-pre-commit
27
- rev: 'v0.14.1'
27
+ rev: 'v0.14.2'
28
28
  hooks:
29
29
  - id: ruff
30
30
  args: [--fix, --exit-non-zero-on-fix]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: datachain
3
- Version: 0.37.3
3
+ Version: 0.37.5
4
4
  Summary: Wrangle unstructured AI data at scale
5
5
  Author-email: Dmitry Petrov <support@dvc.org>
6
6
  License-Expression: Apache-2.0
@@ -2,10 +2,12 @@
2
2
 
3
3
  Checkpoints allow DataChain to automatically skip re-creating datasets that were successfully saved in previous script runs. When a script fails or is interrupted, you can re-run it and DataChain will resume from where it left off, reusing datasets that were already created.
4
4
 
5
- **Note:** Checkpoints are currently available only for local script runs. Support for Studio is planned for future releases.
5
+ Checkpoints are available for both local script runs and Studio executions.
6
6
 
7
7
  ## How Checkpoints Work
8
8
 
9
+ ### Local Script Runs
10
+
9
11
  When you run a Python script locally (e.g., `python my_script.py`), DataChain automatically:
10
12
 
11
13
  1. **Creates a job** for the script execution, using the script's absolute path as the job name
@@ -16,6 +18,18 @@ When you run a Python script locally (e.g., `python my_script.py`), DataChain au
16
18
 
17
19
  This means that if your script creates multiple datasets and fails partway through, the next run will skip recreating the datasets that were already successfully saved.
18
20
 
21
+ ### Studio Runs
22
+
23
+ When running jobs on Studio, the checkpoint workflow is managed through the UI:
24
+
25
+ 1. **Job execution** is triggered using the Run button in the Studio interface
26
+ 2. **Checkpoint control** is explicit - you choose between:
27
+ - **Run from scratch**: Ignores any existing checkpoints and recreates all datasets
28
+ - **Continue from last checkpoint**: Resumes from the last successful checkpoint, skipping already-completed stages
29
+ 3. **Parent-child job linking** is handled automatically by the system - no need for script path matching or job name conventions
30
+ 4. **Checkpoint behavior** during execution is the same as local runs: datasets are saved at each `.save()` call and can be reused on retry
31
+
32
+
19
33
  ## Example
20
34
 
21
35
  Consider this script that processes data in multiple stages:
@@ -66,7 +80,6 @@ Checkpoints are **not** used when:
66
80
  - Running code interactively (Python REPL, Jupyter notebooks)
67
81
  - Running code as a module (e.g., `python -m mymodule`)
68
82
  - The `DATACHAIN_CHECKPOINTS_RESET` environment variable is set (see below)
69
- - Running on Studio (checkpoints support planned for future releases)
70
83
 
71
84
  ## Resetting Checkpoints
72
85
 
@@ -176,17 +189,12 @@ for ds in dc.datasets():
176
189
 
177
190
  ## Limitations
178
191
 
179
- - **Local only:** Checkpoints currently work only for local script runs. Studio support is planned.
180
192
  - **Script-based:** Code must be run as a script (not interactively or as a module).
181
193
  - **Hash-based matching:** Any change to the chain will create a different hash, preventing checkpoint reuse.
182
194
  - **Same script path:** The script must be run from the same absolute path for parent job linking to work.
183
195
 
184
196
  ## Future Plans
185
197
 
186
- ### Studio Support
187
-
188
- Support for checkpoints on Studio is planned for future releases, which will enable checkpoint functionality for collaborative workflows and cloud-based data processing.
189
-
190
198
  ### UDF-Level Checkpoints
191
199
 
192
200
  Currently, checkpoints are created only when datasets are saved using `.save()`. This means that if a script fails during a long-running UDF operation (like `.map()`, `.gen()`, or `.agg()`), the entire UDF computation must be rerun on the next execution.
@@ -426,8 +426,10 @@ class UDFStep(Step, ABC):
426
426
  """Method that creates a table where temp udf results will be saved"""
427
427
 
428
428
  def process_input_query(self, query: Select) -> tuple[Select, list["Table"]]:
429
- """Apply any necessary processing to the input query"""
430
- return query, []
429
+ """Materialize inputs, ensure sys columns are available, needed for checkpoints,
430
+ needed for map to work (merge results)"""
431
+ table = self.catalog.warehouse.create_pre_udf_table(query)
432
+ return sqlalchemy.select(*table.c), [table]
431
433
 
432
434
  @abstractmethod
433
435
  def create_result_query(
@@ -675,13 +677,6 @@ class UDFSignal(UDFStep):
675
677
 
676
678
  return self.catalog.warehouse.create_udf_table(udf_output_columns)
677
679
 
678
- def process_input_query(self, query: Select) -> tuple[Select, list["Table"]]:
679
- if os.getenv("DATACHAIN_DISABLE_QUERY_CACHE", "") not in ("", "0"):
680
- return query, []
681
- table = self.catalog.warehouse.create_pre_udf_table(query)
682
- q: Select = sqlalchemy.select(*table.c)
683
- return q, [table]
684
-
685
680
  def create_result_query(
686
681
  self, udf_table, query
687
682
  ) -> tuple[QueryGeneratorFunc, list["sqlalchemy.Column"]]:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: datachain
3
- Version: 0.37.3
3
+ Version: 0.37.5
4
4
  Summary: Wrangle unstructured AI data at scale
5
5
  Author-email: Dmitry Petrov <support@dvc.org>
6
6
  License-Expression: Apache-2.0
@@ -1699,10 +1699,16 @@ def test_agg_offset_limit(catalog_tmpfile, parallel, offset, limit, files):
1699
1699
  value=list(range(100)),
1700
1700
  session=catalog_tmpfile.session,
1701
1701
  )
1702
+ # Read values in general doesn't guarantee order, so we need to order first
1703
+ ds = ds.order_by("filename")
1702
1704
  if offset is not None:
1703
1705
  ds = ds.offset(offset)
1704
1706
  if limit is not None:
1705
1707
  ds = ds.limit(limit)
1708
+
1709
+ limited_filenames = ds.to_values("filename")
1710
+ assert set(limited_filenames) == set(files)
1711
+
1706
1712
  ds = (
1707
1713
  ds.settings(parallel=parallel)
1708
1714
  .agg(
@@ -57,3 +57,30 @@ def test_union_parallel_udf_ids_only_no_dup(test_session_tmpfile, monkeypatch):
57
57
  assert total == 2 * n
58
58
  assert len(distinct_idx) == 2 * n
59
59
  assert total == len(distinct_idx)
60
+
61
+
62
+ def test_union_parallel_gen_ids_only_no_dup(test_session_tmpfile, monkeypatch):
63
+ monkeypatch.setattr("datachain.query.dispatch.DEFAULT_BATCH_SIZE", 5, raising=False)
64
+ n = 30
65
+
66
+ x_ids = list(range(n))
67
+ y_ids = list(range(n, 2 * n))
68
+
69
+ x = dc.read_values(idx=x_ids, session=test_session_tmpfile)
70
+ y = dc.read_values(idx=y_ids, session=test_session_tmpfile)
71
+
72
+ xy = x.union(y)
73
+
74
+ def expand(idx):
75
+ yield f"val-{idx}"
76
+
77
+ generated = xy.settings(parallel=2).gen(
78
+ gen=expand,
79
+ params=("idx",),
80
+ output={"val": str},
81
+ )
82
+
83
+ values = generated.to_values("val")
84
+
85
+ assert len(values) == 2 * n
86
+ assert set(values) == {f"val-{i}" for i in range(2 * n)}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes