metaflow-stubs 2.12.34__py2.py3-none-any.whl → 2.12.36__py2.py3-none-any.whl
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-stubs/__init__.pyi +187 -187
- metaflow-stubs/cards.pyi +2 -2
- metaflow-stubs/cli.pyi +2 -2
- metaflow-stubs/client/__init__.pyi +2 -2
- metaflow-stubs/client/core.pyi +5 -5
- metaflow-stubs/client/filecache.pyi +2 -2
- metaflow-stubs/clone_util.pyi +2 -2
- metaflow-stubs/events.pyi +3 -3
- metaflow-stubs/exception.pyi +2 -2
- metaflow-stubs/flowspec.pyi +4 -4
- metaflow-stubs/generated_for.txt +1 -1
- metaflow-stubs/includefile.pyi +3 -3
- metaflow-stubs/info_file.pyi +2 -2
- metaflow-stubs/metadata_provider/__init__.pyi +2 -2
- metaflow-stubs/metadata_provider/heartbeat.pyi +2 -2
- metaflow-stubs/metadata_provider/metadata.pyi +2 -2
- metaflow-stubs/metadata_provider/util.pyi +2 -2
- metaflow-stubs/metaflow_config.pyi +4 -2
- metaflow-stubs/metaflow_current.pyi +5 -5
- metaflow-stubs/mflog/__init__.pyi +2 -2
- metaflow-stubs/mflog/mflog.pyi +2 -2
- metaflow-stubs/multicore_utils.pyi +2 -2
- metaflow-stubs/parameters.pyi +3 -3
- metaflow-stubs/plugins/__init__.pyi +14 -14
- metaflow-stubs/plugins/airflow/__init__.pyi +2 -2
- metaflow-stubs/plugins/airflow/airflow.pyi +3 -2
- metaflow-stubs/plugins/airflow/airflow_cli.pyi +2 -2
- metaflow-stubs/plugins/airflow/airflow_decorator.pyi +2 -2
- metaflow-stubs/plugins/airflow/airflow_utils.pyi +2 -2
- metaflow-stubs/plugins/airflow/exception.pyi +2 -2
- metaflow-stubs/plugins/airflow/sensors/__init__.pyi +2 -2
- metaflow-stubs/plugins/airflow/sensors/base_sensor.pyi +2 -2
- metaflow-stubs/plugins/airflow/sensors/external_task_sensor.pyi +2 -2
- metaflow-stubs/plugins/airflow/sensors/s3_sensor.pyi +2 -2
- metaflow-stubs/plugins/argo/__init__.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_client.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_events.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_workflows.pyi +3 -2
- metaflow-stubs/plugins/argo/argo_workflows_cli.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_workflows_decorator.pyi +3 -3
- metaflow-stubs/plugins/argo/argo_workflows_deployer.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_workflows_deployer_objects.pyi +3 -3
- metaflow-stubs/plugins/aws/__init__.pyi +3 -3
- metaflow-stubs/plugins/aws/aws_client.pyi +2 -2
- metaflow-stubs/plugins/aws/aws_utils.pyi +2 -2
- metaflow-stubs/plugins/aws/batch/__init__.pyi +2 -2
- metaflow-stubs/plugins/aws/batch/batch.pyi +2 -2
- metaflow-stubs/plugins/aws/batch/batch_cli.pyi +2 -2
- metaflow-stubs/plugins/aws/batch/batch_client.pyi +2 -2
- metaflow-stubs/plugins/aws/batch/batch_decorator.pyi +2 -2
- metaflow-stubs/plugins/aws/secrets_manager/__init__.pyi +2 -2
- metaflow-stubs/plugins/aws/secrets_manager/aws_secrets_manager_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/__init__.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/dynamo_db_client.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/event_bridge_client.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/production_token.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/schedule_decorator.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/step_functions.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/step_functions_cli.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/step_functions_client.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/step_functions_decorator.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/step_functions_deployer.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/step_functions_deployer_objects.pyi +3 -3
- metaflow-stubs/plugins/azure/__init__.pyi +2 -2
- metaflow-stubs/plugins/azure/azure_credential.pyi +2 -2
- metaflow-stubs/plugins/azure/azure_exceptions.pyi +2 -2
- metaflow-stubs/plugins/azure/azure_secret_manager_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/azure/azure_utils.pyi +2 -2
- metaflow-stubs/plugins/azure/blob_service_client_factory.pyi +2 -2
- metaflow-stubs/plugins/azure/includefile_support.pyi +2 -2
- metaflow-stubs/plugins/cards/__init__.pyi +2 -2
- metaflow-stubs/plugins/cards/card_cli.pyi +2 -2
- metaflow-stubs/plugins/cards/card_client.pyi +3 -3
- metaflow-stubs/plugins/cards/card_creator.pyi +2 -2
- metaflow-stubs/plugins/cards/card_datastore.pyi +2 -2
- metaflow-stubs/plugins/cards/card_decorator.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/__init__.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/basic.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/card.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/chevron/__init__.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/chevron/main.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/chevron/metadata.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/chevron/renderer.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/chevron/tokenizer.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/components.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/convert_to_native_type.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/renderer_tools.pyi +2 -2
- metaflow-stubs/plugins/cards/card_modules/test_cards.pyi +2 -2
- metaflow-stubs/plugins/cards/card_resolver.pyi +2 -2
- metaflow-stubs/plugins/cards/component_serializer.pyi +2 -2
- metaflow-stubs/plugins/cards/exception.pyi +2 -2
- metaflow-stubs/plugins/catch_decorator.pyi +2 -2
- metaflow-stubs/plugins/datatools/__init__.pyi +2 -2
- metaflow-stubs/plugins/datatools/local.pyi +2 -2
- metaflow-stubs/plugins/datatools/s3/__init__.pyi +2 -2
- metaflow-stubs/plugins/datatools/s3/s3.pyi +4 -4
- metaflow-stubs/plugins/datatools/s3/s3tail.pyi +2 -2
- metaflow-stubs/plugins/datatools/s3/s3util.pyi +2 -2
- metaflow-stubs/plugins/debug_logger.pyi +2 -2
- metaflow-stubs/plugins/debug_monitor.pyi +2 -2
- metaflow-stubs/plugins/environment_decorator.pyi +2 -2
- metaflow-stubs/plugins/events_decorator.pyi +2 -2
- metaflow-stubs/plugins/frameworks/__init__.pyi +2 -2
- metaflow-stubs/plugins/frameworks/pytorch.pyi +2 -2
- metaflow-stubs/plugins/gcp/__init__.pyi +2 -2
- metaflow-stubs/plugins/gcp/gcp_secret_manager_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/gcp/gs_exceptions.pyi +2 -2
- metaflow-stubs/plugins/gcp/gs_storage_client_factory.pyi +2 -2
- metaflow-stubs/plugins/gcp/gs_utils.pyi +2 -2
- metaflow-stubs/plugins/gcp/includefile_support.pyi +2 -2
- metaflow-stubs/plugins/kubernetes/__init__.pyi +3 -3
- metaflow-stubs/plugins/kubernetes/kube_utils.pyi +8 -2
- metaflow-stubs/plugins/kubernetes/kubernetes.pyi +4 -4
- metaflow-stubs/plugins/kubernetes/kubernetes_cli.pyi +2 -2
- metaflow-stubs/plugins/kubernetes/kubernetes_client.pyi +2 -2
- metaflow-stubs/plugins/kubernetes/kubernetes_decorator.pyi +8 -2
- metaflow-stubs/plugins/kubernetes/kubernetes_job.pyi +3 -2
- metaflow-stubs/plugins/kubernetes/kubernetes_jobsets.pyi +3 -2
- metaflow-stubs/plugins/logs_cli.pyi +3 -3
- metaflow-stubs/plugins/package_cli.pyi +2 -2
- metaflow-stubs/plugins/parallel_decorator.pyi +2 -2
- metaflow-stubs/plugins/project_decorator.pyi +2 -2
- metaflow-stubs/plugins/pypi/__init__.pyi +3 -3
- metaflow-stubs/plugins/pypi/conda_decorator.pyi +2 -2
- metaflow-stubs/plugins/pypi/conda_environment.pyi +4 -4
- metaflow-stubs/plugins/pypi/pypi_decorator.pyi +2 -2
- metaflow-stubs/plugins/pypi/pypi_environment.pyi +2 -2
- metaflow-stubs/plugins/pypi/utils.pyi +2 -2
- metaflow-stubs/plugins/resources_decorator.pyi +2 -2
- metaflow-stubs/plugins/retry_decorator.pyi +2 -2
- metaflow-stubs/plugins/secrets/__init__.pyi +2 -2
- metaflow-stubs/plugins/secrets/inline_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/secrets/secrets_decorator.pyi +2 -2
- metaflow-stubs/plugins/storage_executor.pyi +2 -2
- metaflow-stubs/plugins/tag_cli.pyi +2 -2
- metaflow-stubs/plugins/test_unbounded_foreach_decorator.pyi +3 -3
- metaflow-stubs/plugins/timeout_decorator.pyi +2 -2
- metaflow-stubs/procpoll.pyi +2 -2
- metaflow-stubs/pylint_wrapper.pyi +2 -2
- metaflow-stubs/runner/__init__.pyi +2 -2
- metaflow-stubs/runner/deployer.pyi +29 -29
- metaflow-stubs/runner/deployer_impl.pyi +2 -2
- metaflow-stubs/runner/metaflow_runner.pyi +3 -3
- metaflow-stubs/runner/nbdeploy.pyi +2 -2
- metaflow-stubs/runner/nbrun.pyi +2 -2
- metaflow-stubs/runner/subprocess_manager.pyi +2 -2
- metaflow-stubs/runner/utils.pyi +3 -3
- metaflow-stubs/system/__init__.pyi +2 -2
- metaflow-stubs/system/system_logger.pyi +2 -2
- metaflow-stubs/system/system_monitor.pyi +2 -2
- metaflow-stubs/tagging_util.pyi +2 -2
- metaflow-stubs/tuple_util.pyi +2 -2
- metaflow-stubs/version.pyi +2 -2
- {metaflow_stubs-2.12.34.dist-info → metaflow_stubs-2.12.36.dist-info}/METADATA +2 -2
- metaflow_stubs-2.12.36.dist-info/RECORD +158 -0
- metaflow_stubs-2.12.34.dist-info/RECORD +0 -158
- {metaflow_stubs-2.12.34.dist-info → metaflow_stubs-2.12.36.dist-info}/WHEEL +0 -0
- {metaflow_stubs-2.12.34.dist-info → metaflow_stubs-2.12.36.dist-info}/top_level.txt +0 -0
metaflow-stubs/__init__.pyi
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
######################################################################################################
|
2
2
|
# Auto-generated Metaflow stub file #
|
3
|
-
# MF version: 2.12.
|
4
|
-
# Generated on 2024-12-
|
3
|
+
# MF version: 2.12.36 #
|
4
|
+
# Generated on 2024-12-07T00:02:15.920105 #
|
5
5
|
######################################################################################################
|
6
6
|
|
7
7
|
from __future__ import annotations
|
@@ -29,8 +29,8 @@ from .flowspec import FlowSpec as FlowSpec
|
|
29
29
|
from .parameters import Parameter as Parameter
|
30
30
|
from .parameters import JSONTypeClass as JSONTypeClass
|
31
31
|
from .parameters import JSONType as JSONType
|
32
|
-
from . import tuple_util as tuple_util
|
33
32
|
from . import events as events
|
33
|
+
from . import tuple_util as tuple_util
|
34
34
|
from . import runner as runner
|
35
35
|
from . import plugins as plugins
|
36
36
|
from .plugins.datatools.s3.s3 import S3 as S3
|
@@ -137,82 +137,58 @@ def step(f: typing.Union[typing.Callable[[FlowSpecDerived], None], typing.Callab
|
|
137
137
|
"""
|
138
138
|
...
|
139
139
|
|
140
|
-
|
141
|
-
def parallel(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
142
|
-
"""
|
143
|
-
Decorator prototype for all step decorators. This function gets specialized
|
144
|
-
and imported for all decorators types by _import_plugin_decorators().
|
145
|
-
"""
|
146
|
-
...
|
147
|
-
|
148
|
-
@typing.overload
|
149
|
-
def parallel(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
150
|
-
...
|
151
|
-
|
152
|
-
def parallel(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None):
|
153
|
-
"""
|
154
|
-
Decorator prototype for all step decorators. This function gets specialized
|
155
|
-
and imported for all decorators types by _import_plugin_decorators().
|
156
|
-
"""
|
157
|
-
...
|
158
|
-
|
159
|
-
@typing.overload
|
160
|
-
def environment(*, vars: typing.Dict[str, str] = {}) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
161
|
-
"""
|
162
|
-
Specifies environment variables to be set prior to the execution of a step.
|
163
|
-
"""
|
164
|
-
...
|
165
|
-
|
166
|
-
@typing.overload
|
167
|
-
def environment(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
168
|
-
...
|
169
|
-
|
170
|
-
@typing.overload
|
171
|
-
def environment(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
172
|
-
...
|
173
|
-
|
174
|
-
def environment(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, vars: typing.Dict[str, str] = {}):
|
140
|
+
def kubernetes(*, cpu: int = 1, memory: int = 4096, disk: int = 10240, image: typing.Optional[str] = None, image_pull_policy: str = 'KUBERNETES_IMAGE_PULL_POLICY', service_account: str = 'METAFLOW_KUBERNETES_SERVICE_ACCOUNT', secrets: typing.Optional[typing.List[str]] = None, node_selector: typing.Union[typing.Dict[str, str], str, None] = None, namespace: str = 'METAFLOW_KUBERNETES_NAMESPACE', gpu: typing.Optional[int] = None, gpu_vendor: str = 'KUBERNETES_GPU_VENDOR', tolerations: typing.List[str] = [], use_tmpfs: bool = False, tmpfs_tempdir: bool = True, tmpfs_size: typing.Optional[int] = None, tmpfs_path: typing.Optional[str] = '/metaflow_temp', persistent_volume_claims: typing.Optional[typing.Dict[str, str]] = None, shared_memory: typing.Optional[int] = None, port: typing.Optional[int] = None, compute_pool: typing.Optional[str] = None, hostname_resolution_timeout: int = 600, qos: str = 'Burstable') -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
175
141
|
"""
|
176
|
-
Specifies
|
142
|
+
Specifies that this step should execute on Kubernetes.
|
177
143
|
"""
|
178
144
|
...
|
179
145
|
|
180
146
|
@typing.overload
|
181
|
-
def
|
147
|
+
def resources(*, cpu: int = 1, gpu: typing.Optional[int] = None, disk: typing.Optional[int] = None, memory: int = 4096, shared_memory: typing.Optional[int] = None) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
182
148
|
"""
|
183
|
-
Specifies the
|
184
|
-
to a step needs to be retried.
|
149
|
+
Specifies the resources needed when executing this step.
|
185
150
|
|
186
|
-
|
187
|
-
|
188
|
-
it is advisable to annotate it with `@retry(times=0)`.
|
151
|
+
Use `@resources` to specify the resource requirements
|
152
|
+
independently of the specific compute layer (`@batch`, `@kubernetes`).
|
189
153
|
|
190
|
-
|
191
|
-
|
192
|
-
|
154
|
+
You can choose the compute layer on the command line by executing e.g.
|
155
|
+
```
|
156
|
+
python myflow.py run --with batch
|
157
|
+
```
|
158
|
+
or
|
159
|
+
```
|
160
|
+
python myflow.py run --with kubernetes
|
161
|
+
```
|
162
|
+
which executes the flow on the desired system using the
|
163
|
+
requirements specified in `@resources`.
|
193
164
|
"""
|
194
165
|
...
|
195
166
|
|
196
167
|
@typing.overload
|
197
|
-
def
|
168
|
+
def resources(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
198
169
|
...
|
199
170
|
|
200
171
|
@typing.overload
|
201
|
-
def
|
172
|
+
def resources(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
202
173
|
...
|
203
174
|
|
204
|
-
def
|
175
|
+
def resources(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, cpu: int = 1, gpu: typing.Optional[int] = None, disk: typing.Optional[int] = None, memory: int = 4096, shared_memory: typing.Optional[int] = None):
|
205
176
|
"""
|
206
|
-
Specifies the
|
207
|
-
to a step needs to be retried.
|
177
|
+
Specifies the resources needed when executing this step.
|
208
178
|
|
209
|
-
|
210
|
-
|
211
|
-
it is advisable to annotate it with `@retry(times=0)`.
|
179
|
+
Use `@resources` to specify the resource requirements
|
180
|
+
independently of the specific compute layer (`@batch`, `@kubernetes`).
|
212
181
|
|
213
|
-
|
214
|
-
|
215
|
-
|
182
|
+
You can choose the compute layer on the command line by executing e.g.
|
183
|
+
```
|
184
|
+
python myflow.py run --with batch
|
185
|
+
```
|
186
|
+
or
|
187
|
+
```
|
188
|
+
python myflow.py run --with kubernetes
|
189
|
+
```
|
190
|
+
which executes the flow on the desired system using the
|
191
|
+
requirements specified in `@resources`.
|
216
192
|
"""
|
217
193
|
...
|
218
194
|
|
@@ -248,165 +224,178 @@ def catch(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], ty
|
|
248
224
|
...
|
249
225
|
|
250
226
|
@typing.overload
|
251
|
-
def
|
227
|
+
def secrets(*, sources: typing.List[typing.Union[str, typing.Dict[str, typing.Any]]] = []) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
252
228
|
"""
|
253
|
-
|
254
|
-
|
255
|
-
Note that you may add multiple `@card` decorators in a step with different parameters.
|
229
|
+
Specifies secrets to be retrieved and injected as environment variables prior to
|
230
|
+
the execution of a step.
|
256
231
|
"""
|
257
232
|
...
|
258
233
|
|
259
234
|
@typing.overload
|
260
|
-
def
|
235
|
+
def secrets(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
261
236
|
...
|
262
237
|
|
263
238
|
@typing.overload
|
264
|
-
def
|
239
|
+
def secrets(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
265
240
|
...
|
266
241
|
|
267
|
-
def
|
242
|
+
def secrets(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, sources: typing.List[typing.Union[str, typing.Dict[str, typing.Any]]] = []):
|
268
243
|
"""
|
269
|
-
|
270
|
-
|
271
|
-
Note that you may add multiple `@card` decorators in a step with different parameters.
|
244
|
+
Specifies secrets to be retrieved and injected as environment variables prior to
|
245
|
+
the execution of a step.
|
272
246
|
"""
|
273
247
|
...
|
274
248
|
|
275
249
|
@typing.overload
|
276
|
-
def
|
250
|
+
def timeout(*, seconds: int = 0, minutes: int = 0, hours: int = 0) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
277
251
|
"""
|
278
|
-
Specifies
|
279
|
-
|
252
|
+
Specifies a timeout for your step.
|
253
|
+
|
254
|
+
This decorator is useful if this step may hang indefinitely.
|
255
|
+
|
256
|
+
This can be used in conjunction with the `@retry` decorator as well as the `@catch` decorator.
|
257
|
+
A timeout is considered to be an exception thrown by the step. It will cause the step to be
|
258
|
+
retried if needed and the exception will be caught by the `@catch` decorator, if present.
|
259
|
+
|
260
|
+
Note that all the values specified in parameters are added together so if you specify
|
261
|
+
60 seconds and 1 hour, the decorator will have an effective timeout of 1 hour and 1 minute.
|
280
262
|
"""
|
281
263
|
...
|
282
264
|
|
283
265
|
@typing.overload
|
284
|
-
def
|
266
|
+
def timeout(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
285
267
|
...
|
286
268
|
|
287
269
|
@typing.overload
|
288
|
-
def
|
270
|
+
def timeout(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
289
271
|
...
|
290
272
|
|
291
|
-
def
|
273
|
+
def timeout(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, seconds: int = 0, minutes: int = 0, hours: int = 0):
|
292
274
|
"""
|
293
|
-
Specifies
|
294
|
-
|
275
|
+
Specifies a timeout for your step.
|
276
|
+
|
277
|
+
This decorator is useful if this step may hang indefinitely.
|
278
|
+
|
279
|
+
This can be used in conjunction with the `@retry` decorator as well as the `@catch` decorator.
|
280
|
+
A timeout is considered to be an exception thrown by the step. It will cause the step to be
|
281
|
+
retried if needed and the exception will be caught by the `@catch` decorator, if present.
|
282
|
+
|
283
|
+
Note that all the values specified in parameters are added together so if you specify
|
284
|
+
60 seconds and 1 hour, the decorator will have an effective timeout of 1 hour and 1 minute.
|
295
285
|
"""
|
296
286
|
...
|
297
287
|
|
298
288
|
@typing.overload
|
299
|
-
def
|
289
|
+
def parallel(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
300
290
|
"""
|
301
|
-
|
291
|
+
Decorator prototype for all step decorators. This function gets specialized
|
292
|
+
and imported for all decorators types by _import_plugin_decorators().
|
302
293
|
"""
|
303
294
|
...
|
304
295
|
|
305
296
|
@typing.overload
|
306
|
-
def
|
307
|
-
...
|
308
|
-
|
309
|
-
@typing.overload
|
310
|
-
def batch(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
297
|
+
def parallel(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
311
298
|
...
|
312
299
|
|
313
|
-
def
|
300
|
+
def parallel(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None):
|
314
301
|
"""
|
315
|
-
|
302
|
+
Decorator prototype for all step decorators. This function gets specialized
|
303
|
+
and imported for all decorators types by _import_plugin_decorators().
|
316
304
|
"""
|
317
305
|
...
|
318
306
|
|
319
307
|
@typing.overload
|
320
|
-
def
|
308
|
+
def retry(*, times: int = 3, minutes_between_retries: int = 2) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
321
309
|
"""
|
322
|
-
Specifies the
|
310
|
+
Specifies the number of times the task corresponding
|
311
|
+
to a step needs to be retried.
|
323
312
|
|
324
|
-
|
325
|
-
|
313
|
+
This decorator is useful for handling transient errors, such as networking issues.
|
314
|
+
If your task contains operations that can't be retried safely, e.g. database updates,
|
315
|
+
it is advisable to annotate it with `@retry(times=0)`.
|
326
316
|
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
```
|
331
|
-
or
|
332
|
-
```
|
333
|
-
python myflow.py run --with kubernetes
|
334
|
-
```
|
335
|
-
which executes the flow on the desired system using the
|
336
|
-
requirements specified in `@resources`.
|
317
|
+
This can be used in conjunction with the `@catch` decorator. The `@catch`
|
318
|
+
decorator will execute a no-op task after all retries have been exhausted,
|
319
|
+
ensuring that the flow execution can continue.
|
337
320
|
"""
|
338
321
|
...
|
339
322
|
|
340
323
|
@typing.overload
|
341
|
-
def
|
324
|
+
def retry(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
342
325
|
...
|
343
326
|
|
344
327
|
@typing.overload
|
345
|
-
def
|
328
|
+
def retry(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
346
329
|
...
|
347
330
|
|
348
|
-
def
|
331
|
+
def retry(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, times: int = 3, minutes_between_retries: int = 2):
|
349
332
|
"""
|
350
|
-
Specifies the
|
333
|
+
Specifies the number of times the task corresponding
|
334
|
+
to a step needs to be retried.
|
351
335
|
|
352
|
-
|
353
|
-
|
336
|
+
This decorator is useful for handling transient errors, such as networking issues.
|
337
|
+
If your task contains operations that can't be retried safely, e.g. database updates,
|
338
|
+
it is advisable to annotate it with `@retry(times=0)`.
|
354
339
|
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
```
|
359
|
-
or
|
360
|
-
```
|
361
|
-
python myflow.py run --with kubernetes
|
362
|
-
```
|
363
|
-
which executes the flow on the desired system using the
|
364
|
-
requirements specified in `@resources`.
|
340
|
+
This can be used in conjunction with the `@catch` decorator. The `@catch`
|
341
|
+
decorator will execute a no-op task after all retries have been exhausted,
|
342
|
+
ensuring that the flow execution can continue.
|
365
343
|
"""
|
366
344
|
...
|
367
345
|
|
368
|
-
|
346
|
+
@typing.overload
|
347
|
+
def card(*, type: str = 'default', id: typing.Optional[str] = None, options: typing.Dict[str, typing.Any] = {}, timeout: int = 45) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
369
348
|
"""
|
370
|
-
|
349
|
+
Creates a human-readable report, a Metaflow Card, after this step completes.
|
350
|
+
|
351
|
+
Note that you may add multiple `@card` decorators in a step with different parameters.
|
371
352
|
"""
|
372
353
|
...
|
373
354
|
|
374
355
|
@typing.overload
|
375
|
-
def
|
356
|
+
def card(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
357
|
+
...
|
358
|
+
|
359
|
+
@typing.overload
|
360
|
+
def card(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
361
|
+
...
|
362
|
+
|
363
|
+
def card(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, type: str = 'default', id: typing.Optional[str] = None, options: typing.Dict[str, typing.Any] = {}, timeout: int = 45):
|
376
364
|
"""
|
377
|
-
|
378
|
-
|
379
|
-
This decorator is useful if this step may hang indefinitely.
|
365
|
+
Creates a human-readable report, a Metaflow Card, after this step completes.
|
380
366
|
|
381
|
-
|
382
|
-
|
383
|
-
|
367
|
+
Note that you may add multiple `@card` decorators in a step with different parameters.
|
368
|
+
"""
|
369
|
+
...
|
370
|
+
|
371
|
+
@typing.overload
|
372
|
+
def conda(*, packages: typing.Dict[str, str] = {}, libraries: typing.Dict[str, str] = {}, python: typing.Optional[str] = None, disabled: bool = False) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
373
|
+
"""
|
374
|
+
Specifies the Conda environment for the step.
|
384
375
|
|
385
|
-
|
386
|
-
|
376
|
+
Information in this decorator will augment any
|
377
|
+
attributes set in the `@conda_base` flow-level decorator. Hence,
|
378
|
+
you can use `@conda_base` to set packages required by all
|
379
|
+
steps and use `@conda` to specify step-specific overrides.
|
387
380
|
"""
|
388
381
|
...
|
389
382
|
|
390
383
|
@typing.overload
|
391
|
-
def
|
384
|
+
def conda(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
392
385
|
...
|
393
386
|
|
394
387
|
@typing.overload
|
395
|
-
def
|
388
|
+
def conda(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
396
389
|
...
|
397
390
|
|
398
|
-
def
|
391
|
+
def conda(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, packages: typing.Dict[str, str] = {}, libraries: typing.Dict[str, str] = {}, python: typing.Optional[str] = None, disabled: bool = False):
|
399
392
|
"""
|
400
|
-
Specifies
|
401
|
-
|
402
|
-
This decorator is useful if this step may hang indefinitely.
|
403
|
-
|
404
|
-
This can be used in conjunction with the `@retry` decorator as well as the `@catch` decorator.
|
405
|
-
A timeout is considered to be an exception thrown by the step. It will cause the step to be
|
406
|
-
retried if needed and the exception will be caught by the `@catch` decorator, if present.
|
393
|
+
Specifies the Conda environment for the step.
|
407
394
|
|
408
|
-
|
409
|
-
|
395
|
+
Information in this decorator will augment any
|
396
|
+
attributes set in the `@conda_base` flow-level decorator. Hence,
|
397
|
+
you can use `@conda_base` to set packages required by all
|
398
|
+
steps and use `@conda` to specify step-specific overrides.
|
410
399
|
"""
|
411
400
|
...
|
412
401
|
|
@@ -442,52 +431,44 @@ def pypi(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typ
|
|
442
431
|
...
|
443
432
|
|
444
433
|
@typing.overload
|
445
|
-
def
|
434
|
+
def batch(*, cpu: int = 1, gpu: int = 0, memory: int = 4096, image: typing.Optional[str] = None, queue: str = 'METAFLOW_BATCH_JOB_QUEUE', iam_role: str = 'METAFLOW_ECS_S3_ACCESS_IAM_ROLE', execution_role: str = 'METAFLOW_ECS_FARGATE_EXECUTION_ROLE', shared_memory: typing.Optional[int] = None, max_swap: typing.Optional[int] = None, swappiness: typing.Optional[int] = None, use_tmpfs: bool = False, tmpfs_tempdir: bool = True, tmpfs_size: typing.Optional[int] = None, tmpfs_path: typing.Optional[str] = None, inferentia: int = 0, trainium: int = None, efa: int = 0, ephemeral_storage: int = None, log_driver: typing.Optional[str] = None, log_options: typing.Optional[typing.List[str]] = None) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
446
435
|
"""
|
447
|
-
Specifies
|
448
|
-
|
449
|
-
Information in this decorator will augment any
|
450
|
-
attributes set in the `@conda_base` flow-level decorator. Hence,
|
451
|
-
you can use `@conda_base` to set packages required by all
|
452
|
-
steps and use `@conda` to specify step-specific overrides.
|
436
|
+
Specifies that this step should execute on [AWS Batch](https://aws.amazon.com/batch/).
|
453
437
|
"""
|
454
438
|
...
|
455
439
|
|
456
440
|
@typing.overload
|
457
|
-
def
|
441
|
+
def batch(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
458
442
|
...
|
459
443
|
|
460
444
|
@typing.overload
|
461
|
-
def
|
445
|
+
def batch(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
462
446
|
...
|
463
447
|
|
464
|
-
def
|
448
|
+
def batch(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, cpu: int = 1, gpu: int = 0, memory: int = 4096, image: typing.Optional[str] = None, queue: str = 'METAFLOW_BATCH_JOB_QUEUE', iam_role: str = 'METAFLOW_ECS_S3_ACCESS_IAM_ROLE', execution_role: str = 'METAFLOW_ECS_FARGATE_EXECUTION_ROLE', shared_memory: typing.Optional[int] = None, max_swap: typing.Optional[int] = None, swappiness: typing.Optional[int] = None, use_tmpfs: bool = False, tmpfs_tempdir: bool = True, tmpfs_size: typing.Optional[int] = None, tmpfs_path: typing.Optional[str] = None, inferentia: int = 0, trainium: int = None, efa: int = 0, ephemeral_storage: int = None, log_driver: typing.Optional[str] = None, log_options: typing.Optional[typing.List[str]] = None):
|
465
449
|
"""
|
466
|
-
Specifies
|
467
|
-
|
468
|
-
Information in this decorator will augment any
|
469
|
-
attributes set in the `@conda_base` flow-level decorator. Hence,
|
470
|
-
you can use `@conda_base` to set packages required by all
|
471
|
-
steps and use `@conda` to specify step-specific overrides.
|
450
|
+
Specifies that this step should execute on [AWS Batch](https://aws.amazon.com/batch/).
|
472
451
|
"""
|
473
452
|
...
|
474
453
|
|
475
454
|
@typing.overload
|
476
|
-
def
|
455
|
+
def environment(*, vars: typing.Dict[str, str] = {}) -> typing.Callable[[typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]], typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]]]:
|
477
456
|
"""
|
478
|
-
Specifies
|
479
|
-
production scheduler.
|
457
|
+
Specifies environment variables to be set prior to the execution of a step.
|
480
458
|
"""
|
481
459
|
...
|
482
460
|
|
483
461
|
@typing.overload
|
484
|
-
def
|
462
|
+
def environment(f: typing.Callable[[FlowSpecDerived, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, StepFlag], None]:
|
485
463
|
...
|
486
464
|
|
487
|
-
|
465
|
+
@typing.overload
|
466
|
+
def environment(f: typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]) -> typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None]:
|
467
|
+
...
|
468
|
+
|
469
|
+
def environment(f: typing.Union[typing.Callable[[FlowSpecDerived, StepFlag], None], typing.Callable[[FlowSpecDerived, typing.Any, StepFlag], None], None] = None, *, vars: typing.Dict[str, str] = {}):
|
488
470
|
"""
|
489
|
-
Specifies
|
490
|
-
production scheduler.
|
471
|
+
Specifies environment variables to be set prior to the execution of a step.
|
491
472
|
"""
|
492
473
|
...
|
493
474
|
|
@@ -572,19 +553,26 @@ def trigger_on_finish(f: typing.Optional[typing.Type[FlowSpecDerived]] = None, *
|
|
572
553
|
"""
|
573
554
|
...
|
574
555
|
|
575
|
-
|
556
|
+
@typing.overload
|
557
|
+
def conda_base(*, packages: typing.Dict[str, str] = {}, libraries: typing.Dict[str, str] = {}, python: typing.Optional[str] = None, disabled: bool = False) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
576
558
|
"""
|
577
|
-
Specifies
|
559
|
+
Specifies the Conda environment for all steps of the flow.
|
578
560
|
|
579
|
-
|
580
|
-
use
|
561
|
+
Use `@conda_base` to set common libraries required by all
|
562
|
+
steps and use `@conda` to specify step-specific additions.
|
581
563
|
"""
|
582
564
|
...
|
583
565
|
|
584
|
-
|
566
|
+
@typing.overload
|
567
|
+
def conda_base(f: typing.Type[FlowSpecDerived]) -> typing.Type[FlowSpecDerived]:
|
568
|
+
...
|
569
|
+
|
570
|
+
def conda_base(f: typing.Optional[typing.Type[FlowSpecDerived]] = None, *, packages: typing.Dict[str, str] = {}, libraries: typing.Dict[str, str] = {}, python: typing.Optional[str] = None, disabled: bool = False):
|
585
571
|
"""
|
586
|
-
|
587
|
-
|
572
|
+
Specifies the Conda environment for all steps of the flow.
|
573
|
+
|
574
|
+
Use `@conda_base` to set common libraries required by all
|
575
|
+
steps and use `@conda` to specify step-specific additions.
|
588
576
|
"""
|
589
577
|
...
|
590
578
|
|
@@ -598,6 +586,25 @@ def airflow_s3_key_sensor(*, timeout: int, poke_interval: int, mode: str, expone
|
|
598
586
|
"""
|
599
587
|
...
|
600
588
|
|
589
|
+
@typing.overload
|
590
|
+
def schedule(*, hourly: bool = False, daily: bool = True, weekly: bool = False, cron: typing.Optional[str] = None, timezone: typing.Optional[str] = None) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
591
|
+
"""
|
592
|
+
Specifies the times when the flow should be run when running on a
|
593
|
+
production scheduler.
|
594
|
+
"""
|
595
|
+
...
|
596
|
+
|
597
|
+
@typing.overload
|
598
|
+
def schedule(f: typing.Type[FlowSpecDerived]) -> typing.Type[FlowSpecDerived]:
|
599
|
+
...
|
600
|
+
|
601
|
+
def schedule(f: typing.Optional[typing.Type[FlowSpecDerived]] = None, *, hourly: bool = False, daily: bool = True, weekly: bool = False, cron: typing.Optional[str] = None, timezone: typing.Optional[str] = None):
|
602
|
+
"""
|
603
|
+
Specifies the times when the flow should be run when running on a
|
604
|
+
production scheduler.
|
605
|
+
"""
|
606
|
+
...
|
607
|
+
|
601
608
|
@typing.overload
|
602
609
|
def trigger(*, event: typing.Union[str, typing.Dict[str, typing.Any], None] = None, events: typing.List[typing.Union[str, typing.Dict[str, typing.Any]]] = [], options: typing.Dict[str, typing.Any] = {}) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
603
610
|
"""
|
@@ -671,6 +678,13 @@ def trigger(f: typing.Optional[typing.Type[FlowSpecDerived]] = None, *, event: t
|
|
671
678
|
"""
|
672
679
|
...
|
673
680
|
|
681
|
+
def airflow_external_task_sensor(*, timeout: int, poke_interval: int, mode: str, exponential_backoff: bool, pool: str, soft_fail: bool, name: str, description: str, external_dag_id: str, external_task_ids: typing.List[str], allowed_states: typing.List[str], failed_states: typing.List[str], execution_delta: "datetime.timedelta", check_existence: bool) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
682
|
+
"""
|
683
|
+
The `@airflow_external_task_sensor` decorator attaches a Airflow [ExternalTaskSensor](https://airflow.apache.org/docs/apache-airflow/stable/_api/airflow/sensors/external_task/index.html#airflow.sensors.external_task.ExternalTaskSensor) before the start step of the flow.
|
684
|
+
This decorator only works when a flow is scheduled on Airflow and is compiled using `airflow create`. More than one `@airflow_external_task_sensor` can be added as a flow decorators. Adding more than one decorator will ensure that `start` step starts only after all sensors finish.
|
685
|
+
"""
|
686
|
+
...
|
687
|
+
|
674
688
|
@typing.overload
|
675
689
|
def pypi_base(*, packages: typing.Dict[str, str] = {}, python: typing.Optional[str] = None) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
676
690
|
"""
|
@@ -694,26 +708,12 @@ def pypi_base(f: typing.Optional[typing.Type[FlowSpecDerived]] = None, *, packag
|
|
694
708
|
"""
|
695
709
|
...
|
696
710
|
|
697
|
-
|
698
|
-
def conda_base(*, packages: typing.Dict[str, str] = {}, libraries: typing.Dict[str, str] = {}, python: typing.Optional[str] = None, disabled: bool = False) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
699
|
-
"""
|
700
|
-
Specifies the Conda environment for all steps of the flow.
|
701
|
-
|
702
|
-
Use `@conda_base` to set common libraries required by all
|
703
|
-
steps and use `@conda` to specify step-specific additions.
|
704
|
-
"""
|
705
|
-
...
|
706
|
-
|
707
|
-
@typing.overload
|
708
|
-
def conda_base(f: typing.Type[FlowSpecDerived]) -> typing.Type[FlowSpecDerived]:
|
709
|
-
...
|
710
|
-
|
711
|
-
def conda_base(f: typing.Optional[typing.Type[FlowSpecDerived]] = None, *, packages: typing.Dict[str, str] = {}, libraries: typing.Dict[str, str] = {}, python: typing.Optional[str] = None, disabled: bool = False):
|
711
|
+
def project(*, name: str) -> typing.Callable[[typing.Type[FlowSpecDerived]], typing.Type[FlowSpecDerived]]:
|
712
712
|
"""
|
713
|
-
Specifies
|
713
|
+
Specifies what flows belong to the same project.
|
714
714
|
|
715
|
-
|
716
|
-
|
715
|
+
A project-specific namespace is created for all flows that
|
716
|
+
use the same `@project(name)`.
|
717
717
|
"""
|
718
718
|
...
|
719
719
|
|
metaflow-stubs/cards.pyi
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
######################################################################################################
|
2
2
|
# Auto-generated Metaflow stub file #
|
3
|
-
# MF version: 2.12.
|
4
|
-
# Generated on 2024-12-
|
3
|
+
# MF version: 2.12.36 #
|
4
|
+
# Generated on 2024-12-07T00:02:15.830109 #
|
5
5
|
######################################################################################################
|
6
6
|
|
7
7
|
from __future__ import annotations
|
metaflow-stubs/cli.pyi
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
######################################################################################################
|
2
2
|
# Auto-generated Metaflow stub file #
|
3
|
-
# MF version: 2.12.
|
4
|
-
# Generated on 2024-12-
|
3
|
+
# MF version: 2.12.36 #
|
4
|
+
# Generated on 2024-12-07T00:02:15.840452 #
|
5
5
|
######################################################################################################
|
6
6
|
|
7
7
|
from __future__ import annotations
|
@@ -1,7 +1,7 @@
|
|
1
1
|
######################################################################################################
|
2
2
|
# Auto-generated Metaflow stub file #
|
3
|
-
# MF version: 2.12.
|
4
|
-
# Generated on 2024-12-
|
3
|
+
# MF version: 2.12.36 #
|
4
|
+
# Generated on 2024-12-07T00:02:15.830486 #
|
5
5
|
######################################################################################################
|
6
6
|
|
7
7
|
from __future__ import annotations
|