runnable 0.16.0__tar.gz → 0.17.0__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {runnable-0.16.0 → runnable-0.17.0}/PKG-INFO +1 -1
- runnable-0.17.0/examples/configs/in-memory.yaml +14 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/local.py +14 -28
- {runnable-0.16.0 → runnable-0.17.0}/pyproject.toml +1 -1
- {runnable-0.16.0 → runnable-0.17.0}/runnable/context.py +3 -1
- {runnable-0.16.0 → runnable-0.17.0}/runnable/datastore.py +14 -3
- {runnable-0.16.0 → runnable-0.17.0}/runnable/executor.py +1 -3
- {runnable-0.16.0 → runnable-0.17.0}/.dockerignore +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.github/workflows/docs.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.github/workflows/pr.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.github/workflows/release.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.gitignore +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.mypy.ini +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.pre-commit-config.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/.python-version +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/CHANGELOG.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/CONTRIBUTING.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/Dockerfile +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/LICENSE +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/README.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/architecture/yaml.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/cropped.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-expose-parameters.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-kubeflow-exec.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-kubeflow-ui.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-nested.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-parallel-map.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-sequential-map.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-workflows-gant.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/argo-workflows-logs.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/mlflow.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/mlflow_example.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/mlflow_step.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/notebook_api_parameters.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/notebook_env_parameters.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/notebook_input_parameters.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/notebook_native_parameters.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/screenshots/simple_notebook.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/speed.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/sport.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/work_dark.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/assets/work_light.png +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/catalog.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/index.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/map.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/nesting.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/parallel.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/parameters.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/pipeline.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/run-log.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/secrets.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/concepts/task.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/catalog.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/executors/argo.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/executors/container-environments.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/executors/local-container.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/executors/local.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/executors/mocked.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/executors/retry.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/overview.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/run-log.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/configurations/secrets.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/css/extra.css +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/index.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/iterative.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/reference.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/dynamic-looping.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/modular-dags.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/modular-notebooks.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/overview.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/script-based.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/single-notebook.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/switching-configs.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/using-parallel.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/tutorial/wrap-up.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/usage.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/docs/why-runnable.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/notebook.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/notebook.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/python_tasks.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/python_tasks.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/scripts.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/scripts.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/stub.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/01-tasks/stub.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/default_fail.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/default_fail.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/on_failure_fail.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/on_failure_fail.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/on_failure_succeed.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/on_failure_succeed.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/traversal.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/02-sequential/traversal.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/passing_parameters_notebook.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/passing_parameters_notebook.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/passing_parameters_python.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/passing_parameters_python.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/passing_parameters_shell.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/passing_parameters_shell.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/static_parameters_non_python.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/static_parameters_non_python.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/static_parameters_python.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/static_parameters_python.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/04-catalog/catalog.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/04-catalog/catalog.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/06-parallel/nesting.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/06-parallel/nesting.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/06-parallel/parallel.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/06-parallel/parallel.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/07-map/custom_reducer.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/07-map/custom_reducer.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/07-map/map.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/07-map/map.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/08-mocking/default.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/08-mocking/patching.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/09-retry/config.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/09-retry/python_tasks.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/09-retry/python_tasks.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/catalog.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/catalog.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/k8s-job.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/local-container.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/notebook.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/passing_parameters_python.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/python_parameters.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/python_tasks.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/python_tasks.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/11-jobs/scripts.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/Dockerfile.39 +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/README.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/functions.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/initial_parameters.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/process_chunk.ipynb +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/read_files.ipynb +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/read_parameters.ipynb +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/simple_notebook.ipynb +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/simple_notebook_mocked.ipynb +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/common/write_parameters.ipynb +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/README.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/kedro/README.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/kfp/README.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/metaflow/main.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/metaflow/parameters.json +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/runnable/main.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/runnable/runnable_params.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/comparisons/source.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/argo-config-full.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/argo-config.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/chunked-fs-run_log.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/default.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/dotenv.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/local-container.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/mocked-config-debug.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/mocked-config-simple.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/mocked-config-unittest.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/mocked-config.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/mocked_map_parameters.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/configs/retry-config.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/executors/argo-map-sequential.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/executors/local-container-override.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/executors/step_overrides_container.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/executors/step_overrides_container.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/generated-argo-pipeline.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/iris_demo.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/mnist/baseline_comparison.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/mnist/hyper_parameter_tuning.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/mnist/modular_source.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/mnist/parameters.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/mnist/parameters_source.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/mnist/source.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/reddit_text_classification/parameters.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/reddit_text_classification/pipeline.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/reddit_text_classification/steps.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/README.md +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/catalog/file_system.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/catalog/pyproject.toml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/job_executor/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/job_executor/k8s.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/job_executor/k8s_job_spec.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/job_executor/local.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/job_executor/local_container.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/job_executor/pyproject.toml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/nodes/nodes.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/nodes/pyproject.toml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/argo.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/argo_specification.yaml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/local_container.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/mocked.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/pyproject.toml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/pipeline_executor/retry.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/chunked_fs.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/db/implementation_FF.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/db/integration_FF.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/file_system.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/generic_chunked.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/run_log_store/pyproject.toml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/secrets/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/secrets/dotenv.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/extensions/secrets/pyproject.toml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/mkdocs.yml +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/catalog.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/cli.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/defaults.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/entrypoints.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/exceptions.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/graph.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/names.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/nodes.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/parameters.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/pickler.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/sdk.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/secrets.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/tasks.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/runnable/utils.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/conftest.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/catalog/test_catalog_extension.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/catalog/test_file_system.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/pipeline_executor/test_argo_executor.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/pipeline_executor/test_generic_executor.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/pipeline_executor/test_local_executor.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/run_log_store/__init__.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/run_log_store/test_file_system.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/secrets/test_dotenv.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/extensions/test_node_extensions.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_catalog.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_datastore.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_executor.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_graph.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_nodes.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_parmeters.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_sdk.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_secrets.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/runnable/test_utils.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tests/test_examples.py +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/tox.ini +0 -0
- {runnable-0.16.0 → runnable-0.17.0}/uv.lock +0 -0
@@ -1,5 +1,7 @@
|
|
1
1
|
import logging
|
2
2
|
|
3
|
+
from pydantic import Field, PrivateAttr
|
4
|
+
|
3
5
|
from extensions.pipeline_executor import GenericPipelineExecutor
|
4
6
|
from runnable import defaults
|
5
7
|
from runnable.defaults import TypeMapVariable
|
@@ -22,7 +24,18 @@ class LocalExecutor(GenericPipelineExecutor):
|
|
22
24
|
"""
|
23
25
|
|
24
26
|
service_name: str = "local"
|
25
|
-
|
27
|
+
|
28
|
+
object_serialisation: bool = Field(default=True)
|
29
|
+
|
30
|
+
_is_local: bool = PrivateAttr(default=True)
|
31
|
+
|
32
|
+
def execute_from_graph(
|
33
|
+
self, node: BaseNode, map_variable: TypeMapVariable = None, **kwargs
|
34
|
+
):
|
35
|
+
if not self.object_serialisation:
|
36
|
+
self._context.object_serialisation = False
|
37
|
+
|
38
|
+
super().execute_from_graph(node=node, map_variable=map_variable, **kwargs)
|
26
39
|
|
27
40
|
def trigger_node_execution(
|
28
41
|
self, node: BaseNode, map_variable: TypeMapVariable = None, **kwargs
|
@@ -47,30 +60,3 @@ class LocalExecutor(GenericPipelineExecutor):
|
|
47
60
|
map_variable (dict[str, str], optional): _description_. Defaults to None.
|
48
61
|
"""
|
49
62
|
self._execute_node(node=node, map_variable=map_variable, **kwargs)
|
50
|
-
|
51
|
-
# def execute_job(self, node: TaskNode):
|
52
|
-
# """
|
53
|
-
# Set up the step log and call the execute node
|
54
|
-
|
55
|
-
# Args:
|
56
|
-
# node (BaseNode): _description_
|
57
|
-
# """
|
58
|
-
|
59
|
-
# step_log = self._context.run_log_store.create_step_log(
|
60
|
-
# node.name, node._get_step_log_name(map_variable=None)
|
61
|
-
# )
|
62
|
-
|
63
|
-
# self.add_code_identities(node=node, step_log=step_log)
|
64
|
-
|
65
|
-
# step_log.step_type = node.node_type
|
66
|
-
# step_log.status = defaults.PROCESSING
|
67
|
-
# self._context.run_log_store.add_step_log(step_log, self._context.run_id)
|
68
|
-
# self.execute_node(node=node)
|
69
|
-
|
70
|
-
# # Update the run log status
|
71
|
-
# step_log = self._context.run_log_store.get_step_log(
|
72
|
-
# node._get_step_log_name(), self._context.run_id
|
73
|
-
# )
|
74
|
-
# self._context.run_log_store.update_run_log_status(
|
75
|
-
# run_id=self._context.run_id, status=step_log.status
|
76
|
-
# )
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from typing import Dict, List, Optional
|
1
|
+
from typing import Any, Dict, List, Optional
|
2
2
|
|
3
3
|
from pydantic import BaseModel, ConfigDict, Field, SerializeAsAny
|
4
4
|
from rich.progress import Progress
|
@@ -29,6 +29,8 @@ class Context(BaseModel):
|
|
29
29
|
from_sdk: bool = False
|
30
30
|
|
31
31
|
run_id: str = ""
|
32
|
+
object_serialisation: bool = True
|
33
|
+
return_objects: Dict[str, Any] = {}
|
32
34
|
|
33
35
|
tag: str = ""
|
34
36
|
variables: Dict[str, str] = {}
|
@@ -98,22 +98,33 @@ class ObjectParameter(BaseModel):
|
|
98
98
|
@computed_field # type: ignore
|
99
99
|
@property
|
100
100
|
def description(self) -> str:
|
101
|
-
|
101
|
+
if context.run_context.object_serialisation:
|
102
|
+
return f"Pickled object stored in catalog as: {self.value}"
|
103
|
+
|
104
|
+
return f"Object stored in memory as: {self.value}"
|
102
105
|
|
103
106
|
@property
|
104
107
|
def file_name(self) -> str:
|
105
108
|
return f"{self.value}{context.run_context.pickler.extension}"
|
106
109
|
|
107
110
|
def get_value(self) -> Any:
|
108
|
-
#
|
109
|
-
|
111
|
+
# If there was no serialisation, return the object from the return objects
|
112
|
+
if not context.run_context.object_serialisation:
|
113
|
+
return context.run_context.return_objects[self.value]
|
110
114
|
|
115
|
+
# If the object was serialised, get it from the catalog
|
116
|
+
catalog_handler = context.run_context.catalog_handler
|
111
117
|
catalog_handler.get(name=self.file_name, run_id=context.run_context.run_id)
|
112
118
|
obj = context.run_context.pickler.load(path=self.file_name)
|
113
119
|
os.remove(self.file_name) # Remove after loading
|
114
120
|
return obj
|
115
121
|
|
116
122
|
def put_object(self, data: Any) -> None:
|
123
|
+
if not context.run_context.object_serialisation:
|
124
|
+
context.run_context.return_objects[self.value] = data
|
125
|
+
return
|
126
|
+
|
127
|
+
# If the object was serialised, put it in the catalog
|
117
128
|
context.run_context.pickler.dump(data=data, path=self.file_name)
|
118
129
|
|
119
130
|
catalog_handler = context.run_context.catalog_handler
|
@@ -34,9 +34,7 @@ class BaseExecutor(ABC, BaseModel):
|
|
34
34
|
service_name: str = ""
|
35
35
|
service_type: str = "executor"
|
36
36
|
|
37
|
-
_is_local: bool = (
|
38
|
-
False # This is a flag to indicate whether the executor is local or not.
|
39
|
-
)
|
37
|
+
_is_local: bool = PrivateAttr(default=False)
|
40
38
|
|
41
39
|
model_config = ConfigDict(extra="forbid")
|
42
40
|
|
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
|
{runnable-0.16.0 → runnable-0.17.0}/examples/03-parameters/static_parameters_non_python.yaml
RENAMED
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
|
{runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/reddit_text_classification/parameters.yaml
RENAMED
File without changes
|
{runnable-0.16.0 → runnable-0.17.0}/examples/tutorials/reddit_text_classification/pipeline.py
RENAMED
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
|
{runnable-0.16.0 → runnable-0.17.0}/tests/extensions/pipeline_executor/test_argo_executor.py
RENAMED
File without changes
|
{runnable-0.16.0 → runnable-0.17.0}/tests/extensions/pipeline_executor/test_generic_executor.py
RENAMED
File without changes
|
{runnable-0.16.0 → runnable-0.17.0}/tests/extensions/pipeline_executor/test_local_executor.py
RENAMED
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
|