| # Copyright 2014 Google Inc. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| import io |
| import os |
| |
| import setuptools |
| |
| # Disable version normalization performed by setuptools.setup() |
| # Adding this in even though it works for Python3.x, but does not |
| # work for Python 2.7 |
| try: |
| # Try the approach of using sic(), added in setuptools 46.1.0 |
| from setuptools import sic |
| except ImportError: |
| # Try the approach of replacing packaging.version.Version |
| sic = lambda v: v |
| try: |
| # setuptools >=39.0.0 uses packaging from setuptools.extern |
| from setuptools.extern import packaging |
| except ImportError: |
| # setuptools <39.0.0 uses packaging from pkg_resources.extern |
| from pkg_resources.extern import packaging |
| packaging.version.Version = packaging.version.LegacyVersion |
| |
| DEPENDENCIES = ( |
| "cachetools>=2.0.0,<5.0", |
| "pyasn1-modules>=0.2.1", |
| # rsa==4.5 is the last version to support 2.7 |
| # https://github.com/sybrenstuvel/python-rsa/issues/152#issuecomment-643470233 |
| 'rsa<4.6; python_version < "3.6"', |
| 'rsa>=3.1.4,<5; python_version >= "3.6"', |
| "setuptools>=40.3.0", |
| "six>=1.9.0", |
| ) |
| |
| extras = { |
| "aiohttp": "aiohttp >= 3.6.2, < 4.0.0dev; python_version>='3.6'", |
| "pyopenssl": "pyopenssl>=20.0.0", |
| "reauth": "pyu2f>=0.1.5", |
| } |
| |
| with io.open("README.rst", "r") as fh: |
| long_description = fh.read() |
| |
| package_root = os.path.abspath(os.path.dirname(__file__)) |
| |
| version = {} |
| with open(os.path.join(package_root, "google/auth/version.py")) as fp: |
| exec(fp.read(), version) |
| version = version["__version__"] |
| |
| setuptools.setup( |
| name="google-auth", |
| version=sic(version), |
| author="Google Cloud Platform", |
| author_email="[email protected]", |
| description="Google Authentication Library", |
| long_description=long_description, |
| url="https://github.com/googleapis/google-auth-library-python", |
| packages=setuptools.find_packages(exclude=("tests*", "system_tests*")), |
| namespace_packages=("google",), |
| install_requires=DEPENDENCIES, |
| extras_require=extras, |
| python_requires=">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*", |
| license="Apache 2.0", |
| keywords="google auth oauth client", |
| classifiers=[ |
| "Programming Language :: Python :: 2", |
| "Programming Language :: Python :: 2.7", |
| "Programming Language :: Python :: 3", |
| "Programming Language :: Python :: 3.6", |
| "Programming Language :: Python :: 3.7", |
| "Programming Language :: Python :: 3.8", |
| "Programming Language :: Python :: 3.9", |
| "Development Status :: 5 - Production/Stable", |
| "Intended Audience :: Developers", |
| "License :: OSI Approved :: Apache Software License", |
| "Operating System :: POSIX", |
| "Operating System :: Microsoft :: Windows", |
| "Operating System :: MacOS :: MacOS X", |
| "Operating System :: OS Independent", |
| "Topic :: Internet :: WWW/HTTP", |
| ], |
| ) |