This is an automated email from the ASF dual-hosted git repository. pierrejeambrun pushed a commit to branch v2-5-test in repository https://gitbox.apache.org/repos/asf/airflow.git
commit d2da824c201aa032ea8d2beb25ce96a9c673bb2a Author: James Cobb <[email protected]> AuthorDate: Tue Mar 7 21:25:15 2023 +0000 Allow generic param dicts (#29782) (cherry picked from commit b069df9b0a792beca66b08d873a66d5640ddadb7) --- airflow/models/baseoperator.py | 6 +++--- airflow/models/dag.py | 5 +++-- airflow/models/param.py | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/airflow/models/baseoperator.py b/airflow/models/baseoperator.py index 9448c4a415..73e3d04ceb 100644 --- a/airflow/models/baseoperator.py +++ b/airflow/models/baseoperator.py @@ -148,7 +148,7 @@ def _get_parent_defaults(dag: DAG | None, task_group: TaskGroup | None) -> tuple def get_merged_defaults( dag: DAG | None, task_group: TaskGroup | None, - task_params: dict | None, + task_params: collections.abc.MutableMapping | None, task_default_args: dict | None, ) -> tuple[dict, ParamsDict]: args, params = _get_parent_defaults(dag, task_group) @@ -193,7 +193,7 @@ def partial( end_date: datetime | None = None, owner: str = DEFAULT_OWNER, email: None | str | Iterable[str] = None, - params: dict | None = None, + params: collections.abc.MutableMapping | None = None, resources: dict[str, Any] | None = None, trigger_rule: str = DEFAULT_TRIGGER_RULE, depends_on_past: bool = False, @@ -697,7 +697,7 @@ class BaseOperator(AbstractOperator, metaclass=BaseOperatorMeta): ignore_first_depends_on_past: bool = DEFAULT_IGNORE_FIRST_DEPENDS_ON_PAST, wait_for_downstream: bool = False, dag: DAG | None = None, - params: dict | None = None, + params: collections.abc.MutableMapping | None = None, default_args: dict | None = None, priority_weight: int = DEFAULT_PRIORITY_WEIGHT, weight_rule: str = DEFAULT_WEIGHT_RULE, diff --git a/airflow/models/dag.py b/airflow/models/dag.py index 794fecd35b..a2de4d4176 100644 --- a/airflow/models/dag.py +++ b/airflow/models/dag.py @@ -18,6 +18,7 @@ from __future__ import annotations import collections +import collections.abc import copy import functools import itertools @@ -402,7 +403,7 @@ class DAG(LoggingMixin): on_success_callback: DagStateChangeCallback | None = None, on_failure_callback: DagStateChangeCallback | None = None, doc_md: str | None = None, - params: dict | None = None, + params: collections.abc.MutableMapping | None = None, access_control: dict | None = None, is_paused_upon_creation: bool | None = None, jinja_environment_kwargs: dict | None = None, @@ -3478,7 +3479,7 @@ def dag( on_success_callback: DagStateChangeCallback | None = None, on_failure_callback: DagStateChangeCallback | None = None, doc_md: str | None = None, - params: dict | None = None, + params: collections.abc.MutableMapping | None = None, access_control: dict | None = None, is_paused_upon_creation: bool | None = None, jinja_environment_kwargs: dict | None = None, diff --git a/airflow/models/param.py b/airflow/models/param.py index 0d9d45f792..ce618df31d 100644 --- a/airflow/models/param.py +++ b/airflow/models/param.py @@ -152,7 +152,7 @@ class ParamsDict(MutableMapping[str, Any]): __slots__ = ["__dict", "suppress_exception"] - def __init__(self, dict_obj: dict | None = None, suppress_exception: bool = False): + def __init__(self, dict_obj: MutableMapping | None = None, suppress_exception: bool = False): """ :param dict_obj: A dict or dict like object to init ParamsDict :param suppress_exception: Flag to suppress value exceptions while initializing the ParamsDict
