Skip to content

Commit

Permalink
Remove references to AIRFLOW_V_2_9_PLUS (apache#44987)
Browse files Browse the repository at this point in the history
* Remove references to AIRFLOW_V_2_9_PLUS
  • Loading branch information
eladkal authored Dec 18, 2024
1 parent 1ce34cc commit 2a33da0
Show file tree
Hide file tree
Showing 35 changed files with 30 additions and 161 deletions.
6 changes: 3 additions & 3 deletions contributing-docs/testing/unit_tests.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1108,11 +1108,11 @@ are not part of the public API. We deal with it in one of the following ways:

.. code-block:: python
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.version_compat import AIRFLOW_V_2_10_PLUS
@pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="The tests should be skipped for Airflow < 2.9")
def some_test_that_only_works_for_airflow_2_9_plus():
@pytest.mark.skipif(not AIRFLOW_V_2_10_PLUS, reason="The tests should be skipped for Airflow < 2.10")
def some_test_that_only_works_for_airflow_2_10_plus():
pass
4) Sometimes, the tests should only be run when airflow is installed from the sources in main.
Expand Down
4 changes: 2 additions & 2 deletions dev/README_RELEASE_PROVIDER_PACKAGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,8 @@ This will only update the min version in the `__init__.py` files and package do

4. Remove `AIRFLOW_V_2_X_PLUS` in all tests (review and update skipif and other conditional
behaviour and test_compat.py, where X is the TARGET version we change to. For example
when we update min Airflow version to 2.9.0, we should remove all references to AIRFLOW_V_2_9_PLUS
simply because "everything" in our tests is already 2.9.0+ and there is no need to exclude or
when we update min Airflow version to 2.10.0, we should remove all references to AIRFLOW_V_2_10_PLUS
simply because "everything" in our tests is already 2.10.0+ and there is no need to exclude or
modify tests for earlier versions of Airflow.

Note: Sometimes we are releasing a subset of providers and would not want to add the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@
AwsSecurityManagerOverride,
)
from airflow.providers.amazon.aws.auth_manager.views.auth import AwsAuthManagerAuthenticationViews
from airflow.providers.amazon.version_compat import AIRFLOW_V_2_9_PLUS

try:
from airflow.auth.managers.base_auth_manager import BaseAuthManager, ResourceMethod
Expand Down Expand Up @@ -82,11 +81,6 @@ class AwsAuthManager(BaseAuthManager):
"""

def __init__(self, appbuilder: AirflowAppBuilder) -> None:
if not AIRFLOW_V_2_9_PLUS:
raise AirflowOptionalProviderFeatureException(
"``AwsAuthManager`` is compatible with Airflow versions >= 2.9."
)

super().__init__(appbuilder)
self._check_avp_schema_version()

Expand Down
1 change: 0 additions & 1 deletion providers/src/airflow/providers/amazon/version_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
13 changes: 5 additions & 8 deletions providers/src/airflow/providers/common/compat/assets/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
from typing import TYPE_CHECKING

from airflow.providers.common.compat.version_compat import (
AIRFLOW_V_2_9_PLUS,
AIRFLOW_V_2_10_PLUS,
AIRFLOW_V_3_0_PLUS,
)
Expand All @@ -37,13 +36,11 @@
else:
# dataset is renamed to asset since Airflow 3.0
from airflow.auth.managers.models.resource_details import DatasetDetails as AssetDetails
from airflow.datasets import Dataset as Asset

if AIRFLOW_V_2_9_PLUS:
from airflow.datasets import (
DatasetAll as AssetAll,
DatasetAny as AssetAny,
)
from airflow.datasets import (
Dataset as Asset,
DatasetAll as AssetAll,
DatasetAny as AssetAny,
)

if AIRFLOW_V_2_10_PLUS:
from airflow.datasets import (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
1 change: 0 additions & 1 deletion providers/src/airflow/providers/edge/version_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
1 change: 0 additions & 1 deletion providers/src/airflow/providers/google/version_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
1 change: 0 additions & 1 deletion providers/src/airflow/providers/presto/version_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
1 change: 0 additions & 1 deletion providers/src/airflow/providers/standard/version_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
1 change: 0 additions & 1 deletion providers/src/airflow/providers/trino/version_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,5 @@ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
return airflow_version.major, airflow_version.minor, airflow_version.micro


AIRFLOW_V_2_9_PLUS = get_base_airflow_version_tuple() >= (2, 9, 0)
AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@
from airflow.www.extensions.init_appbuilder import init_appbuilder

from tests_common.test_utils.config import conf_vars
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.www import check_content_in_response

if TYPE_CHECKING:
Expand All @@ -61,8 +60,6 @@
from airflow.providers.common.compat.security.permissions import RESOURCE_ASSET


pytestmark = pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Test requires Airflow 2.9+")

mock = Mock()

SAML_METADATA_PARSED = {
Expand Down
4 changes: 0 additions & 4 deletions providers/tests/amazon/aws/auth_manager/views/test_auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,6 @@
from airflow.www import app as application

from tests_common.test_utils.config import conf_vars
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS

pytestmark = pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Test requires Airflow 2.9+")


SAML_METADATA_URL = "/saml/metadata"
SAML_METADATA_PARSED = {
Expand Down
13 changes: 2 additions & 11 deletions providers/tests/common/io/xcom/test_backend.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,22 +19,13 @@

import pytest

from tests_common.test_utils.compat import ignore_provider_compatibility_error
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS

pytestmark = [
pytest.mark.db_test,
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


import airflow.models.xcom
from airflow.models.xcom import BaseXCom, resolve_xcom_backend
from airflow.operators.empty import EmptyOperator

with ignore_provider_compatibility_error("2.8.0", __file__):
from airflow.providers.common.io.xcom.backend import XComObjectStorageBackend
pytestmark = [pytest.mark.db_test]

from airflow.providers.common.io.xcom.backend import XComObjectStorageBackend
from airflow.utils import timezone
from airflow.utils.xcom import XCOM_RETURN_KEY

Expand Down
4 changes: 0 additions & 4 deletions providers/tests/common/sql/sensors/test_sql.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,6 @@
from airflow.providers.common.sql.sensors.sql import SqlSensor
from airflow.utils.timezone import datetime

from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS

pytestmark = pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.8.0+ only")

DEFAULT_DATE = datetime(2015, 1, 1)
TEST_DAG_ID = "unit_test_sql_dag"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,6 @@
from airflow.providers.fab.auth_manager.api.auth.backend.basic_auth import requires_authentication
from airflow.www import app as application

from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture
def app():
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,6 @@
from airflow.providers.fab.auth_manager.api.auth.backend.session import requires_authentication
from airflow.www import app as application

from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture
def app():
Expand Down
5 changes: 0 additions & 5 deletions providers/tests/fab/auth_manager/views/test_permissions.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,8 @@

from providers.tests.fab.auth_manager.api_endpoints.api_connexion_utils import create_user, delete_user
from providers.tests.fab.auth_manager.views import _assert_dataset_deprecation_warning
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.www import client_with_login

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture(scope="module")
def fab_app():
Expand Down
5 changes: 0 additions & 5 deletions providers/tests/fab/auth_manager/views/test_roles_list.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,8 @@

from providers.tests.fab.auth_manager.api_endpoints.api_connexion_utils import create_user, delete_user
from providers.tests.fab.auth_manager.views import _assert_dataset_deprecation_warning
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.www import client_with_login

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture(scope="module")
def fab_app():
Expand Down
5 changes: 0 additions & 5 deletions providers/tests/fab/auth_manager/views/test_user.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,8 @@

from providers.tests.fab.auth_manager.api_endpoints.api_connexion_utils import create_user, delete_user
from providers.tests.fab.auth_manager.views import _assert_dataset_deprecation_warning
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.www import client_with_login

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture(scope="module")
def fab_app():
Expand Down
5 changes: 0 additions & 5 deletions providers/tests/fab/auth_manager/views/test_user_edit.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,8 @@

from providers.tests.fab.auth_manager.api_endpoints.api_connexion_utils import create_user, delete_user
from providers.tests.fab.auth_manager.views import _assert_dataset_deprecation_warning
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.www import client_with_login

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture(scope="module")
def fab_app():
Expand Down
5 changes: 0 additions & 5 deletions providers/tests/fab/auth_manager/views/test_user_stats.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,8 @@

from providers.tests.fab.auth_manager.api_endpoints.api_connexion_utils import create_user, delete_user
from providers.tests.fab.auth_manager.views import _assert_dataset_deprecation_warning
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS
from tests_common.test_utils.www import client_with_login

pytestmark = [
pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="Tests for Airflow 2.9.0+ only"),
]


@pytest.fixture(scope="module")
def fab_app():
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,13 @@
from google.cloud.logging import Resource
from google.cloud.logging_v2.types import ListLogEntriesRequest, ListLogEntriesResponse, LogEntry

from airflow.exceptions import RemovedInAirflow3Warning
from airflow.providers.google.cloud.log.stackdriver_task_handler import StackdriverTaskHandler
from airflow.utils import timezone
from airflow.utils.state import TaskInstanceState

from tests_common.test_utils.config import conf_vars
from tests_common.test_utils.db import clear_db_dags, clear_db_runs
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS, AIRFLOW_V_3_0_PLUS
from tests_common.test_utils.version_compat import AIRFLOW_V_3_0_PLUS


def _create_list_log_entries_response_mock(messages, token):
Expand Down Expand Up @@ -88,7 +87,7 @@ def test_should_use_configured_log_name(mock_client, mock_get_creds_and_project_
# this is needed for Airflow 2.8 and below where default settings are triggering warning on
# extra "name" in the configuration of stackdriver handler. As of Airflow 2.9 this warning is not
# emitted.
context_manager = nullcontext() if AIRFLOW_V_2_9_PLUS else pytest.warns(RemovedInAirflow3Warning)
context_manager = nullcontext()
with context_manager:
with conf_vars(
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
from tests_common.test_utils.config import conf_vars
from tests_common.test_utils.db import clear_db_pools
from tests_common.test_utils.decorators import dont_initialize_flask_app_submodules
from tests_common.test_utils.version_compat import AIRFLOW_V_2_9_PLUS


@pytest.fixture(scope="module")
Expand Down Expand Up @@ -75,7 +74,6 @@ def admin_user(google_openid_app):
return role_admin


@pytest.mark.skipif(not AIRFLOW_V_2_9_PLUS, reason="The tests should be skipped for Airflow < 2.9")
@pytest.mark.db_test
class TestGoogleOpenID:
@pytest.fixture(autouse=True)
Expand Down
Loading

0 comments on commit 2a33da0

Please sign in to comment.