Andrushika opened a new pull request, #76911: URL: https://github.com/apache/airflow/pull/76911
## Why `providers/standard/src/airflow/providers/standard/operators/python.py` imports `Variable` from the core ORM model `airflow.models.variable` at module level. `from airflow.sdk import task` loads this module. So every Dag that uses `@task` loads the core ORM model. The module uses `Variable` in one place, to read the virtualenv cache key. ## What Import `Variable` from `airflow.providers.common.compat.sdk`. On Airflow 3 this is the Task SDK `Variable`. On Airflow 2 it is still the core model. common-compat exports it since 1.8.0, and the standard provider already requires 1.14.1 or later. This is part 2 of the plan in #<P1>. This does not depend on #<P1>, and it can be reviewed and merged on its own. related: #<P1> related: https://lists.apache.org/thread/1nhdc8y1x7dclcpcck98q5chzh1tvodk --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes (please specify the tool below) Generated-by: Claude Code (Opus 5.5) following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions) -- 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]
