prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Setuptools as dependency is problematic w/ pip-tools
  https://github.com/googleapis/google-auth-library-python/commit/908da752d01fef728bd5cb3eb5b13f2b5c335e51 (#322) added `setuptools` as a dependency in this package. However, the [pip-tools](https://github.com/jazzband/pip-tools) package that's commonly used for pinning dependencies considers `setuptools` an unsafe dependency to have in a project at all (as discussed in #492), and as such doesn't save it in the pinned requirements file at all.
  
  Since `google-auth` depends on Setuptools but a version couldn't have been pinned in the requirements, we're seeing
  
  ```
  Collecting setuptools>=40.3.0 (from google-auth==1.19.1->our-proprietary-package==0.31.1)
    Downloading https://files.pythonhosted.org/packages/b0/8b/379494d7dbd3854aa7b85b216cb0af54edcb7fce7d086ba3e35522a713cf/setuptools-50.0.0-py3-none-any.whl (783kB)
  ```
  
  which wreaks havoc on Ubuntu 16.04 + Python 3.5 machines due to https://github.com/pypa/setuptools/issues/2352 / https://github.com/pypa/setuptools/issues/2350 / https://github.com/pypa/setuptools/issues/2356 ...
  
  The workaround is to add `--allow-unsafe` or manually pin `setuptools`, but is the requirement _actually_ necessary in this package? No other package in the 48-line `requirements.txt` for this particular project would have required a version of `setuptools`.
  
  #### Environment details
  
    - OS: Ubuntu 16.04
    - Python version: 3.5
    - pip version: irrelevant
    - `google-auth` version: 1.19.1
  
  #### Steps to reproduce
  
    1. Install `google-auth` on an Ubuntu 16.04 machine
    2. It installs `setuptools==50.0.0`
    3. https://github.com/pypa/setuptools/issues/2352 and friends
  
  
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `setup.py`
  Content:
  ```
  1 # Copyright 2014 Google Inc.
  2 #
  3 # Licensed under the Apache License, Version 2.0 (the "License");
  4 # you may not use this file except in compliance with the License.
  5 # You may obtain a copy of the License at
  6 #
  7 #      http://www.apache.org/licenses/LICENSE-2.0
  8 #
  9 # Unless required by applicable law or agreed to in writing, software
  10 # distributed under the License is distributed on an "AS IS" BASIS,
  11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12 # See the License for the specific language governing permissions and
  13 # limitations under the License.
  14 
  15 import io
  16 import os
  17 
  18 from setuptools import find_packages
  19 from setuptools import setup
  20 
  21 
  22 DEPENDENCIES = (
  23     "cachetools>=2.0.0,<5.0",
  24     "pyasn1-modules>=0.2.1",
  25     # rsa==4.5 is the last version to support 2.7
  26     # https://github.com/sybrenstuvel/python-rsa/issues/152#issuecomment-643470233
  27     'rsa<4.6; python_version < "3.6"',
  28     'rsa>=3.1.4,<5; python_version >= "3.6"',
  29     # install enum34 to support 2.7. enum34 only works up to python version 3.3.
  30     'enum34>=1.1.10; python_version < "3.4"',
  31     "setuptools>=40.3.0",
  32     "six>=1.9.0",
  33 )
  34 
  35 extras = {
  36     "aiohttp": [
  37         "aiohttp >= 3.6.2, < 4.0.0dev; python_version>='3.6'",
  38         "requests >= 2.20.0, < 3.0.0dev",
  39     ],
  40     "pyopenssl": "pyopenssl>=20.0.0",
  41     "reauth": "pyu2f>=0.1.5",
  42 }
  43 
  44 with io.open("README.rst", "r") as fh:
  45     long_description = fh.read()
  46 
  47 package_root = os.path.abspath(os.path.dirname(__file__))
  48 
  49 version = {}
  50 with open(os.path.join(package_root, "google/auth/version.py")) as fp:
  51     exec(fp.read(), version)
  52 version = version["__version__"]
  53 
  54 setup(
  55     name="google-auth",
  56     version=version,
  57     author="Google Cloud Platform",
  58     author_email="googleapis-packages@google.com",
  59     description="Google Authentication Library",
  60     long_description=long_description,
  61     url="https://github.com/googleapis/google-auth-library-python",
  62     packages=find_packages(exclude=("tests*", "system_tests*")),
  63     namespace_packages=("google",),
  64     install_requires=DEPENDENCIES,
  65     extras_require=extras,
  66     python_requires=">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*",
  67     license="Apache 2.0",
  68     keywords="google auth oauth client",
  69     classifiers=[
  70         "Programming Language :: Python :: 3",
  71         "Programming Language :: Python :: 3.6",
  72         "Programming Language :: Python :: 3.7",
  73         "Programming Language :: Python :: 3.8",
  74         "Programming Language :: Python :: 3.9",
  75         "Programming Language :: Python :: 3.10",
  76         "Development Status :: 5 - Production/Stable",
  77         "Intended Audience :: Developers",
  78         "License :: OSI Approved :: Apache Software License",
  79         "Operating System :: POSIX",
  80         "Operating System :: Microsoft :: Windows",
  81         "Operating System :: MacOS :: MacOS X",
  82         "Operating System :: OS Independent",
  83         "Topic :: Internet :: WWW/HTTP",
  84     ],
  85 )
  86
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/setup.py b/setup.py
  --- a/setup.py
  +++ b/setup.py
  @@ -28,7 +28,6 @@
       'rsa>=3.1.4,<5; python_version >= "3.6"',
       # install enum34 to support 2.7. enum34 only works up to python version 3.3.
       'enum34>=1.1.10; python_version < "3.4"',
  -    "setuptools>=40.3.0",
       "six>=1.9.0",
   )
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -28,7 +28,6 @@\n     'rsa>=3.1.4,<5; python_version >= \"3.6\"',\n     # install enum34 to support 2.7. enum34 only works up to python version 3.3.\n     'enum34>=1.1.10; python_version < \"3.4\"',\n-    \"setuptools>=40.3.0\",\n     \"six>=1.9.0\",\n )\n", "issue": "Setuptools as dependency is problematic w/ pip-tools\nhttps://github.com/googleapis/google-auth-library-python/commit/908da752d01fef728bd5cb3eb5b13f2b5c335e51 (#322) added `setuptools` as a dependency in this package. However, the [pip-tools](https://github.com/jazzband/pip-tools) package that's commonly used for pinning dependencies considers `setuptools` an unsafe dependency to have in a project at all (as discussed in #492), and as such doesn't save it in the pinned requirements file at all.\r\n\r\nSince `google-auth` depends on Setuptools but a version couldn't have been pinned in the requirements, we're seeing\r\n\r\n```\r\nCollecting setuptools>=40.3.0 (from google-auth==1.19.1->our-proprietary-package==0.31.1)\r\n  Downloading https://files.pythonhosted.org/packages/b0/8b/379494d7dbd3854aa7b85b216cb0af54edcb7fce7d086ba3e35522a713cf/setuptools-50.0.0-py3-none-any.whl (783kB)\r\n```\r\n\r\nwhich wreaks havoc on Ubuntu 16.04 + Python 3.5 machines due to https://github.com/pypa/setuptools/issues/2352 / https://github.com/pypa/setuptools/issues/2350 / https://github.com/pypa/setuptools/issues/2356 ...\r\n\r\nThe workaround is to add `--allow-unsafe` or manually pin `setuptools`, but is the requirement _actually_ necessary in this package? No other package in the 48-line `requirements.txt` for this particular project would have required a version of `setuptools`.\r\n\r\n#### Environment details\r\n\r\n  - OS: Ubuntu 16.04\r\n  - Python version: 3.5\r\n  - pip version: irrelevant\r\n  - `google-auth` version: 1.19.1\r\n\r\n#### Steps to reproduce\r\n\r\n  1. Install `google-auth` on an Ubuntu 16.04 machine\r\n  2. It installs `setuptools==50.0.0`\r\n  3. https://github.com/pypa/setuptools/issues/2352 and friends\r\n\r\n\r\n\n", "before_files": [{"content": "# Copyright 2014 Google Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport io\nimport os\n\nfrom setuptools import find_packages\nfrom setuptools import setup\n\n\nDEPENDENCIES = (\n    \"cachetools>=2.0.0,<5.0\",\n    \"pyasn1-modules>=0.2.1\",\n    # rsa==4.5 is the last version to support 2.7\n    # https://github.com/sybrenstuvel/python-rsa/issues/152#issuecomment-643470233\n    'rsa<4.6; python_version < \"3.6\"',\n    'rsa>=3.1.4,<5; python_version >= \"3.6\"',\n    # install enum34 to support 2.7. enum34 only works up to python version 3.3.\n    'enum34>=1.1.10; python_version < \"3.4\"',\n    \"setuptools>=40.3.0\",\n    \"six>=1.9.0\",\n)\n\nextras = {\n    \"aiohttp\": [\n        \"aiohttp >= 3.6.2, < 4.0.0dev; python_version>='3.6'\",\n        \"requests >= 2.20.0, < 3.0.0dev\",\n    ],\n    \"pyopenssl\": \"pyopenssl>=20.0.0\",\n    \"reauth\": \"pyu2f>=0.1.5\",\n}\n\nwith io.open(\"README.rst\", \"r\") as fh:\n    long_description = fh.read()\n\npackage_root = os.path.abspath(os.path.dirname(__file__))\n\nversion = {}\nwith open(os.path.join(package_root, \"google/auth/version.py\")) as fp:\n    exec(fp.read(), version)\nversion = version[\"__version__\"]\n\nsetup(\n    name=\"google-auth\",\n    version=version,\n    author=\"Google Cloud Platform\",\n    author_email=\"googleapis-packages@google.com\",\n    description=\"Google Authentication Library\",\n    long_description=long_description,\n    url=\"https://github.com/googleapis/google-auth-library-python\",\n    packages=find_packages(exclude=(\"tests*\", \"system_tests*\")),\n    namespace_packages=(\"google\",),\n    install_requires=DEPENDENCIES,\n    extras_require=extras,\n    python_requires=\">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*\",\n    license=\"Apache 2.0\",\n    keywords=\"google auth oauth client\",\n    classifiers=[\n        \"Programming Language :: Python :: 3\",\n        \"Programming Language :: Python :: 3.6\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Development Status :: 5 - Production/Stable\",\n        \"Intended Audience :: Developers\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Operating System :: POSIX\",\n        \"Operating System :: Microsoft :: Windows\",\n        \"Operating System :: MacOS :: MacOS X\",\n        \"Operating System :: OS Independent\",\n        \"Topic :: Internet :: WWW/HTTP\",\n    ],\n)\n", "path": "setup.py"}], "after_files": [{"content": "# Copyright 2014 Google Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport io\nimport os\n\nfrom setuptools import find_packages\nfrom setuptools import setup\n\n\nDEPENDENCIES = (\n    \"cachetools>=2.0.0,<5.0\",\n    \"pyasn1-modules>=0.2.1\",\n    # rsa==4.5 is the last version to support 2.7\n    # https://github.com/sybrenstuvel/python-rsa/issues/152#issuecomment-643470233\n    'rsa<4.6; python_version < \"3.6\"',\n    'rsa>=3.1.4,<5; python_version >= \"3.6\"',\n    # install enum34 to support 2.7. enum34 only works up to python version 3.3.\n    'enum34>=1.1.10; python_version < \"3.4\"',\n    \"six>=1.9.0\",\n)\n\nextras = {\n    \"aiohttp\": [\n        \"aiohttp >= 3.6.2, < 4.0.0dev; python_version>='3.6'\",\n        \"requests >= 2.20.0, < 3.0.0dev\",\n    ],\n    \"pyopenssl\": \"pyopenssl>=20.0.0\",\n    \"reauth\": \"pyu2f>=0.1.5\",\n}\n\nwith io.open(\"README.rst\", \"r\") as fh:\n    long_description = fh.read()\n\npackage_root = os.path.abspath(os.path.dirname(__file__))\n\nversion = {}\nwith open(os.path.join(package_root, \"google/auth/version.py\")) as fp:\n    exec(fp.read(), version)\nversion = version[\"__version__\"]\n\nsetup(\n    name=\"google-auth\",\n    version=version,\n    author=\"Google Cloud Platform\",\n    author_email=\"googleapis-packages@google.com\",\n    description=\"Google Authentication Library\",\n    long_description=long_description,\n    url=\"https://github.com/googleapis/google-auth-library-python\",\n    packages=find_packages(exclude=(\"tests*\", \"system_tests*\")),\n    namespace_packages=(\"google\",),\n    install_requires=DEPENDENCIES,\n    extras_require=extras,\n    python_requires=\">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*\",\n    license=\"Apache 2.0\",\n    keywords=\"google auth oauth client\",\n    classifiers=[\n        \"Programming Language :: Python :: 3\",\n        \"Programming Language :: Python :: 3.6\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Development Status :: 5 - Production/Stable\",\n        \"Intended Audience :: Developers\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Operating System :: POSIX\",\n        \"Operating System :: Microsoft :: Windows\",\n        \"Operating System :: MacOS :: MacOS X\",\n        \"Operating System :: OS Independent\",\n        \"Topic :: Internet :: WWW/HTTP\",\n    ],\n)\n", "path": "setup.py"}]}