metaflow 2.17.4__tar.gz → 2.18.0__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.
- {metaflow-2.17.4/metaflow.egg-info → metaflow-2.18.0}/PKG-INFO +2 -2
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/lint.py +22 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_workflows.py +136 -4
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/package_cli.py +1 -1
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/task.py +3 -1
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_configs/config_parameters.py +3 -1
- metaflow-2.18.0/metaflow/version.py +1 -0
- {metaflow-2.17.4 → metaflow-2.18.0/metaflow.egg-info}/PKG-INFO +2 -2
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow.egg-info/requires.txt +1 -1
- metaflow-2.17.4/metaflow/version.py +0 -1
- {metaflow-2.17.4 → metaflow-2.18.0}/LICENSE +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/MANIFEST.in +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/devtools/Makefile +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/devtools/Tiltfile +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/devtools/pick_services.sh +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/R.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/_bashcomplete.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/_compat.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/_termui_impl.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/_textwrap.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/_unicodefun.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/_winconsole.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/core.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/decorators.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/exceptions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/formatting.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/globals.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/parser.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/termui.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/testing.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/types.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/click/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/imghdr/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_adapters.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_collections.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_compat.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_functools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_itertools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_meta.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/_text.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/importlib_metadata/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/_elffile.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/_manylinux.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/_musllinux.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/_parser.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/_structures.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/_tokenizer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/markers.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/requirements.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/specifiers.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/tags.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/packaging/version.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_checkers.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_config.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_decorators.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_exceptions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_functions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_importhook.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_memo.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_pytest_plugin.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_suppression.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_transformer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_union_transformer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typeguard/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/typing_extensions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_adapters.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_collections.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_compat.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_functools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_itertools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_meta.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_text.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/typing_extensions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/zipp.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_adapters.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_collections.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_compat.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_functools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_itertools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_meta.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_text.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_checkers.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_config.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_decorators.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_exceptions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_functions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_importhook.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_memo.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_pytest_plugin.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_suppression.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_transformer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_union_transformer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typeguard/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/typing_extensions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/zipp.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/composer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/constructor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/cyaml.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/dumper.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/emitter.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/error.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/events.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/loader.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/nodes.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/parser.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/reader.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/representer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/resolver.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/scanner.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/serializer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/yaml/tokens.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/zipp.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cards.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_args.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_components/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_components/dump_cmd.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_components/init_cmd.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_components/run_cmds.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_components/step_cmd.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cli_components/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/client/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/client/core.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/client/filecache.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/clone_util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/code/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/configure_cmd.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/develop/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/develop/stub_generator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/develop/stubs.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/main_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/make_wrapper.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/tutorials_cmd.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd/util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/cmd_with_io.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/content_addressed_store.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/datastore_set.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/datastore_storage.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/exceptions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/flow_datastore.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/inputs.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/datastore/task_datastore.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/debug.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/decorators.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/event_logger.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/events.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/exception.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/extension_support/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/extension_support/_empty_file.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/extension_support/cmd.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/extension_support/integrations.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/extension_support/plugins.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/flowspec.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/graph.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/includefile.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/integrations.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/meta_files.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metadata_provider/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metadata_provider/heartbeat.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metadata_provider/metadata.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metadata_provider/util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_config.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_config_funcs.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_current.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_environment.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_git.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_profile.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/metaflow_version.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/mflog/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/mflog/mflog.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/mflog/save_logs.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/mflog/save_logs_periodically.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/mflog/tee.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/monitor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/multicore_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/package/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/packaging_sys/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/packaging_sys/backend.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/packaging_sys/distribution_support.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/packaging_sys/tar_backend.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/packaging_sys/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/packaging_sys/v1.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/parameters.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/airflow.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/airflow_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/airflow_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/airflow_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/dag.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/exception.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/plumbing/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/plumbing/set_parameters.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/sensors/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/sensors/base_sensor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/sensors/external_task_sensor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/airflow/sensors/s3_sensor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_events.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_workflows_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_workflows_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_workflows_deployer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/argo_workflows_deployer_objects.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/capture_error.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/conditional_input_paths.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/exit_hooks.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/generate_input_paths.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/argo/jobset_input_paths.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/aws_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/aws_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/batch/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/batch/batch.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/batch/batch_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/batch/batch_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/batch/batch_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/secrets_manager/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/secrets_manager/aws_secrets_manager_secrets_provider.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/dynamo_db_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/event_bridge_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/production_token.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/schedule_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/set_batch_environment.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/step_functions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/step_functions_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/step_functions_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/step_functions_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/step_functions_deployer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/aws/step_functions/step_functions_deployer_objects.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/azure_credential.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/azure_exceptions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/azure_secret_manager_secrets_provider.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/azure_tail.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/azure_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/blob_service_client_factory.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/azure/includefile_support.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_creator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_datastore.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/base.html +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/basic.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/bundle.css +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/card.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/chevron/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/chevron/main.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/chevron/metadata.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/chevron/renderer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/chevron/tokenizer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/components.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/convert_to_native_type.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/main.css +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/main.js +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/renderer_tools.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_modules/test_cards.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_resolver.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_server.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/card_viewer/viewer.html +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/component_serializer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/exception.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/cards/metadata.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/catch_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datastores/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datastores/azure_storage.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datastores/gs_storage.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datastores/local_storage.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datastores/s3_storage.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/local.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/s3/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/s3/s3.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/s3/s3op.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/s3/s3tail.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/datatools/s3/s3util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/debug_logger.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/debug_monitor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/client_modules.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/communication/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/communication/bytestream.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/communication/channel.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/communication/socket_bytestream.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/communication/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/configurations/emulate_test_lib/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/configurations/emulate_test_lib/overrides.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/configurations/emulate_test_lib/server_mappings.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/configurations/test_lib_impl/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/configurations/test_lib_impl/test_lib.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/consts.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/data_transferer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/exception_transferer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/override_decorators.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/server.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/stub.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/env_escape/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/environment_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/events_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/exit_hook/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/exit_hook/exit_hook_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/exit_hook/exit_hook_script.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/frameworks/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/frameworks/pytorch.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/gcp_secret_manager_secrets_provider.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/gs_exceptions.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/gs_storage_client_factory.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/gs_tail.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/gs_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/gcp/includefile_support.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kube_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kubernetes.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kubernetes_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kubernetes_client.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kubernetes_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kubernetes_job.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/kubernetes_jobsets.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/spot_metadata_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/kubernetes/spot_monitor_sidecar.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/logs_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/metadata_providers/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/metadata_providers/local.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/metadata_providers/service.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/parallel_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/project_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/bootstrap.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/conda_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/conda_environment.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/micromamba.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/parsers.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/pip.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/pypi_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/pypi_environment.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/pypi/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/resources_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/retry_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/secrets/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/secrets/inline_secrets_provider.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/secrets/secrets_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/secrets/secrets_func.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/secrets/secrets_spec.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/secrets/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/storage_executor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/tag_cli.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/test_unbounded_foreach_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/timeout_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/uv/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/uv/bootstrap.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/plugins/uv/uv_environment.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/procpoll.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/py.typed +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/pylint_wrapper.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/click_api.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/deployer.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/deployer_impl.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/metaflow_runner.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/nbdeploy.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/nbrun.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/subprocess_manager.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runner/utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/runtime.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/sidecar/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/sidecar/sidecar.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/sidecar/sidecar_messages.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/sidecar/sidecar_subprocess.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/sidecar/sidecar_worker.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/system/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/system/system_logger.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/system/system_monitor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/system/system_utils.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tagging_util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tracing/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tracing/propagator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tracing/span_exporter.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tracing/tracing_modules.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tuple_util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/00-helloworld/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/00-helloworld/helloworld.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/01-playlist/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/01-playlist/movies.csv +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/01-playlist/playlist.ipynb +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/01-playlist/playlist.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/02-statistics/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/02-statistics/movies.csv +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/02-statistics/stats.ipynb +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/02-statistics/stats.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/03-playlist-redux/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/03-playlist-redux/playlist.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/04-playlist-plus/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/04-playlist-plus/playlist.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/05-hello-cloud/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/05-hello-cloud/hello-cloud.ipynb +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/05-hello-cloud/hello-cloud.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/06-statistics-redux/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/06-statistics-redux/stats.ipynb +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/07-worldview/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/07-worldview/worldview.ipynb +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/08-autopilot/README.md +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/tutorials/08-autopilot/autopilot.ipynb +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/unbounded_foreach.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_configs/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_configs/config_options.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_decorators/__init__.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_decorators/common.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_decorators/mutable_flow.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_decorators/mutable_step.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_decorators/user_flow_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/user_decorators/user_step_decorator.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/util.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow/vendor.py +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow.egg-info/SOURCES.txt +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow.egg-info/dependency_links.txt +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow.egg-info/entry_points.txt +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/metaflow.egg-info/top_level.txt +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/setup.cfg +0 -0
- {metaflow-2.17.4 → metaflow-2.18.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: metaflow
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.18.0
|
4
4
|
Summary: Metaflow: More AI and ML, Less Engineering
|
5
5
|
Author: Metaflow Developers
|
6
6
|
Author-email: help@metaflow.org
|
@@ -26,7 +26,7 @@ License-File: LICENSE
|
|
26
26
|
Requires-Dist: requests
|
27
27
|
Requires-Dist: boto3
|
28
28
|
Provides-Extra: stubs
|
29
|
-
Requires-Dist: metaflow-stubs==2.
|
29
|
+
Requires-Dist: metaflow-stubs==2.18.0; extra == "stubs"
|
30
30
|
Dynamic: author
|
31
31
|
Dynamic: author-email
|
32
32
|
Dynamic: classifier
|
@@ -416,3 +416,25 @@ def check_nested_foreach(graph):
|
|
416
416
|
if node.type == "foreach":
|
417
417
|
if any(graph[p].type == "foreach" for p in node.split_parents):
|
418
418
|
raise LintWarn(msg.format(node), node.func_lineno, node.source_file)
|
419
|
+
|
420
|
+
|
421
|
+
@linter.ensure_static_graph
|
422
|
+
@linter.check
|
423
|
+
def check_ambiguous_joins(graph):
|
424
|
+
for node in graph:
|
425
|
+
if node.type == "join":
|
426
|
+
problematic_parents = [
|
427
|
+
p_name
|
428
|
+
for p_name in node.in_funcs
|
429
|
+
if graph[p_name].type == "split-switch"
|
430
|
+
]
|
431
|
+
if problematic_parents:
|
432
|
+
msg = (
|
433
|
+
"A conditional path cannot lead directly to a join step.\n"
|
434
|
+
"In your conditional step(s) {parents}, one or more of the possible paths transition directly to the join step {join_name}.\n"
|
435
|
+
"As a workaround, please introduce an intermediate, unconditional step on that specific path before joining."
|
436
|
+
).format(
|
437
|
+
parents=", ".join("*%s*" % p for p in problematic_parents),
|
438
|
+
join_name="*%s*" % node.name,
|
439
|
+
)
|
440
|
+
raise LintWarn(msg, node.func_lineno, node.source_file)
|
@@ -926,6 +926,7 @@ class ArgoWorkflows(object):
|
|
926
926
|
self.conditional_nodes = set()
|
927
927
|
self.conditional_join_nodes = set()
|
928
928
|
self.matching_conditional_join_dict = {}
|
929
|
+
self.recursive_nodes = set()
|
929
930
|
|
930
931
|
node_conditional_parents = {}
|
931
932
|
node_conditional_branches = {}
|
@@ -948,6 +949,12 @@ class ArgoWorkflows(object):
|
|
948
949
|
)
|
949
950
|
node_conditional_parents[node.name] = conditional_parents
|
950
951
|
|
952
|
+
# check for recursion. this split is recursive if any of its out functions are itself.
|
953
|
+
if any(
|
954
|
+
out_func for out_func in node.out_funcs if out_func == node.name
|
955
|
+
):
|
956
|
+
self.recursive_nodes.add(node.name)
|
957
|
+
|
951
958
|
if conditional_parents and not node.type == "split-switch":
|
952
959
|
node_conditional_parents[node.name] = conditional_parents
|
953
960
|
conditional_branch = conditional_branch + [node.name]
|
@@ -1033,6 +1040,9 @@ class ArgoWorkflows(object):
|
|
1033
1040
|
def _is_conditional_join_node(self, node):
|
1034
1041
|
return node.name in self.conditional_join_nodes
|
1035
1042
|
|
1043
|
+
def _is_recursive_node(self, node):
|
1044
|
+
return node.name in self.recursive_nodes
|
1045
|
+
|
1036
1046
|
def _matching_conditional_join(self, node):
|
1037
1047
|
return self.matching_conditional_join_dict.get(node.name, None)
|
1038
1048
|
|
@@ -1044,6 +1054,7 @@ class ArgoWorkflows(object):
|
|
1044
1054
|
templates=None,
|
1045
1055
|
dag_tasks=None,
|
1046
1056
|
parent_foreach=None,
|
1057
|
+
seen=None,
|
1047
1058
|
): # Returns Tuple[List[Template], List[DAGTask]]
|
1048
1059
|
""" """
|
1049
1060
|
# Every for-each node results in a separate subDAG and an equivalent
|
@@ -1053,6 +1064,8 @@ class ArgoWorkflows(object):
|
|
1053
1064
|
# of the for-each node.
|
1054
1065
|
|
1055
1066
|
# Emit if we have reached the end of the sub workflow
|
1067
|
+
if seen is None:
|
1068
|
+
seen = []
|
1056
1069
|
if dag_tasks is None:
|
1057
1070
|
dag_tasks = []
|
1058
1071
|
if templates is None:
|
@@ -1060,6 +1073,13 @@ class ArgoWorkflows(object):
|
|
1060
1073
|
|
1061
1074
|
if exit_node is not None and exit_node is node.name:
|
1062
1075
|
return templates, dag_tasks
|
1076
|
+
if node.name in seen:
|
1077
|
+
return templates, dag_tasks
|
1078
|
+
|
1079
|
+
seen.append(node.name)
|
1080
|
+
|
1081
|
+
# helper variable for recursive conditional inputs
|
1082
|
+
has_foreach_inputs = False
|
1063
1083
|
if node.name == "start":
|
1064
1084
|
# Start node has no dependencies.
|
1065
1085
|
dag_task = DAGTask(self._sanitize(node.name)).template(
|
@@ -1073,9 +1093,10 @@ class ArgoWorkflows(object):
|
|
1073
1093
|
# vs what is a "num_parallel" based foreach (i.e. something that follows gang semantics.)
|
1074
1094
|
# A `regular` foreach is basically any arbitrary kind of foreach.
|
1075
1095
|
):
|
1096
|
+
# helper variable for recursive conditional inputs
|
1097
|
+
has_foreach_inputs = True
|
1076
1098
|
# Child of a foreach node needs input-paths as well as split-index
|
1077
1099
|
# This child is the first node of the sub workflow and has no dependency
|
1078
|
-
|
1079
1100
|
parameters = [
|
1080
1101
|
Parameter("input-paths").value("{{inputs.parameters.input-paths}}"),
|
1081
1102
|
Parameter("split-index").value("{{inputs.parameters.split-index}}"),
|
@@ -1253,6 +1274,7 @@ class ArgoWorkflows(object):
|
|
1253
1274
|
templates,
|
1254
1275
|
dag_tasks,
|
1255
1276
|
parent_foreach,
|
1277
|
+
seen,
|
1256
1278
|
)
|
1257
1279
|
return _visit(
|
1258
1280
|
self.graph[node.matching_join],
|
@@ -1260,8 +1282,102 @@ class ArgoWorkflows(object):
|
|
1260
1282
|
templates,
|
1261
1283
|
dag_tasks,
|
1262
1284
|
parent_foreach,
|
1285
|
+
seen,
|
1263
1286
|
)
|
1264
1287
|
elif node.type == "split-switch":
|
1288
|
+
if self._is_recursive_node(node):
|
1289
|
+
# we need an additional recursive template if the step is recursive
|
1290
|
+
# NOTE: in the recursive case, the original step is renamed in the container templates to 'recursive-<step_name>'
|
1291
|
+
# so that we do not have to touch the step references in the DAG.
|
1292
|
+
#
|
1293
|
+
# NOTE: The way that recursion in Argo Workflows is achieved is with the following structure:
|
1294
|
+
# - the usual 'example-step' template which would match example_step in flow code is renamed to 'recursive-example-step'
|
1295
|
+
# - templates has another template with the original task name: 'example-step'
|
1296
|
+
# - the template 'example-step' in turn has steps
|
1297
|
+
# - 'example-step-internal' which uses the metaflow step executing template 'recursive-example-step'
|
1298
|
+
# - 'example-step-recursion' which calls the parent template 'example-step' if switch-step output from 'example-step-internal' matches the condition.
|
1299
|
+
sanitized_name = self._sanitize(node.name)
|
1300
|
+
templates.append(
|
1301
|
+
Template(sanitized_name)
|
1302
|
+
.steps(
|
1303
|
+
[
|
1304
|
+
WorkflowStep()
|
1305
|
+
.name("%s-internal" % sanitized_name)
|
1306
|
+
.template("recursive-%s" % sanitized_name)
|
1307
|
+
.arguments(
|
1308
|
+
Arguments().parameters(
|
1309
|
+
[
|
1310
|
+
Parameter("input-paths").value(
|
1311
|
+
"{{inputs.parameters.input-paths}}"
|
1312
|
+
)
|
1313
|
+
]
|
1314
|
+
# Add the additional inputs required by specific node types.
|
1315
|
+
# We do not need to cover joins or @parallel, as a split-switch step can not be either one of these.
|
1316
|
+
+ (
|
1317
|
+
[
|
1318
|
+
Parameter("split-index").value(
|
1319
|
+
"{{inputs.parameters.split-index}}"
|
1320
|
+
)
|
1321
|
+
]
|
1322
|
+
if has_foreach_inputs
|
1323
|
+
else []
|
1324
|
+
)
|
1325
|
+
)
|
1326
|
+
)
|
1327
|
+
]
|
1328
|
+
)
|
1329
|
+
.steps(
|
1330
|
+
[
|
1331
|
+
WorkflowStep()
|
1332
|
+
.name("%s-recursion" % sanitized_name)
|
1333
|
+
.template(sanitized_name)
|
1334
|
+
.when(
|
1335
|
+
"{{steps.%s-internal.outputs.parameters.switch-step}}==%s"
|
1336
|
+
% (sanitized_name, node.name)
|
1337
|
+
)
|
1338
|
+
.arguments(
|
1339
|
+
Arguments().parameters(
|
1340
|
+
[
|
1341
|
+
Parameter("input-paths").value(
|
1342
|
+
"argo-{{workflow.name}}/%s/{{steps.%s-internal.outputs.parameters.task-id}}"
|
1343
|
+
% (node.name, sanitized_name)
|
1344
|
+
)
|
1345
|
+
]
|
1346
|
+
+ (
|
1347
|
+
[
|
1348
|
+
Parameter("split-index").value(
|
1349
|
+
"{{inputs.parameters.split-index}}"
|
1350
|
+
)
|
1351
|
+
]
|
1352
|
+
if has_foreach_inputs
|
1353
|
+
else []
|
1354
|
+
)
|
1355
|
+
)
|
1356
|
+
),
|
1357
|
+
]
|
1358
|
+
)
|
1359
|
+
.inputs(Inputs().parameters(parameters))
|
1360
|
+
.outputs(
|
1361
|
+
# NOTE: We try to read the output parameters from the recursive template call first (<step>-recursion), and the internal step second (<step>-internal).
|
1362
|
+
# This guarantees that we always get the output parameters of the last recursive step that executed.
|
1363
|
+
Outputs().parameters(
|
1364
|
+
[
|
1365
|
+
Parameter("task-id").valueFrom(
|
1366
|
+
{
|
1367
|
+
"expression": "(steps['%s-recursion']?.outputs ?? steps['%s-internal']?.outputs).parameters['task-id']"
|
1368
|
+
% (sanitized_name, sanitized_name)
|
1369
|
+
}
|
1370
|
+
),
|
1371
|
+
Parameter("switch-step").valueFrom(
|
1372
|
+
{
|
1373
|
+
"expression": "(steps['%s-recursion']?.outputs ?? steps['%s-internal']?.outputs).parameters['switch-step']"
|
1374
|
+
% (sanitized_name, sanitized_name)
|
1375
|
+
}
|
1376
|
+
),
|
1377
|
+
]
|
1378
|
+
)
|
1379
|
+
)
|
1380
|
+
)
|
1265
1381
|
for n in node.out_funcs:
|
1266
1382
|
_visit(
|
1267
1383
|
self.graph[n],
|
@@ -1269,6 +1385,7 @@ class ArgoWorkflows(object):
|
|
1269
1385
|
templates,
|
1270
1386
|
dag_tasks,
|
1271
1387
|
parent_foreach,
|
1388
|
+
seen,
|
1272
1389
|
)
|
1273
1390
|
|
1274
1391
|
return _visit(
|
@@ -1277,6 +1394,7 @@ class ArgoWorkflows(object):
|
|
1277
1394
|
templates,
|
1278
1395
|
dag_tasks,
|
1279
1396
|
parent_foreach,
|
1397
|
+
seen,
|
1280
1398
|
)
|
1281
1399
|
# For foreach nodes generate a new sub DAGTemplate
|
1282
1400
|
# We do this for "regular" foreaches (ie. `self.next(self.a, foreach=)`)
|
@@ -1367,6 +1485,7 @@ class ArgoWorkflows(object):
|
|
1367
1485
|
templates,
|
1368
1486
|
[],
|
1369
1487
|
node.name,
|
1488
|
+
seen,
|
1370
1489
|
)
|
1371
1490
|
|
1372
1491
|
# How do foreach's work on Argo:
|
@@ -1500,6 +1619,7 @@ class ArgoWorkflows(object):
|
|
1500
1619
|
templates,
|
1501
1620
|
dag_tasks,
|
1502
1621
|
parent_foreach,
|
1622
|
+
seen,
|
1503
1623
|
)
|
1504
1624
|
# For linear nodes continue traversing to the next node
|
1505
1625
|
if node.type in ("linear", "join", "start"):
|
@@ -1509,6 +1629,7 @@ class ArgoWorkflows(object):
|
|
1509
1629
|
templates,
|
1510
1630
|
dag_tasks,
|
1511
1631
|
parent_foreach,
|
1632
|
+
seen,
|
1512
1633
|
)
|
1513
1634
|
else:
|
1514
1635
|
raise ArgoWorkflowsException(
|
@@ -1773,8 +1894,10 @@ class ArgoWorkflows(object):
|
|
1773
1894
|
# foreach-joins straight out of conditional branches are not yet supported
|
1774
1895
|
if self._is_conditional_join_node(node):
|
1775
1896
|
raise ArgoWorkflowsException(
|
1776
|
-
"
|
1777
|
-
"As a workaround,
|
1897
|
+
"Conditional steps inside a foreach that transition directly into a join step are not currently supported.\n"
|
1898
|
+
"As a workaround, add a common step after the conditional steps %s "
|
1899
|
+
"that will transition to a join."
|
1900
|
+
% ", ".join("*%s*" % f for f in node.in_funcs)
|
1778
1901
|
)
|
1779
1902
|
# Set aggregated input-paths for a for-each join
|
1780
1903
|
foreach_step = next(
|
@@ -2290,8 +2413,13 @@ class ArgoWorkflows(object):
|
|
2290
2413
|
)
|
2291
2414
|
)
|
2292
2415
|
else:
|
2416
|
+
template_name = self._sanitize(node.name)
|
2417
|
+
if self._is_recursive_node(node):
|
2418
|
+
# The recursive template has the original step name,
|
2419
|
+
# this becomes a template within the recursive ones 'steps'
|
2420
|
+
template_name = self._sanitize("recursive-%s" % node.name)
|
2293
2421
|
yield (
|
2294
|
-
Template(
|
2422
|
+
Template(template_name)
|
2295
2423
|
# Set @timeout values
|
2296
2424
|
.active_deadline_seconds(run_time_limit)
|
2297
2425
|
# Set service account
|
@@ -3750,6 +3878,10 @@ class WorkflowStep(object):
|
|
3750
3878
|
self.payload["template"] = str(template)
|
3751
3879
|
return self
|
3752
3880
|
|
3881
|
+
def arguments(self, arguments):
|
3882
|
+
self.payload["arguments"] = arguments.to_json()
|
3883
|
+
return self
|
3884
|
+
|
3753
3885
|
def when(self, condition):
|
3754
3886
|
self.payload["when"] = str(condition)
|
3755
3887
|
return self
|
@@ -60,7 +60,7 @@ def list(obj, archive=False):
|
|
60
60
|
@click.pass_obj
|
61
61
|
def save(obj, path):
|
62
62
|
with open(path, "wb") as f:
|
63
|
-
f.write(obj.package.blob
|
63
|
+
f.write(obj.package.blob)
|
64
64
|
obj.echo(
|
65
65
|
"Code package saved in *%s* with metadata: %s"
|
66
66
|
% (path, obj.package.package_metadata),
|
@@ -121,8 +121,10 @@ class MetaflowTask(object):
|
|
121
121
|
r = w.post_step(orig_step_func.name, self.flow, raised_exception)
|
122
122
|
except Exception as ex:
|
123
123
|
r = ex
|
124
|
-
if r is None
|
124
|
+
if r is None:
|
125
125
|
raised_exception = None
|
126
|
+
elif isinstance(r, Exception):
|
127
|
+
raised_exception = r
|
126
128
|
elif isinstance(r, tuple):
|
127
129
|
if len(r) == 2:
|
128
130
|
raised_exception, fake_next_call_args = r
|
@@ -271,6 +271,9 @@ class ConfigValue(collections.abc.Mapping, dict):
|
|
271
271
|
v = obj
|
272
272
|
return v
|
273
273
|
|
274
|
+
def __reduce__(self):
|
275
|
+
return (self.__class__, (self.to_dict(),))
|
276
|
+
|
274
277
|
|
275
278
|
class DelayEvaluator(collections.abc.Mapping):
|
276
279
|
"""
|
@@ -484,7 +487,6 @@ class Config(Parameter, collections.abc.Mapping):
|
|
484
487
|
parser: Optional[Union[str, Callable[[str], Dict[Any, Any]]]] = None,
|
485
488
|
**kwargs: Dict[str, str]
|
486
489
|
):
|
487
|
-
|
488
490
|
if default is not None and default_value is not None:
|
489
491
|
raise MetaflowException(
|
490
492
|
"For config '%s', you can only specify default or default_value, not both"
|
@@ -0,0 +1 @@
|
|
1
|
+
metaflow_version = "2.18.0"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: metaflow
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.18.0
|
4
4
|
Summary: Metaflow: More AI and ML, Less Engineering
|
5
5
|
Author: Metaflow Developers
|
6
6
|
Author-email: help@metaflow.org
|
@@ -26,7 +26,7 @@ License-File: LICENSE
|
|
26
26
|
Requires-Dist: requests
|
27
27
|
Requires-Dist: boto3
|
28
28
|
Provides-Extra: stubs
|
29
|
-
Requires-Dist: metaflow-stubs==2.
|
29
|
+
Requires-Dist: metaflow-stubs==2.18.0; extra == "stubs"
|
30
30
|
Dynamic: author
|
31
31
|
Dynamic: author-email
|
32
32
|
Dynamic: classifier
|
@@ -1 +0,0 @@
|
|
1
|
-
metaflow_version = "2.17.4"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_6/importlib_metadata/_collections.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
|
{metaflow-2.17.4 → metaflow-2.18.0}/metaflow/_vendor/v3_7/importlib_metadata/_collections.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
|