This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch v3-0-test
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/v3-0-test by this push:
new 81523b9951d [v3-0-test] Adding backcompat shim for BaseNotifier
(#50340) (#50384)
81523b9951d is described below
commit 81523b9951da3167098f93c3b86932343b962c1b
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Fri May 9 12:14:52 2025 +0200
[v3-0-test] Adding backcompat shim for BaseNotifier (#50340) (#50384)
* Adding backcompat shim for BaseNotifier
* Adding deprecation warning too
* using deprecation properly
(cherry picked from commit bf99522583fe9b8ba0b22c03d3302c9b60840870)
Co-authored-by: Amogh Desai <[email protected]>
---
airflow-core/src/airflow/notifications/__init__.py | 29 ++++++++++++++++++++++
task-sdk/src/airflow/sdk/__init__.py | 2 +-
2 files changed, 30 insertions(+), 1 deletion(-)
diff --git a/airflow-core/src/airflow/notifications/__init__.py
b/airflow-core/src/airflow/notifications/__init__.py
new file mode 100644
index 00000000000..6a33cc53278
--- /dev/null
+++ b/airflow-core/src/airflow/notifications/__init__.py
@@ -0,0 +1,29 @@
+#
+# 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.
+"""Airflow Notifiers."""
+
+from __future__ import annotations
+
+from airflow.utils.deprecation_tools import add_deprecated_classes
+
+__deprecated_classes = {
+ "basenotifier": {
+ "BaseNotifier": "airflow.sdk.bases.notifier.BaseNotifier",
+ },
+}
+add_deprecated_classes(__deprecated_classes, __name__)
diff --git a/task-sdk/src/airflow/sdk/__init__.py
b/task-sdk/src/airflow/sdk/__init__.py
index cff6480ded6..c484d409223 100644
--- a/task-sdk/src/airflow/sdk/__init__.py
+++ b/task-sdk/src/airflow/sdk/__init__.py
@@ -84,7 +84,7 @@ __lazy_imports: dict[str, str] = {
"AssetAll": ".definitions.asset",
"AssetAny": ".definitions.asset",
"AssetWatcher": ".definitions.asset",
- "BaseNotifier": ".definitions.notifier",
+ "BaseNotifier": ".bases.notifier",
"BaseOperator": ".bases.operator",
"BaseOperatorLink": ".bases.operatorlink",
"BaseSensorOperator": ".bases.sensor",