datachain 0.36.3__tar.gz → 0.36.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.
- {datachain-0.36.3 → datachain-0.36.5}/PKG-INFO +1 -1
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/dataset.py +8 -4
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain.egg-info/PKG-INFO +1 -1
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain.egg-info/SOURCES.txt +1 -0
- datachain-0.36.5/tests/func/test_temp_table_tracking.py +72 -0
- {datachain-0.36.3 → datachain-0.36.5}/.cruft.json +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.gitattributes +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/ISSUE_TEMPLATE/empty_issue.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/codecov.yaml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/dependabot.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/workflows/benchmarks.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/workflows/release.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/workflows/tests-studio.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/workflows/tests.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.github/workflows/update-template.yaml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.gitignore +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/.pre-commit-config.yaml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/CODE_OF_CONDUCT.rst +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/LICENSE +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/README.rst +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/api_hooks.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/assets/captioned_cartoons.png +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/assets/datachain-white.svg +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/assets/datachain.svg +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/assets/webhook_dialog.png +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/assets/webhook_list.png +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/auth/login.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/auth/logout.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/auth/team.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/auth/token.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/index.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/job/cancel.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/job/clusters.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/job/logs.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/job/ls.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/commands/job/run.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/contributing.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/css/github-permalink-style.css +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/examples.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/db_migrations.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/delta.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/env.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/index.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/namespaces.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/processing.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/remotes.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/guide/retry.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/index.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/overrides/main.html +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/quick-start.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/arrowrow.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/bbox.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/file.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/imagefile.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/index.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/pose.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/segment.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/tarvfile.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/textfile.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/data-types/videofile.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/datachain.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/func.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/aggregate.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/array.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/conditional.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/numeric.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/path.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/random.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/string.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/functions/window.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/index.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/toolkit.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/torch.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/references/udf.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/studio/api/.gitkeep +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/studio/webhooks.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/templates/main.dot +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/templates/operation.dot +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/templates/responses.def +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/docs/tutorials.md +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/computer_vision/iptc_exif_xmp_lib.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/computer_vision/llava2_image_desc_lib.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/computer_vision/openimage-detect.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/computer_vision/ultralytics-bbox.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/computer_vision/ultralytics-pose.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/computer_vision/ultralytics-segment.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/common_sql_functions.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/json-csv-reader.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/nested_datamodel.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/torch-loader.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/udfs/parallel.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/udfs/simple.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/get_started/udfs/stateful.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/incremental_processing/delta.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/incremental_processing/retry.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/incremental_processing/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/llm_and_nlp/claude-query.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/llm_and_nlp/hf-dataset-llm-eval.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/multimodal/audio-to-text.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/multimodal/clip_inference.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/multimodal/hf_pipeline.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/multimodal/openai_image_desc_lib.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/multimodal/wds.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/examples/multimodal/wds_filtered.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/mkdocs.yml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/noxfile.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/pyproject.toml +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/setup.cfg +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/__main__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/asyn.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cache.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/catalog/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/catalog/catalog.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/catalog/datasource.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/catalog/dependency.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/catalog/loader.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/checkpoint.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/datasets.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/du.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/index.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/ls.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/misc.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/query.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/commands/show.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/parser/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/parser/job.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/parser/studio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/parser/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/cli/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/azure.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/fileslice.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/fsspec.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/gcs.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/hf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/http.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/local.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/client/s3.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/config.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/db_engine.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/job.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/metastore.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/schema.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/serializer.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/sqlite.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/data_storage/warehouse.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/dataset.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/delta.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/diff/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/error.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/fs/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/fs/reference.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/fs/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/aggregate.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/array.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/base.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/conditional.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/func.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/numeric.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/path.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/random.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/string.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/func/window.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/hash_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/job.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/arrow.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/audio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/clip.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/convert/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/convert/flatten.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/convert/python_to_sql.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/convert/sql_to_python.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/convert/unflatten.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/convert/values_to_tuples.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/data_model.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dataset_info.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/csv.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/database.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/datachain.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/datasets.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/hf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/json.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/listings.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/pandas.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/parquet.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/records.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/storage.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/storage_pattern.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/dc/values.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/file.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/hf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/image.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/listing.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/listing_info.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/meta_formats.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/model_store.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/namespaces.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/projects.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/pytorch.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/settings.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/signal_schema.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/tar.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/text.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/udf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/udf_signature.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/video.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/webdataset.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/lib/webdataset_laion.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/listing.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/bbox.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/pose.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/segment.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/ultralytics/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/ultralytics/bbox.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/ultralytics/pose.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/ultralytics/segment.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/model/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/namespace.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/node.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/nodes_fetcher.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/nodes_thread_pool.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/plugins.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/progress.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/project.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/py.typed +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/batch.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/dispatch.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/metrics.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/params.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/queue.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/schema.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/session.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/query/udf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/remote/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/remote/studio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/script_meta.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/semver.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/default/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/default/base.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/aggregate.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/array.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/conditional.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/numeric.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/path.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/random.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/functions/string.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/postgresql_dialect.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/postgresql_types.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/selectable.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/sqlite/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/sqlite/base.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/sqlite/types.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/sqlite/vector.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/types.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/sql/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/studio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/telemetry.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/toolkit/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/toolkit/split.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/torch/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain/utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain.egg-info/dependency_links.txt +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain.egg-info/entry_points.txt +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain.egg-info/requires.txt +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/src/datachain.egg-info/top_level.txt +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/conftest.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/datasets/.dvc/.gitignore +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/datasets/.dvc/config +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/datasets/.gitignore +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/datasets/laion-tiny.npz.dvc +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/test_datachain.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/test_ls.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/benchmarks/test_version.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/conftest.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/data.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/examples/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/examples/test_examples.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/examples/test_wds_e2e.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/examples/wds_data.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/data/Big_Buck_Bunny_360_10s_1MB.mp4 +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/data/lena.jpg +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/fake-service-account-credentials.json +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_aggregate.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_array.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_conditional.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_numeric.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_path.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_random.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/functions/test_string.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/model/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/model/data/running-mask0.png +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/model/data/running-mask1.png +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/model/data/running.jpg +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/model/data/ships.jpg +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/model/test_yolo.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_audio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_catalog.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_client.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_cloud_transfer.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_data_storage.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_datachain.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_datachain_merge.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_dataset_query.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_datasets.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_delta.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_feature_pickling.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_file.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_hf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_hidden_field.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_image.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_listing.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_ls.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_meta_formats.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_metastore.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_metrics.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_mutate.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_pull.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_pytorch.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_query.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_read_database.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_read_dataset_remote.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_read_dataset_version_specifiers.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_retry.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_session.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_storage_pattern.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_studio_datetime_parsing.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_to_database.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_toolkit.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_udf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_union.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_video.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/func/test_warehouse.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/scripts/feature_class.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/scripts/feature_class_exception.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/scripts/feature_class_parallel.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/scripts/feature_class_parallel_data_model.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/scripts/name_len_slow.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/test_atomicity.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/test_cli_e2e.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/test_cli_studio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/test_import_time.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/test_query_e2e.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/test_telemetry.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/conftest.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_arrow.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_audio.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_checkpoints.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_clip.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_datachain.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_datachain_bootstrap.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_datachain_merge.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_diff.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_feature.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_feature_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_file.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_hf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_image.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_listing_info.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_namespace.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_partition_by.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_project.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_python_to_sql.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_schema.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_settings.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_signal_schema.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_sql_to_python.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_storage_pattern.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_text.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_udf.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_udf_signature.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/lib/test_webdataset.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/model/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/model/test_bbox.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/model/test_pose.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/model/test_segment.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/model/test_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/sqlite/__init__.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/sqlite/test_types.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/sqlite/test_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/test_array.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/test_conditional.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/test_path.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/test_random.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/test_selectable.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/sql/test_string.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_asyn.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_batching.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_cache.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_catalog.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_catalog_loader.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_cli_datasets.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_cli_parsing.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_client.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_client_gcs.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_client_http.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_client_s3.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_config.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_data_storage.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_database_engine.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_datachain_hash.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_dataset.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_dispatch.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_fileslice.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_func.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_hash_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_listing.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_metastore.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_module_exports.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_pytorch.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_query.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_query_metrics.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_query_params.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_query_steps_hash.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_script_meta.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_semver.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_serializer.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_session.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_utils.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/unit/test_warehouse.py +0 -0
- {datachain-0.36.3 → datachain-0.36.5}/tests/utils.py +0 -0
|
@@ -231,8 +231,9 @@ class DatasetDiffOperation(Step):
|
|
|
231
231
|
|
|
232
232
|
def apply(self, query_generator, temp_tables: list[str]) -> "StepResult":
|
|
233
233
|
source_query = query_generator.exclude(("sys__id",))
|
|
234
|
+
right_before = len(self.dq.temp_table_names)
|
|
234
235
|
target_query = self.dq.apply_steps().select()
|
|
235
|
-
temp_tables.extend(self.dq.temp_table_names)
|
|
236
|
+
temp_tables.extend(self.dq.temp_table_names[right_before:])
|
|
236
237
|
|
|
237
238
|
# creating temp table that will hold subtract results
|
|
238
239
|
temp_table_name = self.catalog.warehouse.temp_table_name()
|
|
@@ -951,10 +952,12 @@ class SQLUnion(Step):
|
|
|
951
952
|
def apply(
|
|
952
953
|
self, query_generator: QueryGenerator, temp_tables: list[str]
|
|
953
954
|
) -> StepResult:
|
|
955
|
+
left_before = len(self.query1.temp_table_names)
|
|
954
956
|
q1 = self.query1.apply_steps().select().subquery()
|
|
955
|
-
temp_tables.extend(self.query1.temp_table_names)
|
|
957
|
+
temp_tables.extend(self.query1.temp_table_names[left_before:])
|
|
958
|
+
right_before = len(self.query2.temp_table_names)
|
|
956
959
|
q2 = self.query2.apply_steps().select().subquery()
|
|
957
|
-
temp_tables.extend(self.query2.temp_table_names)
|
|
960
|
+
temp_tables.extend(self.query2.temp_table_names[right_before:])
|
|
958
961
|
|
|
959
962
|
columns1 = _drop_system_columns(q1.columns)
|
|
960
963
|
columns2 = _drop_system_columns(q2.columns)
|
|
@@ -1004,8 +1007,9 @@ class SQLJoin(Step):
|
|
|
1004
1007
|
return hashlib.sha256(b"".join(parts)).hexdigest()
|
|
1005
1008
|
|
|
1006
1009
|
def get_query(self, dq: "DatasetQuery", temp_tables: list[str]) -> sa.Subquery:
|
|
1010
|
+
temp_tables_before = len(dq.temp_table_names)
|
|
1007
1011
|
query = dq.apply_steps().select()
|
|
1008
|
-
temp_tables.extend(dq.temp_table_names)
|
|
1012
|
+
temp_tables.extend(dq.temp_table_names[temp_tables_before:])
|
|
1009
1013
|
|
|
1010
1014
|
if not any(isinstance(step, (SQLJoin, SQLUnion)) for step in dq.steps):
|
|
1011
1015
|
return query.subquery(dq.table.name)
|
|
@@ -331,6 +331,7 @@ tests/func/test_retry.py
|
|
|
331
331
|
tests/func/test_session.py
|
|
332
332
|
tests/func/test_storage_pattern.py
|
|
333
333
|
tests/func/test_studio_datetime_parsing.py
|
|
334
|
+
tests/func/test_temp_table_tracking.py
|
|
334
335
|
tests/func/test_to_database.py
|
|
335
336
|
tests/func/test_toolkit.py
|
|
336
337
|
tests/func/test_udf.py
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import datachain as dc
|
|
2
|
+
from datachain.query.dataset import DatasetQuery
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def _capture_temp_tables(mocker):
|
|
6
|
+
captured: list[list[str]] = []
|
|
7
|
+
original_cleanup = DatasetQuery.cleanup
|
|
8
|
+
|
|
9
|
+
def capture(self):
|
|
10
|
+
captured.append(list(self.temp_table_names))
|
|
11
|
+
return original_cleanup(self)
|
|
12
|
+
|
|
13
|
+
mocker.patch("datachain.query.dataset.DatasetQuery.cleanup", capture)
|
|
14
|
+
return captured
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def _assert_no_duplicate_temp_tables(captured: list[list[str]]):
|
|
18
|
+
for tables in captured:
|
|
19
|
+
assert len(tables) == len(set(tables))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_nested_merge_has_no_duplicate_temp_tables(test_session, mocker):
|
|
23
|
+
captured = _capture_temp_tables(mocker)
|
|
24
|
+
|
|
25
|
+
base = dc.read_values(num=[1, 2], session=test_session)
|
|
26
|
+
generated = base.map(num_plus=lambda num: str(num + 10))
|
|
27
|
+
inner = generated.merge(base, on="num", inner=True)
|
|
28
|
+
chain = base.merge(inner, on="num", inner=True)
|
|
29
|
+
|
|
30
|
+
values = chain.select("num").to_pandas()["num"].tolist()
|
|
31
|
+
assert set(values) == {1, 2}
|
|
32
|
+
assert len(values) == 2
|
|
33
|
+
|
|
34
|
+
rerun = chain.select("num").to_pandas()["num"].tolist()
|
|
35
|
+
assert set(rerun) == {1, 2}
|
|
36
|
+
assert len(rerun) == len(values)
|
|
37
|
+
|
|
38
|
+
_assert_no_duplicate_temp_tables(captured)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def test_union_has_no_duplicate_temp_tables(test_session, mocker):
|
|
42
|
+
captured = _capture_temp_tables(mocker)
|
|
43
|
+
|
|
44
|
+
left = dc.read_values(num=[1, 2], session=test_session)
|
|
45
|
+
right = dc.read_values(num=[3], session=test_session)
|
|
46
|
+
union_chain = left.union(right)
|
|
47
|
+
|
|
48
|
+
values = union_chain.select("num").to_pandas()["num"].tolist()
|
|
49
|
+
assert set(values) == {1, 2, 3}
|
|
50
|
+
assert len(values) == 3
|
|
51
|
+
|
|
52
|
+
rerun = union_chain.select("num").to_pandas()["num"].tolist()
|
|
53
|
+
assert set(rerun) == {1, 2, 3}
|
|
54
|
+
assert len(rerun) == len(values)
|
|
55
|
+
|
|
56
|
+
_assert_no_duplicate_temp_tables(captured)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def test_subtract_has_no_duplicate_temp_tables(test_session, mocker):
|
|
60
|
+
captured = _capture_temp_tables(mocker)
|
|
61
|
+
|
|
62
|
+
source = dc.read_values(num=[1, 2], session=test_session)
|
|
63
|
+
target = dc.read_values(num=[2], session=test_session)
|
|
64
|
+
subtract_chain = source.subtract(target, on="num")
|
|
65
|
+
|
|
66
|
+
values = subtract_chain.select("num").to_pandas()["num"].tolist()
|
|
67
|
+
assert values == [1]
|
|
68
|
+
|
|
69
|
+
rerun = subtract_chain.select("num").to_pandas()["num"].tolist()
|
|
70
|
+
assert rerun == values
|
|
71
|
+
|
|
72
|
+
_assert_no_duplicate_temp_tables(captured)
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|