Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 1 | # Copyright 2018 Google LLC |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 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 | |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 15 | import io |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 16 | import os |
| 17 | |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 18 | import setuptools |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 19 | |
| 20 | |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 21 | # Package metadata. |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 22 | |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 23 | name = "google-api-core" |
| 24 | description = "Google API client core library" |
Christopher Wilcox | d480d97 | 2020-10-05 12:06:00 -0700 | [diff] [blame] | 25 | |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 26 | # Should be one of: |
| 27 | # 'Development Status :: 3 - Alpha' |
| 28 | # 'Development Status :: 4 - Beta' |
Jon Wayne Parrott | a7309d7 | 2018-03-15 08:52:22 -0700 | [diff] [blame] | 29 | # 'Development Status :: 5 - Production/Stable' |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 30 | release_status = "Development Status :: 5 - Production/Stable" |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 31 | dependencies = [ |
Tres Seaver | 13eea09 | 2019-07-17 14:46:56 -0400 | [diff] [blame] | 32 | "googleapis-common-protos >= 1.6.0, < 2.0dev", |
Bu Sun Kim | 1ba6095 | 2020-06-16 09:40:08 -0700 | [diff] [blame] | 33 | "protobuf >= 3.12.0", |
arithmetic1728 | 8f8ee78 | 2020-09-03 11:15:13 -0700 | [diff] [blame] | 34 | "google-auth >= 1.21.1, < 2.0dev", |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 35 | "requests >= 2.18.0, < 3.0.0dev", |
| 36 | "setuptools >= 34.0.0", |
Bu Sun Kim | a7a8b98 | 2020-10-02 14:07:39 -0600 | [diff] [blame] | 37 | "six >= 1.13.0", |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 38 | "pytz", |
| 39 | 'futures >= 3.2.0; python_version < "3.2"', |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 40 | ] |
| 41 | extras = { |
Lidi Zheng | 4b11422 | 2020-06-05 19:21:33 -0700 | [diff] [blame] | 42 | "grpc": "grpcio >= 1.29.0, < 2.0dev", |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 43 | "grpcgcp": "grpcio-gcp >= 0.2.2", |
| 44 | "grpcio-gcp": "grpcio-gcp >= 0.2.2", |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 45 | } |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 46 | |
| 47 | |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 48 | # Setup boilerplate below this line. |
| 49 | |
| 50 | package_root = os.path.abspath(os.path.dirname(__file__)) |
| 51 | |
Christopher Wilcox | db8e636 | 2020-10-06 10:33:09 -0700 | [diff] [blame] | 52 | |
| 53 | version = {} |
| 54 | with open(os.path.join(package_root, "google/api_core/version.py")) as fp: |
| 55 | exec(fp.read(), version) |
Tres Seaver | fdbed0f | 2020-12-10 15:19:02 -0500 | [diff] [blame] | 56 | version = version["__version__"] |
Christopher Wilcox | db8e636 | 2020-10-06 10:33:09 -0700 | [diff] [blame] | 57 | |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 58 | readme_filename = os.path.join(package_root, "README.rst") |
| 59 | with io.open(readme_filename, encoding="utf-8") as readme_file: |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 60 | readme = readme_file.read() |
| 61 | |
| 62 | # Only include packages under the 'google' namespace. Do not include tests, |
| 63 | # benchmarks, etc. |
| 64 | packages = [ |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 65 | package for package in setuptools.find_packages() if package.startswith("google") |
| 66 | ] |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 67 | |
| 68 | # Determine which namespaces are needed. |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 69 | namespaces = ["google"] |
| 70 | if "google.cloud" in packages: |
| 71 | namespaces.append("google.cloud") |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 72 | |
| 73 | |
| 74 | setuptools.setup( |
| 75 | name=name, |
| 76 | version=version, |
| 77 | description=description, |
| 78 | long_description=readme, |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 79 | author="Google LLC", |
| 80 | author_email="googleapis-packages@google.com", |
| 81 | license="Apache 2.0", |
Bu Sun Kim | e72202e | 2020-02-19 17:58:47 -0800 | [diff] [blame] | 82 | url="https://github.com/googleapis/python-api-core", |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 83 | classifiers=[ |
| 84 | release_status, |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 85 | "Intended Audience :: Developers", |
| 86 | "License :: OSI Approved :: Apache Software License", |
| 87 | "Programming Language :: Python", |
| 88 | "Programming Language :: Python :: 2", |
| 89 | "Programming Language :: Python :: 2.7", |
| 90 | "Programming Language :: Python :: 3", |
| 91 | "Programming Language :: Python :: 3.5", |
| 92 | "Programming Language :: Python :: 3.6", |
| 93 | "Programming Language :: Python :: 3.7", |
Tres Seaver | fdbed0f | 2020-12-10 15:19:02 -0500 | [diff] [blame] | 94 | "Programming Language :: Python :: 3.8", |
| 95 | "Programming Language :: Python :: 3.9", |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 96 | "Operating System :: OS Independent", |
| 97 | "Topic :: Internet", |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 98 | ], |
Christopher Wilcox | 6f4070d | 2018-11-29 11:02:52 -0800 | [diff] [blame] | 99 | platforms="Posix; MacOS X; Windows", |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 100 | packages=packages, |
| 101 | namespace_packages=namespaces, |
| 102 | install_requires=dependencies, |
| 103 | extras_require=extras, |
Tres Seaver | 9ac3708 | 2020-12-14 12:44:10 -0500 | [diff] [blame] | 104 | python_requires=">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*", |
Jon Wayne Parrott | c0f12e2 | 2018-02-22 10:28:50 -0800 | [diff] [blame] | 105 | include_package_data=True, |
| 106 | zip_safe=False, |
Jon Wayne Parrott | 77fb0f2 | 2017-10-18 12:52:35 -0700 | [diff] [blame] | 107 | ) |