from typing import Callable, Optional from airflow import settings from airflow import version __version__ = version.version __all__ = ['__version__', 'login', 'DAG'] # Make `airflow` an namespace package, supporting installing # airflow.providers.* in different locations (i.e. one in site, and one in user # lib.) __path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore settings.initialize() login: Optional[Callable] = None PY37 = sys.version_info >= (3, 7) PY38 = sys.version_info >= (3, 8) def __getattr__(name): # PEP-562: Lazy loaded attributes on python modules if name == "DAG": from airflow.models.dag import DAG # pylint: disable=redefined-outer-name return DAG if name == "AirflowException": from airflow.exceptions import AirflowException # pylint: disable=redefined-outer-name return AirflowException
`airflow.www.login` """ from builtins import object from airflow import version from airflow.utils.log.logging_mixin import LoggingMixin __version__ = version.version import sys # flake8: noqa: F401 from airflow import settings, configuration as conf from airflow.models import DAG from airflow.exceptions import AirflowException settings.initialize() login = None class AirflowMacroPlugin(object): def __init__(self, namespace): self.namespace = namespace from airflow import operators # noqa: E402 from airflow import sensors # noqa: E402 from airflow import hooks # noqa: E402 from airflow import executors # noqa: E402 from airflow import macros # noqa: E402