This is an automated email from the ASF dual-hosted git repository.
amoghrajesh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 231b3e056b2 Squash unreleased execution API version entries into
2026-06-16 (#66693)
231b3e056b2 is described below
commit 231b3e056b2a8881c45a8428e70b9471a7423c95
Author: Amogh Desai <[email protected]>
AuthorDate: Mon May 11 13:42:31 2026 +0530
Squash unreleased execution API version entries into 2026-06-16 (#66693)
---
.../api_fastapi/execution_api/versions/__init__.py | 8 +--
.../execution_api/versions/v2026_04_17.py | 65 ----------------------
.../execution_api/versions/v2026_06_16.py | 51 ++++++++++++++++-
3 files changed, 53 insertions(+), 71 deletions(-)
diff --git
a/airflow-core/src/airflow/api_fastapi/execution_api/versions/__init__.py
b/airflow-core/src/airflow/api_fastapi/execution_api/versions/__init__.py
index e05bd22c273..160b9ca9503 100644
--- a/airflow-core/src/airflow/api_fastapi/execution_api/versions/__init__.py
+++ b/airflow-core/src/airflow/api_fastapi/execution_api/versions/__init__.py
@@ -40,18 +40,18 @@ from airflow.api_fastapi.execution_api.versions.v2026_04_06
import (
MovePreviousRunEndpoint,
RemoveUpstreamMapIndexesField,
)
-from airflow.api_fastapi.execution_api.versions.v2026_04_17 import (
+from airflow.api_fastapi.execution_api.versions.v2026_06_16 import (
AddAssetsByAliasEndpoint,
+ AddRetryPolicyFields,
AddStateEndpoints,
AddTeamNameField,
)
-from airflow.api_fastapi.execution_api.versions.v2026_06_16 import
AddRetryPolicyFields
bundle = VersionBundle(
HeadVersion(),
- Version("2026-06-16", AddRetryPolicyFields),
Version(
- "2026-04-17",
+ "2026-06-16",
+ AddRetryPolicyFields,
AddTeamNameField,
AddStateEndpoints,
AddAssetsByAliasEndpoint,
diff --git
a/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_04_17.py
b/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_04_17.py
deleted file mode 100644
index 41e63cf858c..00000000000
--- a/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_04_17.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-from __future__ import annotations
-
-from cadwyn import ResponseInfo, VersionChange,
convert_response_to_previous_version_for, endpoint, schema
-
-from airflow.api_fastapi.execution_api.datamodels.taskinstance import DagRun,
TIRunContext
-
-
-class AddTeamNameField(VersionChange):
- """Add the ``team_name`` field to DagRun model."""
-
- description = __doc__
-
- instructions_to_migrate_to_previous_version =
(schema(DagRun).field("team_name").didnt_exist,)
-
- @convert_response_to_previous_version_for(TIRunContext) # type:
ignore[arg-type]
- def remove_team_name_field(response: ResponseInfo) -> None: # type:
ignore[misc]
- """Remove the ``team_name`` field from dag_run for older API
versions."""
- if "dag_run" in response.body and isinstance(response.body["dag_run"],
dict):
- response.body["dag_run"].pop("team_name", None)
-
-
-class AddAssetsByAliasEndpoint(VersionChange):
- """Add endpoint to resolve assets from an AssetAlias."""
-
- description = __doc__
-
- instructions_to_migrate_to_previous_version =
(endpoint("/assets/by-alias", ["GET"]).didnt_exist,)
-
-
-class AddStateEndpoints(VersionChange):
- """Add task state and asset state CRUD endpoints."""
-
- description = __doc__
-
- instructions_to_migrate_to_previous_version = (
- endpoint("/state/ti/{task_instance_id}/{key}", ["GET"]).didnt_exist,
- endpoint("/state/ti/{task_instance_id}/{key}", ["PUT"]).didnt_exist,
- endpoint("/state/ti/{task_instance_id}/{key}", ["DELETE"]).didnt_exist,
- endpoint("/state/ti/{task_instance_id}", ["DELETE"]).didnt_exist,
- endpoint("/state/asset/by-name/value", ["GET"]).didnt_exist,
- endpoint("/state/asset/by-name/value", ["PUT"]).didnt_exist,
- endpoint("/state/asset/by-name/value", ["DELETE"]).didnt_exist,
- endpoint("/state/asset/by-name/clear", ["DELETE"]).didnt_exist,
- endpoint("/state/asset/by-uri/value", ["GET"]).didnt_exist,
- endpoint("/state/asset/by-uri/value", ["PUT"]).didnt_exist,
- endpoint("/state/asset/by-uri/value", ["DELETE"]).didnt_exist,
- endpoint("/state/asset/by-uri/clear", ["DELETE"]).didnt_exist,
- )
diff --git
a/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_06_16.py
b/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_06_16.py
index 9b48cb828f3..779612bbde1 100644
--- a/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_06_16.py
+++ b/airflow-core/src/airflow/api_fastapi/execution_api/versions/v2026_06_16.py
@@ -17,9 +17,13 @@
from __future__ import annotations
-from cadwyn import VersionChange, schema
+from cadwyn import ResponseInfo, VersionChange,
convert_response_to_previous_version_for, endpoint, schema
-from airflow.api_fastapi.execution_api.datamodels.taskinstance import
TIRetryStatePayload
+from airflow.api_fastapi.execution_api.datamodels.taskinstance import (
+ DagRun,
+ TIRetryStatePayload,
+ TIRunContext,
+)
class AddRetryPolicyFields(VersionChange):
@@ -31,3 +35,46 @@ class AddRetryPolicyFields(VersionChange):
schema(TIRetryStatePayload).field("retry_delay_seconds").didnt_exist,
schema(TIRetryStatePayload).field("retry_reason").didnt_exist,
)
+
+
+class AddTeamNameField(VersionChange):
+ """Add the ``team_name`` field to DagRun model."""
+
+ description = __doc__
+
+ instructions_to_migrate_to_previous_version =
(schema(DagRun).field("team_name").didnt_exist,)
+
+ @convert_response_to_previous_version_for(TIRunContext) # type:
ignore[arg-type]
+ def remove_team_name_field(response: ResponseInfo) -> None: # type:
ignore[misc]
+ """Remove the ``team_name`` field from dag_run for older API
versions."""
+ if "dag_run" in response.body and isinstance(response.body["dag_run"],
dict):
+ response.body["dag_run"].pop("team_name", None)
+
+
+class AddAssetsByAliasEndpoint(VersionChange):
+ """Add endpoint to resolve assets from an AssetAlias."""
+
+ description = __doc__
+
+ instructions_to_migrate_to_previous_version =
(endpoint("/assets/by-alias", ["GET"]).didnt_exist,)
+
+
+class AddStateEndpoints(VersionChange):
+ """Add task state and asset state CRUD endpoints."""
+
+ description = __doc__
+
+ instructions_to_migrate_to_previous_version = (
+ endpoint("/state/ti/{task_instance_id}/{key}", ["GET"]).didnt_exist,
+ endpoint("/state/ti/{task_instance_id}/{key}", ["PUT"]).didnt_exist,
+ endpoint("/state/ti/{task_instance_id}/{key}", ["DELETE"]).didnt_exist,
+ endpoint("/state/ti/{task_instance_id}", ["DELETE"]).didnt_exist,
+ endpoint("/state/asset/by-name/value", ["GET"]).didnt_exist,
+ endpoint("/state/asset/by-name/value", ["PUT"]).didnt_exist,
+ endpoint("/state/asset/by-name/value", ["DELETE"]).didnt_exist,
+ endpoint("/state/asset/by-name/clear", ["DELETE"]).didnt_exist,
+ endpoint("/state/asset/by-uri/value", ["GET"]).didnt_exist,
+ endpoint("/state/asset/by-uri/value", ["PUT"]).didnt_exist,
+ endpoint("/state/asset/by-uri/value", ["DELETE"]).didnt_exist,
+ endpoint("/state/asset/by-uri/clear", ["DELETE"]).didnt_exist,
+ )