latch 2.40.4.dev2__tar.gz → 2.40.4.dev4__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.
- latch-2.40.4.dev4/PKG-INFO +13 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/metadata.py +12 -0
- latch-2.40.4.dev4/latch.egg-info/PKG-INFO +13 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch.egg-info/SOURCES.txt +3 -11
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch.egg-info/requires.txt +1 -1
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/common/utils.py +16 -2
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/build.py +9 -1
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/operator.py +9 -2
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/process.py +14 -2
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/workflow.py +13 -2
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/main.py +0 -2
- latch-2.40.4.dev4/latch_cli/services/init/__pycache__/__init__.cpython-310.pyc +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/__pycache__/init.cpython-310.pyc +0 -0
- latch-2.40.4.dev4/latch_cli/services/init/example_docker/.__init__.py.swn +0 -0
- latch-2.40.4.dev4/latch_cli/services/init/example_docker/.__init__.py.swo +0 -0
- latch-2.40.4.dev4/latch_cli/services/init/example_docker/.__init__.py.swp +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/register/utils.py +0 -1
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/setup.py +2 -2
- latch-2.40.4.dev2/PKG-INFO +0 -39
- latch-2.40.4.dev2/latch.egg-info/PKG-INFO +0 -39
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/__init__.cpython-310.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/__init__.cpython-311.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/__init__.cpython-38.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/__init__.cpython-39.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/init.cpython-311.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/init.cpython-38.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/__pycache__/init.cpython-39.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/assemble_and_sort/__pycache__/__init__.cpython-310.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/example_conda/__pycache__/__init__.cpython-310.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/example_nf_integration/latch_metadata/__pycache__/__init__.cpython-311.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/example_r/__pycache__/__init__.cpython-310.pyc +0 -0
- latch-2.40.4.dev2/latch_cli/services/init/template/__pycache__/__init__.cpython-310.pyc +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/LICENSE +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/MANIFEST.in +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/README.md +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/account.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/executions.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/functions/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/functions/messages.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/functions/operators.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/functions/secrets.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/download.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/manager.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/node.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/progress.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/remote_copy.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/throttle.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/upload.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/_transfer/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/path.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/ldata/type.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/project.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/record.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/table.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/types.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/upstream_types/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/upstream_types/types.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/upstream_types/values.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/registry/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/conditional.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/dynamic.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/launch_plan.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/map_tasks.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/reference_workflow.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/tasks.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/resources/workflow.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/directory.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/file.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/glob.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/json.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/types/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/verified/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/verified/deseq2.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/verified/mafft.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/verified/pathway.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/verified/rnaseq.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch/verified/trim_galore.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch.egg-info/dependency_links.txt +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch.egg-info/entry_points.txt +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch.egg-info/top_level.txt +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/auth/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/auth/csrf.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/auth/oauth2.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/auth/pkce.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/auth/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/centromere/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/centromere/ctx.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/centromere/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/click_utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/constants.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/docker_utils/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/exceptions/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/exceptions/cache.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/exceptions/errors.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/exceptions/handler.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/exceptions/traceback.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/common/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/common/config/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/common/config/parser.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/common/config/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/common/serialize.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/channel.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/config.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/dag.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/file_persistence.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/serialize.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/adapters.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/base.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/conditional.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/map.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/nextflow/tasks/merge.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/snakemake/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/snakemake/config.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/snakemake/serialize.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/snakemake/single_task_snakemake.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/snakemake/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/extras/snakemake/workflow.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/menus.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/cp/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/cp/autocomplete.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/cp/glob.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/cp/main.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/cp/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/execute/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/execute/main.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/execute/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/get.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/get_executions.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/get_params.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/.env +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/LICENSE +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/README.md +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/assemble.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/sort.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/assemble_and_sort/system-requirements.txt +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/common/.dockerignore +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_conda/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_conda/conda_task.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_conda/environment.yaml +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_docker/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_docker/task.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_nextflow/main.nf +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_nextflow/nextflow.config +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_nextflow/workflow.nf +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_nfcore/Dockerfile +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_nfcore/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_nfcore/task.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_r/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_r/environment.R +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_r/r_task.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/.latch/latch_entrypoint +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/Dockerfile +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/Snakefile +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/config.yaml +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/environment.yaml +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/latch_metadata.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/scripts/plot-quals.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/example_snakemake/version +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/init.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/template/LICENSE +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/template/README.md +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/template/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/template/task.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/launch.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/local_dev.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/local_dev_old.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/login.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/ls.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/mkdir.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/move.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/preview.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/register/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/register/constants.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/register/register.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/rm.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/stop_pod.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/sync.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/test_data/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/test_data/ls.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/test_data/remove.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/test_data/upload.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/test_data/utils.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/workspace.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/tinyrequests.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/tui/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/utils/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/utils/path.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/utils/workflow.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/workflow_config.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/pyproject.toml +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/setup.cfg +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/tests/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/tests/cp/__init__.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/tests/fixtures.py +0 -0
- {latch-2.40.4.dev2 → latch-2.40.4.dev4}/tests/test_ls.py +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: latch
|
|
3
|
+
Version: 2.40.4.dev4
|
|
4
|
+
Summary: The Latch SDK
|
|
5
|
+
Author-email: kenny@latch.bio
|
|
6
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
7
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
10
|
+
Requires-Python: >=3.8,<3.12
|
|
11
|
+
Provides-Extra: snakemake
|
|
12
|
+
Provides-Extra: pandas
|
|
13
|
+
License-File: LICENSE
|
|
@@ -4,7 +4,9 @@ from enum import Enum
|
|
|
4
4
|
from pathlib import Path
|
|
5
5
|
from textwrap import indent
|
|
6
6
|
from typing import (
|
|
7
|
+
Annotated,
|
|
7
8
|
Any,
|
|
9
|
+
Callable,
|
|
8
10
|
ClassVar,
|
|
9
11
|
Collection,
|
|
10
12
|
Dict,
|
|
@@ -478,6 +480,10 @@ class NextflowParameter(Generic[T], LatchParameter):
|
|
|
478
480
|
"""
|
|
479
481
|
default: Optional[T] = None
|
|
480
482
|
|
|
483
|
+
def __post_init__(self):
|
|
484
|
+
if self.samplesheet is True:
|
|
485
|
+
self.type = Annotated[self.type, "samplesheet"]
|
|
486
|
+
|
|
481
487
|
|
|
482
488
|
@dataclass
|
|
483
489
|
class NextflowFileParameter(NextflowParameter[Union[LatchFile, LatchDir]]):
|
|
@@ -547,6 +553,10 @@ class LatchMetadata:
|
|
|
547
553
|
""" A `LatchAuthor` object that describes the author of the workflow"""
|
|
548
554
|
documentation: Optional[str] = None
|
|
549
555
|
"""A link to documentation for the workflow itself"""
|
|
556
|
+
about_page_markdown: Optional[Path] = None
|
|
557
|
+
"""A path to a markdown file that will be rendered as the workflow About
|
|
558
|
+
page. If provided, it will override the docstring markdown, if it exists,
|
|
559
|
+
for SDK workflows."""
|
|
550
560
|
repository: Optional[str] = None
|
|
551
561
|
"""A link to the repository where the code for the workflow is hosted"""
|
|
552
562
|
license: str = "MIT"
|
|
@@ -571,6 +581,8 @@ class LatchMetadata:
|
|
|
571
581
|
metadata_dict = asdict(self)
|
|
572
582
|
# remove parameters since that will be handled by each parameters' dict() method
|
|
573
583
|
del metadata_dict["parameters"]
|
|
584
|
+
# pyyaml is unable to serialize PosixPath objects + unused after registration
|
|
585
|
+
del metadata_dict["about_page_markdown"]
|
|
574
586
|
metadata_dict["license"] = {"id": self.license}
|
|
575
587
|
|
|
576
588
|
# flows override all other rendering, so disable them entirely if not provided
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: latch
|
|
3
|
+
Version: 2.40.4.dev4
|
|
4
|
+
Summary: The Latch SDK
|
|
5
|
+
Author-email: kenny@latch.bio
|
|
6
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
7
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
10
|
+
Requires-Python: >=3.8,<3.12
|
|
11
|
+
Provides-Extra: snakemake
|
|
12
|
+
Provides-Extra: pandas
|
|
13
|
+
License-File: LICENSE
|
|
@@ -136,13 +136,7 @@ latch_cli/services/execute/utils.py
|
|
|
136
136
|
latch_cli/services/init/__init__.py
|
|
137
137
|
latch_cli/services/init/init.py
|
|
138
138
|
latch_cli/services/init/__pycache__/__init__.cpython-310.pyc
|
|
139
|
-
latch_cli/services/init/__pycache__/__init__.cpython-311.pyc
|
|
140
|
-
latch_cli/services/init/__pycache__/__init__.cpython-38.pyc
|
|
141
|
-
latch_cli/services/init/__pycache__/__init__.cpython-39.pyc
|
|
142
139
|
latch_cli/services/init/__pycache__/init.cpython-310.pyc
|
|
143
|
-
latch_cli/services/init/__pycache__/init.cpython-311.pyc
|
|
144
|
-
latch_cli/services/init/__pycache__/init.cpython-38.pyc
|
|
145
|
-
latch_cli/services/init/__pycache__/init.cpython-39.pyc
|
|
146
140
|
latch_cli/services/init/assemble_and_sort/.env
|
|
147
141
|
latch_cli/services/init/assemble_and_sort/LICENSE
|
|
148
142
|
latch_cli/services/init/assemble_and_sort/README.md
|
|
@@ -150,25 +144,24 @@ latch_cli/services/init/assemble_and_sort/__init__.py
|
|
|
150
144
|
latch_cli/services/init/assemble_and_sort/assemble.py
|
|
151
145
|
latch_cli/services/init/assemble_and_sort/sort.py
|
|
152
146
|
latch_cli/services/init/assemble_and_sort/system-requirements.txt
|
|
153
|
-
latch_cli/services/init/assemble_and_sort/__pycache__/__init__.cpython-310.pyc
|
|
154
147
|
latch_cli/services/init/common/.dockerignore
|
|
155
148
|
latch_cli/services/init/example_conda/__init__.py
|
|
156
149
|
latch_cli/services/init/example_conda/conda_task.py
|
|
157
150
|
latch_cli/services/init/example_conda/environment.yaml
|
|
158
|
-
latch_cli/services/init/
|
|
151
|
+
latch_cli/services/init/example_docker/.__init__.py.swn
|
|
152
|
+
latch_cli/services/init/example_docker/.__init__.py.swo
|
|
153
|
+
latch_cli/services/init/example_docker/.__init__.py.swp
|
|
159
154
|
latch_cli/services/init/example_docker/__init__.py
|
|
160
155
|
latch_cli/services/init/example_docker/task.py
|
|
161
156
|
latch_cli/services/init/example_nextflow/main.nf
|
|
162
157
|
latch_cli/services/init/example_nextflow/nextflow.config
|
|
163
158
|
latch_cli/services/init/example_nextflow/workflow.nf
|
|
164
|
-
latch_cli/services/init/example_nf_integration/latch_metadata/__pycache__/__init__.cpython-311.pyc
|
|
165
159
|
latch_cli/services/init/example_nfcore/Dockerfile
|
|
166
160
|
latch_cli/services/init/example_nfcore/__init__.py
|
|
167
161
|
latch_cli/services/init/example_nfcore/task.py
|
|
168
162
|
latch_cli/services/init/example_r/__init__.py
|
|
169
163
|
latch_cli/services/init/example_r/environment.R
|
|
170
164
|
latch_cli/services/init/example_r/r_task.py
|
|
171
|
-
latch_cli/services/init/example_r/__pycache__/__init__.cpython-310.pyc
|
|
172
165
|
latch_cli/services/init/example_snakemake/Dockerfile
|
|
173
166
|
latch_cli/services/init/example_snakemake/Snakefile
|
|
174
167
|
latch_cli/services/init/example_snakemake/config.yaml
|
|
@@ -181,7 +174,6 @@ latch_cli/services/init/template/LICENSE
|
|
|
181
174
|
latch_cli/services/init/template/README.md
|
|
182
175
|
latch_cli/services/init/template/__init__.py
|
|
183
176
|
latch_cli/services/init/template/task.py
|
|
184
|
-
latch_cli/services/init/template/__pycache__/__init__.cpython-310.pyc
|
|
185
177
|
latch_cli/services/register/__init__.py
|
|
186
178
|
latch_cli/services/register/constants.py
|
|
187
179
|
latch_cli/services/register/register.py
|
|
@@ -37,13 +37,23 @@ def is_blob_type(typ: Type) -> TypeGuard[Union[Type[LatchFile], Type[LatchDir]]]
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
def is_downloadable_blob_type(typ: Type):
|
|
40
|
-
if not is_blob_type(typ):
|
|
40
|
+
if not is_blob_type(typ) or typ is LatchOutputDir:
|
|
41
41
|
return False
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
origin = get_origin(typ)
|
|
44
|
+
if origin is not None:
|
|
45
|
+
return all([
|
|
46
|
+
is_downloadable_blob_type(sub_typ) or sub_typ is type(None)
|
|
47
|
+
for sub_typ in get_args(typ)
|
|
48
|
+
])
|
|
49
|
+
|
|
50
|
+
return True
|
|
44
51
|
|
|
45
52
|
|
|
46
53
|
def type_repr(t: Type, *, add_namespace: bool = False) -> str:
|
|
54
|
+
if get_origin(t) == Annotated:
|
|
55
|
+
return type_repr(get_args(t)[0])
|
|
56
|
+
|
|
47
57
|
if getattr(t, "__name__", None) == "NoneType":
|
|
48
58
|
return "None"
|
|
49
59
|
|
|
@@ -70,3 +80,7 @@ def type_repr(t: Type, *, add_namespace: bool = False) -> str:
|
|
|
70
80
|
)
|
|
71
81
|
|
|
72
82
|
return getattr(t, "__name__", repr(t))
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def is_samplesheet_param(t: Type) -> bool:
|
|
86
|
+
return get_origin(t) == Annotated and get_args(t)[-1] == "samplesheet"
|
|
@@ -31,7 +31,7 @@ from ...click_utils import italic
|
|
|
31
31
|
from ...menus import select_tui
|
|
32
32
|
from ...utils import current_workspace, identifier_from_str
|
|
33
33
|
from ..common.serialize import binding_from_python
|
|
34
|
-
from ..common.utils import reindent
|
|
34
|
+
from ..common.utils import is_samplesheet_param, reindent
|
|
35
35
|
from .dag import DAG, VertexType
|
|
36
36
|
from .tasks.adapters import (
|
|
37
37
|
NextflowProcessPostAdapterTask,
|
|
@@ -523,6 +523,14 @@ def generate_nf_entrypoint(
|
|
|
523
523
|
0,
|
|
524
524
|
)
|
|
525
525
|
|
|
526
|
+
if any([is_samplesheet_param(t) for t in wf.python_interface.inputs.values()]):
|
|
527
|
+
preamble += reindent(
|
|
528
|
+
r"""
|
|
529
|
+
from latch_metadata.parameters import construct_samplesheet
|
|
530
|
+
""",
|
|
531
|
+
0,
|
|
532
|
+
)
|
|
533
|
+
|
|
526
534
|
for t in wf.python_interface.inputs.values():
|
|
527
535
|
preamble += get_preamble(t, make_optionals=True)
|
|
528
536
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import json
|
|
2
2
|
from pathlib import Path
|
|
3
|
-
from typing import Dict, List, Mapping, Type
|
|
3
|
+
from typing import Annotated, Dict, List, Mapping, Type, get_args, get_origin
|
|
4
4
|
|
|
5
5
|
from latch.types.directory import LatchDir
|
|
6
6
|
from latch.types.file import LatchFile
|
|
7
7
|
from latch.types.metadata import ParameterType
|
|
8
8
|
|
|
9
|
-
from ...common.utils import is_blob_type, reindent, type_repr
|
|
9
|
+
from ...common.utils import is_blob_type, is_samplesheet_param, reindent, type_repr
|
|
10
10
|
from ..workflow import NextflowWorkflow
|
|
11
11
|
from .base import NextflowBaseTask, NFTaskType
|
|
12
12
|
|
|
@@ -151,6 +151,13 @@ class NextflowOperatorTask(NextflowBaseTask):
|
|
|
151
151
|
""",
|
|
152
152
|
2,
|
|
153
153
|
)
|
|
154
|
+
elif is_samplesheet_param(typ):
|
|
155
|
+
code_block += reindent(
|
|
156
|
+
f"""
|
|
157
|
+
{k} = construct_samplesheet({k})
|
|
158
|
+
""",
|
|
159
|
+
2,
|
|
160
|
+
)
|
|
154
161
|
|
|
155
162
|
# todo(ayush): figure out how to make this work
|
|
156
163
|
do_file_io = False
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import json
|
|
2
2
|
from dataclasses import fields, is_dataclass
|
|
3
3
|
from pathlib import Path
|
|
4
|
-
from typing import List, Mapping, Optional, Type
|
|
4
|
+
from typing import Annotated, List, Mapping, Optional, Type
|
|
5
|
+
|
|
6
|
+
try:
|
|
7
|
+
from typing import get_args, get_origin
|
|
8
|
+
except ImportError:
|
|
9
|
+
from typing_extensions import get_args, get_origin
|
|
5
10
|
|
|
6
11
|
from latch.types.directory import LatchDir
|
|
7
12
|
from latch.types.file import LatchFile
|
|
8
13
|
from latch.types.metadata import ParameterType
|
|
9
14
|
|
|
10
|
-
from ...common.utils import is_blob_type, reindent, type_repr
|
|
15
|
+
from ...common.utils import is_blob_type, is_samplesheet_param, reindent, type_repr
|
|
11
16
|
from ..workflow import NextflowWorkflow
|
|
12
17
|
from .base import NextflowBaseTask, NFTaskType
|
|
13
18
|
|
|
@@ -165,6 +170,13 @@ class NextflowProcessTask(NextflowBaseTask):
|
|
|
165
170
|
""",
|
|
166
171
|
1,
|
|
167
172
|
)
|
|
173
|
+
elif is_samplesheet_param(typ):
|
|
174
|
+
code_block += reindent(
|
|
175
|
+
f"""
|
|
176
|
+
{k} = construct_samplesheet({k})
|
|
177
|
+
""",
|
|
178
|
+
1,
|
|
179
|
+
)
|
|
168
180
|
|
|
169
181
|
if self.script_path.resolve() != self.wf.nf_script.resolve():
|
|
170
182
|
stem = self.script_path.resolve().relative_to(self.wf.pkg_root.resolve())
|
|
@@ -2,6 +2,7 @@ from dataclasses import fields, is_dataclass
|
|
|
2
2
|
from pathlib import Path
|
|
3
3
|
from typing import Any, Dict, List, Tuple, Type
|
|
4
4
|
|
|
5
|
+
import click
|
|
5
6
|
from flytekit.core.class_based_resolver import ClassStorageTaskResolver
|
|
6
7
|
from flytekit.core.docstring import Docstring
|
|
7
8
|
from flytekit.core.interface import Interface
|
|
@@ -48,9 +49,19 @@ class NextflowWorkflow(WorkflowBase, ClassStorageTaskResolver):
|
|
|
48
49
|
|
|
49
50
|
self.output_directory = metadata._nextflow_metadata.output_directory
|
|
50
51
|
self.docker_metadata = metadata._nextflow_metadata.docker_metadata
|
|
51
|
-
|
|
52
|
+
md_path = metadata._nextflow_metadata.about_page_markdown
|
|
53
|
+
|
|
54
|
+
if md_path is not None and md_path.exists():
|
|
55
|
+
click.secho(f"Rendering workflow About page content from {md_path}")
|
|
56
|
+
markdown_content = md_path.read_text()
|
|
57
|
+
else:
|
|
58
|
+
markdown_content = (
|
|
59
|
+
"Add markdown content to a file and add the path",
|
|
60
|
+
"to your workflow metadata to populate this page.\nMore information",
|
|
61
|
+
"[here](https://wiki.latch.bio/docs/nextflow/quickstart).",
|
|
62
|
+
)
|
|
52
63
|
docstring = Docstring(
|
|
53
|
-
f"{metadata._nextflow_metadata.display_name}\n\
|
|
64
|
+
f"{metadata._nextflow_metadata.display_name}\n\n{markdown_content}\n\n"
|
|
54
65
|
+ str(metadata._nextflow_metadata)
|
|
55
66
|
)
|
|
56
67
|
python_interface = Interface(
|
{latch-2.40.4.dev2 → latch-2.40.4.dev4}/latch_cli/services/init/__pycache__/init.cpython-310.pyc
RENAMED
|
Binary file
|
|
@@ -13,7 +13,7 @@ if cur_ver < (3, 8) or cur_ver > (3, 11):
|
|
|
13
13
|
|
|
14
14
|
setup(
|
|
15
15
|
name="latch",
|
|
16
|
-
version="v2.40.4.
|
|
16
|
+
version="v2.40.4.dev4",
|
|
17
17
|
author_email="kenny@latch.bio",
|
|
18
18
|
description="The Latch SDK",
|
|
19
19
|
packages=find_packages(),
|
|
@@ -30,7 +30,7 @@ setup(
|
|
|
30
30
|
"scp>=0.14.0",
|
|
31
31
|
"boto3>=1.26.0",
|
|
32
32
|
"tqdm>=4.63.0",
|
|
33
|
-
"lytekit==0.15.
|
|
33
|
+
"lytekit==0.15.6",
|
|
34
34
|
"lytekitplugins-pods==0.6.2",
|
|
35
35
|
"typing-extensions==4.7.1",
|
|
36
36
|
"apscheduler==3.9.1",
|
latch-2.40.4.dev2/PKG-INFO
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: latch
|
|
3
|
-
Version: 2.40.4.dev2
|
|
4
|
-
Summary: The Latch SDK
|
|
5
|
-
Author-email: kenny@latch.bio
|
|
6
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
7
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
8
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
9
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
10
|
-
Requires-Python: >=3.8,<3.12
|
|
11
|
-
License-File: LICENSE
|
|
12
|
-
Requires-Dist: kubernetes>=24.2.0
|
|
13
|
-
Requires-Dist: pyjwt>=0.2.0
|
|
14
|
-
Requires-Dist: requests>=2.28.1
|
|
15
|
-
Requires-Dist: click>=8.0
|
|
16
|
-
Requires-Dist: docker>=5.0
|
|
17
|
-
Requires-Dist: paramiko>=3.2.0
|
|
18
|
-
Requires-Dist: scp>=0.14.0
|
|
19
|
-
Requires-Dist: boto3>=1.26.0
|
|
20
|
-
Requires-Dist: tqdm>=4.63.0
|
|
21
|
-
Requires-Dist: lytekit==0.15.5
|
|
22
|
-
Requires-Dist: lytekitplugins-pods==0.6.2
|
|
23
|
-
Requires-Dist: typing-extensions==4.7.1
|
|
24
|
-
Requires-Dist: apscheduler==3.9.1
|
|
25
|
-
Requires-Dist: gql==3.4.0
|
|
26
|
-
Requires-Dist: graphql-core==3.2.3
|
|
27
|
-
Requires-Dist: requests-toolbelt==0.10.1
|
|
28
|
-
Requires-Dist: latch-sdk-gql==0.0.6
|
|
29
|
-
Requires-Dist: latch-sdk-config==0.0.4
|
|
30
|
-
Requires-Dist: python-dateutil>=2.8
|
|
31
|
-
Requires-Dist: aioconsole==0.6.1
|
|
32
|
-
Requires-Dist: asyncssh==2.13.2
|
|
33
|
-
Requires-Dist: websockets==11.0.3
|
|
34
|
-
Requires-Dist: watchfiles==0.19.0
|
|
35
|
-
Provides-Extra: snakemake
|
|
36
|
-
Requires-Dist: snakemake<7.30.2,>=7.18.0; extra == "snakemake"
|
|
37
|
-
Requires-Dist: pulp<2.8,>=2.0; extra == "snakemake"
|
|
38
|
-
Provides-Extra: pandas
|
|
39
|
-
Requires-Dist: pandas>=2.0.0; extra == "pandas"
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: latch
|
|
3
|
-
Version: 2.40.4.dev2
|
|
4
|
-
Summary: The Latch SDK
|
|
5
|
-
Author-email: kenny@latch.bio
|
|
6
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
7
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
8
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
9
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
10
|
-
Requires-Python: >=3.8,<3.12
|
|
11
|
-
License-File: LICENSE
|
|
12
|
-
Requires-Dist: kubernetes>=24.2.0
|
|
13
|
-
Requires-Dist: pyjwt>=0.2.0
|
|
14
|
-
Requires-Dist: requests>=2.28.1
|
|
15
|
-
Requires-Dist: click>=8.0
|
|
16
|
-
Requires-Dist: docker>=5.0
|
|
17
|
-
Requires-Dist: paramiko>=3.2.0
|
|
18
|
-
Requires-Dist: scp>=0.14.0
|
|
19
|
-
Requires-Dist: boto3>=1.26.0
|
|
20
|
-
Requires-Dist: tqdm>=4.63.0
|
|
21
|
-
Requires-Dist: lytekit==0.15.5
|
|
22
|
-
Requires-Dist: lytekitplugins-pods==0.6.2
|
|
23
|
-
Requires-Dist: typing-extensions==4.7.1
|
|
24
|
-
Requires-Dist: apscheduler==3.9.1
|
|
25
|
-
Requires-Dist: gql==3.4.0
|
|
26
|
-
Requires-Dist: graphql-core==3.2.3
|
|
27
|
-
Requires-Dist: requests-toolbelt==0.10.1
|
|
28
|
-
Requires-Dist: latch-sdk-gql==0.0.6
|
|
29
|
-
Requires-Dist: latch-sdk-config==0.0.4
|
|
30
|
-
Requires-Dist: python-dateutil>=2.8
|
|
31
|
-
Requires-Dist: aioconsole==0.6.1
|
|
32
|
-
Requires-Dist: asyncssh==2.13.2
|
|
33
|
-
Requires-Dist: websockets==11.0.3
|
|
34
|
-
Requires-Dist: watchfiles==0.19.0
|
|
35
|
-
Provides-Extra: snakemake
|
|
36
|
-
Requires-Dist: snakemake<7.30.2,>=7.18.0; extra == "snakemake"
|
|
37
|
-
Requires-Dist: pulp<2.8,>=2.0; extra == "snakemake"
|
|
38
|
-
Provides-Extra: pandas
|
|
39
|
-
Requires-Dist: pandas>=2.0.0; extra == "pandas"
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
latch-2.40.4.dev2/latch_cli/services/init/assemble_and_sort/__pycache__/__init__.cpython-310.pyc
DELETED
|
Binary file
|
latch-2.40.4.dev2/latch_cli/services/init/example_conda/__pycache__/__init__.cpython-310.pyc
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
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
|