You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by jh...@apache.org on 2021/08/09 22:52:03 UTC
[airflow] 05/39: Add type annotations to setup.py (#16658)
This is an automated email from the ASF dual-hosted git repository.
jhtimmins pushed a commit to branch v2-1-test
in repository https://gitbox.apache.org/repos/asf/airflow.git
commit f3b74d802a1bd61060a302b51b894d178b543e03
Author: Ali Muhammad <al...@gmail.com>
AuthorDate: Fri Jun 25 22:25:52 2021 +0500
Add type annotations to setup.py (#16658)
(cherry picked from commit 402274641168f412f44c545c34f3e7edf5cf1476)
---
setup.py | 40 ++++++++++++++++++++++++----------------
1 file changed, 24 insertions(+), 16 deletions(-)
diff --git a/setup.py b/setup.py
index 21097e6..e6c1d46 100644
--- a/setup.py
+++ b/setup.py
@@ -62,14 +62,14 @@ class CleanCommand(Command):
description = "Tidy up the project root"
user_options: List[str] = []
- def initialize_options(self):
+ def initialize_options(self) -> None:
"""Set default values for options."""
- def finalize_options(self):
+ def finalize_options(self) -> None:
"""Set final values for options."""
@staticmethod
- def rm_all_files(files: List[str]):
+ def rm_all_files(files: List[str]) -> None:
"""Remove all files from the list"""
for file in files:
try:
@@ -77,7 +77,7 @@ class CleanCommand(Command):
except Exception as e:
logger.warning("Error when removing %s: %s", file, e)
- def run(self):
+ def run(self) -> None:
"""Remove temporary files and directories."""
os.chdir(my_dir)
self.rm_all_files(glob.glob('./build/*'))
@@ -98,10 +98,10 @@ class CompileAssets(Command):
description = "Compile and build the frontend assets"
user_options: List[str] = []
- def initialize_options(self):
+ def initialize_options(self) -> None:
"""Set default values for options."""
- def finalize_options(self):
+ def finalize_options(self) -> None:
"""Set final values for options."""
def run(self) -> None:
@@ -118,10 +118,10 @@ class ListExtras(Command):
description = "List available extras"
user_options: List[str] = []
- def initialize_options(self):
+ def initialize_options(self) -> None:
"""Set default values for options."""
- def finalize_options(self):
+ def finalize_options(self) -> None:
"""Set final values for options."""
def run(self) -> None:
@@ -165,7 +165,7 @@ def git_version(version_: str) -> str:
return 'no_git_version'
-def write_version(filename: str = os.path.join(*[my_dir, "airflow", "git_version"])):
+def write_version(filename: str = os.path.join(*[my_dir, "airflow", "git_version"])) -> None:
"""
Write the Semver version + git hash to file, e.g. ".dev0+2f635dc265e78db6708f59f68e8009abb92c1e65".
@@ -766,7 +766,7 @@ PACKAGES_EXCLUDED_FOR_ALL.extend(
)
-def is_package_excluded(package: str, exclusion_list: List[str]):
+def is_package_excluded(package: str, exclusion_list: List[str]) -> bool:
"""
Checks if package should be excluded.
@@ -820,7 +820,7 @@ PREINSTALLED_PROVIDERS = [
]
-def get_provider_package_from_package_id(package_id: str):
+def get_provider_package_from_package_id(package_id: str) -> str:
"""
Builds the name of provider package out of the package id provided/
@@ -831,16 +831,18 @@ def get_provider_package_from_package_id(package_id: str):
return f"apache-airflow-providers-{package_suffix}"
-def get_excluded_providers():
+def get_excluded_providers() -> List[str]:
"""
Returns packages excluded for the current python version.
+
Currently the only excluded provider is apache hive for Python 3.9.
Until https://github.com/dropbox/PyHive/issues/380 is fixed.
+
"""
return ['apache.hive'] if PY39 else []
-def get_all_provider_packages():
+def get_all_provider_packages() -> str:
"""Returns all provider packages configured in setup.py"""
excluded_providers = get_excluded_providers()
return " ".join(
@@ -851,7 +853,13 @@ def get_all_provider_packages():
class AirflowDistribution(Distribution):
- """The setuptools.Distribution subclass with Airflow specific behaviour"""
+ """
+ The setuptools.Distribution subclass with Airflow specific behaviour
+
+ The reason for pylint: disable=signature-differs of parse_config_files is explained here:
+ https://github.com/PyCQA/pylint/issues/3737
+
+ """
def parse_config_files(self, *args, **kwargs) -> None:
"""
@@ -949,7 +957,7 @@ def add_all_provider_packages() -> None:
class Develop(develop_orig):
"""Forces removal of providers in editable mode."""
- def run(self):
+ def run(self) -> None:
self.announce('Installing in editable mode. Uninstalling provider packages!', level=log.INFO)
# We need to run "python3 -m pip" because it might be that older PIP binary is in the path
# And it results with an error when running pip directly (cannot import pip module)
@@ -973,7 +981,7 @@ class Develop(develop_orig):
class Install(install_orig):
"""Forces installation of providers from sources in editable mode."""
- def run(self):
+ def run(self) -> None:
self.announce('Standard installation. Providers are installed from packages', level=log.INFO)
super().run()