This is an automated email from the ASF dual-hosted git repository.
bbovenzi 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 ea78fd0977b Remove duplicate "concurrency" from dag details (#54801)
ea78fd0977b is described below
commit ea78fd0977b51eae4e1c9f5f8232c6e16ddf6a90
Author: Jed Cunningham <[email protected]>
AuthorDate: Mon Aug 25 14:18:31 2025 -0600
Remove duplicate "concurrency" from dag details (#54801)
* Remove duplicate "concurrency" from dag details
"Concurrency" is the same as "Max Active Tasks", but is less clear what
it actually means, so I've removed it.
* Remove `dagDetails.concurrency` translation.
* Deprecate the concurrency field in the api
---
airflow-core/src/airflow/api_fastapi/core_api/datamodels/dags.py | 6 +++++-
.../airflow/api_fastapi/core_api/openapi/v2-rest-api-generated.yaml | 5 ++++-
airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts | 4 +++-
airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts | 2 ++
airflow-core/src/airflow/ui/public/i18n/locales/ar/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/de/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/en/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/es/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/fr/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/he/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/nl/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/pl/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/tr/common.json | 1 -
airflow-core/src/airflow/ui/public/i18n/locales/zh-TW/common.json | 1 -
airflow-core/src/airflow/ui/src/pages/Dag/Details.tsx | 4 ----
airflow-ctl/src/airflowctl/api/datamodels/generated.py | 6 +++++-
17 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/airflow-core/src/airflow/api_fastapi/core_api/datamodels/dags.py
b/airflow-core/src/airflow/api_fastapi/core_api/datamodels/dags.py
index 572b62b4818..0a5f34e8f25 100644
--- a/airflow-core/src/airflow/api_fastapi/core_api/datamodels/dags.py
+++ b/airflow-core/src/airflow/api_fastapi/core_api/datamodels/dags.py
@@ -186,7 +186,11 @@ class DAGDetailsResponse(DAGResponse):
@computed_field # type: ignore[prop-decorator]
@property
def concurrency(self) -> int:
- """Return max_active_tasks as concurrency."""
+ """
+ Return max_active_tasks as concurrency.
+
+ Deprecated: Use max_active_tasks instead.
+ """
return self.max_active_tasks
# Mypy issue https://github.com/python/mypy/issues/1362
diff --git
a/airflow-core/src/airflow/api_fastapi/core_api/openapi/v2-rest-api-generated.yaml
b/airflow-core/src/airflow/api_fastapi/core_api/openapi/v2-rest-api-generated.yaml
index ba31c5f6b7a..ebeb24e31a3 100644
---
a/airflow-core/src/airflow/api_fastapi/core_api/openapi/v2-rest-api-generated.yaml
+++
b/airflow-core/src/airflow/api_fastapi/core_api/openapi/v2-rest-api-generated.yaml
@@ -9620,7 +9620,10 @@ components:
concurrency:
type: integer
title: Concurrency
- description: Return max_active_tasks as concurrency.
+ description: 'Return max_active_tasks as concurrency.
+
+
+ Deprecated: Use max_active_tasks instead.'
readOnly: true
latest_dag_version:
anyOf:
diff --git a/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
b/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
index 4b626ea4999..0452da45a66 100644
--- a/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
+++ b/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
@@ -1950,7 +1950,9 @@ export const $DAGDetailsResponse = {
concurrency: {
type: 'integer',
title: 'Concurrency',
- description: 'Return max_active_tasks as concurrency.',
+ description: `Return max_active_tasks as concurrency.
+
+Deprecated: Use max_active_tasks instead.`,
readOnly: true
},
latest_dag_version: {
diff --git a/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
b/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
index 7b3b355f350..74fa8d93c69 100644
--- a/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
+++ b/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
@@ -541,6 +541,8 @@ export type DAGDetailsResponse = {
readonly file_token: string;
/**
* Return max_active_tasks as concurrency.
+ *
+ * Deprecated: Use max_active_tasks instead.
*/
readonly concurrency: number;
/**
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ar/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ar/common.json
index 24ada7022f2..a83ce12bfff 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ar/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ar/common.json
@@ -45,7 +45,6 @@
"dag_zero": "لا يوجد أي Dag",
"dagDetails": {
"catchup": "إلحاق",
- "concurrency": "تزامن",
"dagRunTimeout": "مهلة تشغيل الDag",
"defaultArgs": "متغيرات افتراضية",
"description": "وصف",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
index 6545563843f..d09c1edb7f8 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "Nachgeholt",
- "concurrency": "Parallelität",
"dagRunTimeout": "Dag Lauf Zeitüberschreitung",
"defaultArgs": "Standard-Parameter",
"description": "Beschreibung",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/en/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/en/common.json
index ca11ac93b27..c510fb59414 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/en/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/en/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "Catchup",
- "concurrency": "Concurrency",
"dagRunTimeout": "Dag Run Timeout",
"defaultArgs": "Default Args",
"description": "Description",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/es/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/es/common.json
index b16dfc59b02..50c76e152bd 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/es/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/es/common.json
@@ -24,7 +24,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "Catchup",
- "concurrency": "Concurrencia",
"dagRunTimeout": "Tiempo de Ejecución del Dag",
"defaultArgs": "Argumentos por Defecto",
"description": "Descripción",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/fr/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/fr/common.json
index c39cab1f07b..df80a71248b 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/fr/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/fr/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "Rattrapage",
- "concurrency": "Concurrence",
"dagRunTimeout": "Délai d'exécution du Dag",
"defaultArgs": "Arguments par défaut",
"description": "Description",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/he/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/he/common.json
index 5e2499f70c7..1b7e99e6f30 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/he/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/he/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "השלמה אוטומטית",
- "concurrency": "מספר הרצות מקבילות",
"dagRunTimeout": "זמן תפוגה להרצת Dag",
"defaultArgs": "פרמטרי ברירת מחדל",
"description": "תיאור",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
index cdabc3eb753..9463b5dd15d 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "캐치업",
- "concurrency": "동시 샐행 수",
"dagRunTimeout": "Dag 실행 제한 시간",
"defaultArgs": "기본 인자",
"description": "설명",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/nl/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/nl/common.json
index 91b03a3bb1f..2abfe91a84d 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/nl/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/nl/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "Catchup",
- "concurrency": "Concurrency",
"dagRunTimeout": "Dag Run timeout",
"defaultArgs": "Standaard argumenten",
"description": "Omschrijving",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/pl/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/pl/common.json
index 352df56d83a..b2e1e7ea9f5 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/pl/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/pl/common.json
@@ -35,7 +35,6 @@
"dag_other": "Dagi",
"dagDetails": {
"catchup": "Nadrabianie zaległości",
- "concurrency": "Współbieżność",
"dagRunTimeout": "Limit czasu wykonania",
"defaultArgs": "Domyślne argumenty",
"description": "Opis",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/tr/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/tr/common.json
index 42d2f847c24..2ab6f3a53e1 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/tr/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/tr/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dag'ler",
"dagDetails": {
"catchup": "Yakalama",
- "concurrency": "Eş Zamanlılık",
"dagRunTimeout": "Dag Çalıştırma Zaman Aşımı",
"defaultArgs": "Varsayılan Argümanlar",
"description": "Açıklama",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-TW/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/zh-TW/common.json
index 85fceadb8f6..5694ab0c352 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-TW/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-TW/common.json
@@ -25,7 +25,6 @@
"dag_other": "Dags",
"dagDetails": {
"catchup": "自動回填",
- "concurrency": "並行數",
"dagRunTimeout": "Dag 執行超時",
"defaultArgs": "預設參數",
"description": "描述",
diff --git a/airflow-core/src/airflow/ui/src/pages/Dag/Details.tsx
b/airflow-core/src/airflow/ui/src/pages/Dag/Details.tsx
index a618568ed4c..694792f4500 100644
--- a/airflow-core/src/airflow/ui/src/pages/Dag/Details.tsx
+++ b/airflow-core/src/airflow/ui/src/pages/Dag/Details.tsx
@@ -96,10 +96,6 @@ export const Details = () => {
<Time datetime={dag.last_expired} />
</Table.Cell>
</Table.Row>
- <Table.Row>
- <Table.Cell>{translate("dagDetails.concurrency")}</Table.Cell>
- <Table.Cell>{dag.concurrency}</Table.Cell>
- </Table.Row>
<Table.Row>
<Table.Cell>{translate("dagDetails.hasTaskConcurrencyLimits")}</Table.Cell>
<Table.Cell>{dag.has_task_concurrency_limits.toString()}</Table.Cell>
diff --git a/airflow-ctl/src/airflowctl/api/datamodels/generated.py
b/airflow-ctl/src/airflowctl/api/datamodels/generated.py
index b564755e551..1fe8689c3c8 100644
--- a/airflow-ctl/src/airflowctl/api/datamodels/generated.py
+++ b/airflow-ctl/src/airflowctl/api/datamodels/generated.py
@@ -1265,7 +1265,11 @@ class DAGDetailsResponse(BaseModel):
owner_links: Annotated[dict[str, str] | None, Field(title="Owner Links")]
= None
file_token: Annotated[str, Field(description="Return file token.",
title="File Token")]
concurrency: Annotated[
- int, Field(description="Return max_active_tasks as concurrency.",
title="Concurrency")
+ int,
+ Field(
+ description="Return max_active_tasks as
concurrency.\n\nDeprecated: Use max_active_tasks instead.",
+ title="Concurrency",
+ ),
]
latest_dag_version: Annotated[
DagVersionResponse | None, Field(description="Return the latest
DagVersion.")