From c46e841519ef2df7dc40ff2596dd49c010514d87 Mon Sep 17 00:00:00 2001 From: Jarek Potiuk Date: Tue, 13 Jul 2021 22:13:30 +0200 Subject: [PATCH] Switch back http provider after requests removes LGPL dependency (#16974) Following merging the https://github.com/psf/requests/pull/5797 and requests 2.26.0 release without LGPL chardet dependency, we can now bring back http as pre-installed provider as it does not bring chardet automatically any more. --- docs/apache-airflow/extra-packages-ref.rst | 2 +- setup.py | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/docs/apache-airflow/extra-packages-ref.rst b/docs/apache-airflow/extra-packages-ref.rst index 10d9f8195c873..2d4769e6d617c 100644 --- a/docs/apache-airflow/extra-packages-ref.rst +++ b/docs/apache-airflow/extra-packages-ref.rst @@ -260,7 +260,7 @@ Those are extras that provide support for integration with external systems via +---------------------+-----------------------------------------------------+--------------------------------------+--------------+ | grpc | ``pip install 'apache-airflow[grpc]'`` | Grpc hooks and operators | | +---------------------+-----------------------------------------------------+--------------------------------------+--------------+ -| http | ``pip install 'apache-airflow[http]'`` | HTTP hooks, operators and sensors | | +| http | ``pip install 'apache-airflow[http]'`` | HTTP hooks, operators and sensors | * | +---------------------+-----------------------------------------------------+--------------------------------------+--------------+ | imap | ``pip install 'apache-airflow[imap]'`` | IMAP hooks and sensors | * | +---------------------+-----------------------------------------------------+--------------------------------------+--------------+ diff --git a/setup.py b/setup.py index 0ec5e9f31dd28..dcbf78a8a93cb 100644 --- a/setup.py +++ b/setup.py @@ -231,13 +231,13 @@ def write_version(filename: str = os.path.join(*[my_dir, "airflow", "git_version 'distributed>=2.11.1, <2.20', ] databricks = [ - 'requests>=2.20.0, <3', + 'requests>=2.26.0, <3', ] datadog = [ 'datadog>=0.14.0', ] deprecated_api = [ - 'requests>=2.20.0', + 'requests>=2.26.0', ] doc = [ # Sphinx is limited to < 3.5.0 because of https://github.com/sphinx-doc/sphinx/issues/8880 @@ -333,7 +333,9 @@ def write_version(filename: str = os.path.join(*[my_dir, "airflow", "git_version 'thrift>=0.9.2', ] http = [ - 'requests>=2.20.0', + # The 2.26.0 release of requests got rid of the chardet LGPL mandatory dependency, allowing us to + # release it as a requirement for airflow + 'requests>=2.26.0', ] http_provider = [ # NOTE ! The HTTP provider is NOT preinstalled by default when Airflow is installed - because it @@ -815,12 +817,9 @@ def sort_extras_requirements() -> Dict[str, List[str]]: # Those providers are pre-installed always when airflow is installed. # Those providers do not have dependency on airflow2.0 because that would lead to circular dependencies. # This is not a problem for PIP but some tools (pipdeptree) show those as a warning. -# NOTE ! The HTTP provider is NOT preinstalled by default when Airflow is installed - because it -# depends on `requests` library and until `chardet` is mandatory dependency of `requests` -# we cannot make it mandatory dependency. See https://github.com/psf/requests/pull/5797 PREINSTALLED_PROVIDERS = [ 'ftp', - # 'http', + 'http', 'imap', 'sqlite', ]