extended_data.workflows¶
Tier 3 workflow composition over Extended Data primitives and containers.
Submodules¶
Package Contents¶
Classes¶
A named transformation in a data workflow. |
|
The completed value and audit trail for a data workflow. |
|
Compose file decoding, transformations, and exports as a Tier 3 primitive. |
Functions¶
Return the named transform steps supported by DataWorkflow. |
|
Return a workflow action for one named Tier 2 transform step. |
|
Return the best method for a transform step on the current data shape. |
|
Return a typed workflow action that deep-merges mapping values. |
|
Normalize supported step declarations to WorkflowStep. |
|
Return a stable step name for decode-only workflows. |
Data¶
API¶
- extended_data.workflows.StepLike: TypeAlias = 'WorkflowStep | tuple[str, WorkflowAction] | WorkflowAction'¶
- extended_data.workflows.DATA_TRANSFORM_STEPS: collections.abc.Mapping[str, str] = 'MappingProxyType(...)'¶
- extended_data.workflows.list_data_transform_steps() tuple[str, ...]¶
Return the named transform steps supported by DataWorkflow.
- extended_data.workflows.data_transform_action(step: str) extended_data.workflows.WorkflowAction¶
Return a workflow action for one named Tier 2 transform step.
- extended_data.workflows._data_transform_method(data: Any, step: str, method_name: str) Any¶
Return the best method for a transform step on the current data shape.
- class extended_data.workflows.WorkflowStep¶
A named transformation in a data workflow.
- action: extended_data.workflows.WorkflowAction = None¶
- class extended_data.workflows.WorkflowResult(value: Any, steps: collections.abc.Iterable[str] = (), output_path: pathlib.Path | None = None, metadata: collections.abc.Mapping[str, Any] | None = None)¶
The completed value and audit trail for a data workflow.
Initialization
Store workflow metadata as promoted detached data.
- output_path: pathlib.Path | None = None¶
- _metadata: extended_data.containers.ExtendedDict = 'field(...)'¶
- property metadata: extended_data.containers.ExtendedDict¶
Return a detached promoted copy of workflow metadata.
- class extended_data.workflows.DataWorkflow(value: Any, *, steps: collections.abc.Iterable[str] = (), as_extended: bool = True, metadata: collections.abc.Mapping[str, Any] | None = None)¶
Compose file decoding, transformations, and exports as a Tier 3 primitive.
Initialization
Create a workflow from an existing value.
- property metadata: extended_data.containers.ExtendedDict¶
Return a detached promoted copy of workflow metadata.
- classmethod from_value(value: Any, *, as_extended: bool = True, metadata: collections.abc.Mapping[str, Any] | None = None) extended_data.workflows.DataWorkflow¶
Start a workflow from an in-memory value.
- classmethod from_data_file(artifact: extended_data.io.files.DataFile, *, as_extended: bool = True) extended_data.workflows.DataWorkflow¶
Start a workflow from a decoded DataFile artifact.
- classmethod decode(file_data: str | memoryview | bytes | bytearray, *, file_path: extended_data.io.files.FilePath | None = None, suffix: str | None = None, as_extended: bool = True, metadata: collections.abc.Mapping[str, Any] | None = None) extended_data.workflows.DataWorkflow¶
Start a workflow by decoding structured text or bytes.
- classmethod from_file(file_path: extended_data.io.files.FilePath, *, suffix: str | None = None, as_extended: bool = True, charset: str = 'utf-8', errors: str = 'strict', tld: pathlib.Path | None = None) extended_data.workflows.DataWorkflow¶
Read and decode a local file or URL into a workflow.
- then(step: extended_data.workflows.StepLike, *, name: str | None = None, as_extended: bool | None = None) extended_data.workflows.DataWorkflow¶
Apply one transformation and return the next workflow state.
- run(*steps: extended_data.workflows.StepLike, as_extended: bool | None = None) extended_data.workflows.DataWorkflow¶
Apply multiple transformations in order.
- transform(*steps: str, as_extended: bool | None = None) extended_data.workflows.DataWorkflow¶
Apply named Tier 2 transform steps in order.
- merge(*mappings: collections.abc.Mapping[str, Any], name: str = 'merge', as_extended: bool | None = None) extended_data.workflows.DataWorkflow¶
Deep-merge mappings into the current workflow value.
- merge_file(file_path: extended_data.io.files.FilePath, *, suffix: str | None = None, charset: str = 'utf-8', errors: str = 'strict', tld: pathlib.Path | None = None, name: str | None = None, as_extended: bool | None = None) extended_data.workflows.DataWorkflow¶
Read a structured file and deep-merge it into the workflow value.
- as_builtin() extended_data.workflows.DataWorkflow¶
Return the next workflow state with built-in Python containers.
- as_extended() extended_data.workflows.DataWorkflow¶
Return the next workflow state with Extended Data containers.
- result() extended_data.workflows.WorkflowResult¶
Return a completed workflow result without writing an output artifact.
- write(file_path: extended_data.io.files.FilePath, *, encoding: str | None = None, charset: str = 'utf-8', allow_empty: bool = False, tld: pathlib.Path | None = None, as_builtin: bool = True) extended_data.workflows.WorkflowResult¶
Write the current workflow value and return the completed result.
- sync_file(file_path: extended_data.io.files.FilePath, *, encoding: str | None = None, charset: str = 'utf-8', allow_empty: bool = False, dry_run: bool = False, tld: pathlib.Path | None = None) extended_data.workflows.sync.DataSyncResult¶
Sync the current workflow value to a local file if it changed.
- extended_data.workflows._deep_merge_action(*mappings: collections.abc.Mapping[str, Any]) extended_data.workflows.WorkflowAction¶
Return a typed workflow action that deep-merges mapping values.
- extended_data.workflows._coerce_step(step: extended_data.workflows.StepLike, *, name: str | None = None) extended_data.workflows.WorkflowStep¶
Normalize supported step declarations to WorkflowStep.