Skip to content

Conversation

@kaxil
Copy link
Member

@kaxil kaxil commented Mar 28, 2025

These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated airflow.sdk.bases module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:

  • Created new airflow.sdk.bases module
  • Moved base classes:
    • BaseOperator -> airflow.sdk.bases.baseoperator
    • BaseSensorOperator -> airflow.sdk.bases.sensor
    • BaseOperatorLink -> airflow.sdk.bases.operatorlink
    • BaseNotifier -> airflow.sdk.bases.notifier
    • BaseXCom -> airflow.sdk.bases.xcom

^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named {pr_number}.significant.rst or {issue_number}.significant.rst, in airflow-core/newsfragments.

@amoghrajesh
Copy link
Contributor

amoghrajesh commented Mar 28, 2025

Would sdk.base look better? based sounds a little weird to me

@kaxil kaxil force-pushed the move-baseop branch 2 times, most recently from 91a8a51 to 7956c59 Compare March 28, 2025 11:45
@kaxil
Copy link
Member Author

kaxil commented Mar 28, 2025

Would sdk.base look better? based sounds a little weird to me

sdk.bases is meant to indicate a collection of base classes. Follows common plural naming patterns (like operators, sensors, etc.).

These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated `airflow.sdk.bases` module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:
- Created new `airflow.sdk.bases` module
- Moved base classes:
  - `BaseOperator` -> `airflow.sdk.bases.baseoperator`
  - `BaseSensorOperator` -> `airflow.sdk.bases.sensor`
  - `BaseOperatorLink` -> `airflow.sdk.bases.operatorlink`
  - `BaseNotifier` -> `airflow.sdk.bases.notifier`
  - `XCom` -> `airflow.sdk.bases.xcom`
@amoghrajesh
Copy link
Contributor

Would sdk.base look better? based sounds a little weird to me

sdk.bases is meant to indicate a collection of base classes. Follows common plural naming patterns (like operators, sensors, etc.).

Yes definitely. It just felt a little odd :) But thats ok

@kaxil kaxil merged commit fde5051 into apache:main Mar 28, 2025
89 checks passed
@kaxil kaxil deleted the move-baseop branch March 28, 2025 13:24
sunank200 pushed a commit to astronomer/airflow that referenced this pull request Mar 28, 2025
These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated `airflow.sdk.bases` module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:
- Created new `airflow.sdk.bases` module
- Moved base classes:
  - `BaseOperator` -> `airflow.sdk.bases.baseoperator`
  - `BaseSensorOperator` -> `airflow.sdk.bases.sensor`
  - `BaseOperatorLink` -> `airflow.sdk.bases.operatorlink`
  - `BaseNotifier` -> `airflow.sdk.bases.notifier`
  - `XCom` -> `airflow.sdk.bases.xcom`
pankajkoti pushed a commit to astronomer/airflow that referenced this pull request Mar 28, 2025
These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated `airflow.sdk.bases` module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:
- Created new `airflow.sdk.bases` module
- Moved base classes:
  - `BaseOperator` -> `airflow.sdk.bases.baseoperator`
  - `BaseSensorOperator` -> `airflow.sdk.bases.sensor`
  - `BaseOperatorLink` -> `airflow.sdk.bases.operatorlink`
  - `BaseNotifier` -> `airflow.sdk.bases.notifier`
  - `XCom` -> `airflow.sdk.bases.xcom`
shubham-pyc pushed a commit to shubham-pyc/airflow that referenced this pull request Apr 2, 2025
These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated `airflow.sdk.bases` module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:
- Created new `airflow.sdk.bases` module
- Moved base classes:
  - `BaseOperator` -> `airflow.sdk.bases.baseoperator`
  - `BaseSensorOperator` -> `airflow.sdk.bases.sensor`
  - `BaseOperatorLink` -> `airflow.sdk.bases.operatorlink`
  - `BaseNotifier` -> `airflow.sdk.bases.notifier`
  - `XCom` -> `airflow.sdk.bases.xcom`
nailo2c pushed a commit to nailo2c/airflow that referenced this pull request Apr 4, 2025
These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated `airflow.sdk.bases` module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:
- Created new `airflow.sdk.bases` module
- Moved base classes:
  - `BaseOperator` -> `airflow.sdk.bases.baseoperator`
  - `BaseSensorOperator` -> `airflow.sdk.bases.sensor`
  - `BaseOperatorLink` -> `airflow.sdk.bases.operatorlink`
  - `BaseNotifier` -> `airflow.sdk.bases.notifier`
  - `XCom` -> `airflow.sdk.bases.xcom`
simonprydden pushed a commit to simonprydden/airflow that referenced this pull request Apr 8, 2025
These class aren't needed in DAG definition -- not atleast by DAG Authors

This PR moves core base classes to a dedicated `airflow.sdk.bases` module to clarify their intended usage. These classes are internal implementation details and not meant for direct use by DAG authors. They are meant to be used by Providers developer or developer of custom operators.

Key Changes:
- Created new `airflow.sdk.bases` module
- Moved base classes:
  - `BaseOperator` -> `airflow.sdk.bases.baseoperator`
  - `BaseSensorOperator` -> `airflow.sdk.bases.sensor`
  - `BaseOperatorLink` -> `airflow.sdk.bases.operatorlink`
  - `BaseNotifier` -> `airflow.sdk.bases.notifier`
  - `XCom` -> `airflow.sdk.bases.xcom`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants