Skip to content

Commit de4d997

Browse files
authored
[airflow] BashOperator has been moved to airflow.providers.standard.operators.bash.BashOperator (AIR302) (#15922)
## Summary Extend AIR302 with * `airflow.operators.bash.BashOperator → airflow.providers.standard.operators.bash.BashOperator` * change existing rules `airflow.operators.bash_operator.BashOperator → airflow.operators.bash.BashOperator` to `airflow.operators.bash_operator.BashOperator → airflow.providers.standard.operators.bash.BashOperator` ## Test Plan a test fixture has been updated
1 parent ba02294 commit de4d997

File tree

3 files changed

+583
-565
lines changed

3 files changed

+583
-565
lines changed

crates/ruff_linter/resources/test/fixtures/airflow/AIR302_names.py

+10-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from __future__ import annotations
2+
13
from airflow import (
24
PY36,
35
PY37,
@@ -6,6 +8,8 @@
68
PY310,
79
PY311,
810
PY312,
11+
)
12+
from airflow import (
913
Dataset as DatasetFromRoot,
1014
)
1115
from airflow.api_connexion.security import requires_access, requires_access_dataset
@@ -41,7 +45,8 @@
4145
from airflow.listeners.spec.dataset import on_dataset_changed, on_dataset_created
4246
from airflow.metrics.validators import AllowListValidator, BlockListValidator
4347
from airflow.operators import dummy_operator
44-
from airflow.operators.bash_operator import BashOperator
48+
from airflow.operators.bash import BashOperator
49+
from airflow.operators.bash_operator import BashOperator as LegacyBashOperator
4550
from airflow.operators.branch_operator import BaseBranchOperator
4651
from airflow.operators.dagrun_operator import TriggerDagRunLink, TriggerDagRunOperator
4752
from airflow.operators.dummy import DummyOperator, EmptyOperator
@@ -76,6 +81,8 @@
7681
from airflow.sensors.external_task_sensor import (
7782
ExternalTaskMarker,
7883
ExternalTaskSensor,
84+
)
85+
from airflow.sensors.external_task_sensor import (
7986
ExternalTaskSensorLink as ExternalTaskSensorLinkFromExternalTaskSensor,
8087
)
8188
from airflow.sensors.time_delta_sensor import TimeDeltaSensor
@@ -164,8 +171,9 @@
164171
dummy_operator.EmptyOperator()
165172
dummy_operator.DummyOperator()
166173

167-
# airflow.operators.bash_operator
174+
# airflow.operators.bash / airflow.operators.bash_operator
168175
BashOperator()
176+
LegacyBashOperator()
169177

170178
# airflow.operators.branch_operator
171179
BaseBranchOperator()

crates/ruff_linter/src/rules/airflow/rules/removal_in_3.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -684,8 +684,8 @@ fn check_name(checker: &mut Checker, expr: &Expr, range: TextRange) {
684684
["airflow", "operators", "subdag", ..] => {
685685
Replacement::Message("The whole `airflow.subdag` module has been removed.")
686686
}
687-
["airflow", "operators", "bash_operator", "BashOperator"] => {
688-
Replacement::Name("airflow.operators.bash.BashOperator")
687+
["airflow", "operators", "bash" | "bash_operator", "BashOperator"] => {
688+
Replacement::Name("airflow.providers.standard.operators.bash.BashOperator")
689689
}
690690
["airflow", "operators", "branch_operator", "BaseBranchOperator"] => {
691691
Replacement::Name("airflow.operators.branch.BaseBranchOperator")

0 commit comments

Comments
 (0)