potiuk commented on PR #44086:
URL: https://github.com/apache/airflow/pull/44086#issuecomment-2480403120
This is what we have in Airflow pre-commit now because of that. I would not
want to maintain another pre-commit like that.
```
- id: check-base-operator-usage
language: pygrep
name: Check BaseOperator core imports
description: Make sure BaseOperator is imported from
airflow.models.baseoperator in core
entry: "from airflow\\.models import.* BaseOperator\\b"
files: \.py$
pass_filenames: true
exclude: >
(?x)
^airflow/decorators/.*$|
^airflow/hooks/.*$|
^airflow/operators/.*$|
^providers/src/airflow/providers/.*$|
^airflow/sensors/.*$|
^dev/provider_packages/.*$
- id: check-base-operator-usage
language: pygrep
name: Check BaseOperatorLink core imports
description: Make sure BaseOperatorLink is imported from
airflow.models.baseoperatorlink in core
entry: "from airflow\\.models import.* BaseOperatorLink"
files: \.py$
pass_filenames: true
exclude: >
(?x)
^airflow/decorators/.*$|
^airflow/hooks/.*$|
^airflow/operators/.*$|
^providers/src/airflow/providers/.*$|
^airflow/sensors/.*$|
^dev/provider_packages/.*$
- id: check-base-operator-usage
language: pygrep
name: Check BaseOperator[Link] other imports
description: Make sure BaseOperator[Link] is imported from
airflow.models outside of core
entry: "from airflow\\.models\\.baseoperator(link)? import.*
BaseOperator"
pass_filenames: true
files: >
(?x)
^providers/src/airflow/providers/.*\.py$
exclude:
^.*/.*_vendor/|providers/src/airflow/providers/standard/operators/bash.py|providers/src/airflow/providers/standard/operators/python.py
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]