2021-01-31 22:40:30 -08:00
|
|
|
import os
|
2021-02-11 23:14:20 -08:00
|
|
|
|
2021-01-31 22:40:30 -08:00
|
|
|
import setuptools
|
|
|
|
|
|
|
|
|
|
|
|
def get_version():
|
|
|
|
root = os.path.dirname(__file__)
|
|
|
|
changelog = os.path.join(root, "CHANGELOG")
|
|
|
|
with open(changelog) as f:
|
|
|
|
return f.readline().strip()
|
|
|
|
|
|
|
|
|
|
|
|
def get_long_description():
|
|
|
|
root = os.path.dirname(__file__)
|
|
|
|
with open(os.path.join(root, "README.md")) as f:
|
|
|
|
description = f.read()
|
|
|
|
|
|
|
|
description += "\n\nChangelog\n=========\n\n"
|
|
|
|
|
|
|
|
with open(os.path.join(root, "CHANGELOG")) as f:
|
|
|
|
description += f.read()
|
|
|
|
|
|
|
|
return description
|
|
|
|
|
|
|
|
|
|
|
|
setuptools.setup(
|
2021-02-15 15:04:21 -08:00
|
|
|
name="datahub",
|
2021-01-31 22:40:30 -08:00
|
|
|
version=get_version(),
|
|
|
|
url="https://github.com/linkedin/datahub",
|
|
|
|
author="DataHub Committers",
|
|
|
|
license="Apache License 2.0",
|
|
|
|
description="A CLI to work with DataHub metadata",
|
|
|
|
long_description=get_long_description(),
|
|
|
|
long_description_content_type="text/markdown",
|
|
|
|
classifiers=[
|
|
|
|
"Development Status :: 5 - Production/Stable",
|
|
|
|
"Programming Language :: Python",
|
|
|
|
"Programming Language :: Python :: 3",
|
|
|
|
"Programming Language :: Python :: 3 :: Only",
|
2021-02-12 10:52:08 -08:00
|
|
|
"Programming Language :: Python :: 3.6",
|
2021-01-31 22:40:30 -08:00
|
|
|
"Programming Language :: Python :: 3.7",
|
|
|
|
"Programming Language :: Python :: 3.8",
|
2021-02-07 11:14:05 -08:00
|
|
|
"Programming Language :: Python :: 3.9",
|
2021-01-31 22:40:30 -08:00
|
|
|
"Intended Audience :: Developers",
|
|
|
|
"Intended Audience :: Information Technology",
|
|
|
|
"Intended Audience :: System Administrators",
|
|
|
|
"License :: OSI Approved",
|
|
|
|
"License :: OSI Approved :: Apache Software License",
|
|
|
|
"Operating System :: Unix",
|
|
|
|
"Operating System :: POSIX :: Linux",
|
|
|
|
"Environment :: Console",
|
|
|
|
"Environment :: MacOS X",
|
|
|
|
"Topic :: Software Development",
|
|
|
|
],
|
2021-02-11 16:23:03 -08:00
|
|
|
python_requires=">=3.6",
|
2021-01-31 22:40:30 -08:00
|
|
|
package_dir={"": "src"},
|
2021-02-12 10:52:08 -08:00
|
|
|
packages=setuptools.find_packages(where="./src"),
|
2021-01-31 22:40:30 -08:00
|
|
|
include_package_data=True,
|
2021-02-15 15:04:21 -08:00
|
|
|
package_data={"datahub": ["py.typed"]},
|
2021-01-31 22:40:30 -08:00
|
|
|
entry_points={
|
2021-02-15 15:04:21 -08:00
|
|
|
"console_scripts": ["datahub = datahub.entrypoints:datahub"],
|
2021-01-31 22:40:30 -08:00
|
|
|
},
|
|
|
|
install_requires=[
|
2021-02-12 10:52:08 -08:00
|
|
|
# Compatability.
|
|
|
|
"dataclasses>=0.6; python_version < '3.7'",
|
|
|
|
"typing_extensions>=3.7.4; python_version < '3.8'",
|
|
|
|
"mypy_extensions>=0.4.3",
|
|
|
|
# Actual dependencies.
|
2021-01-31 22:40:30 -08:00
|
|
|
"click>=7.1.1",
|
|
|
|
"pyyaml>=5.4.1",
|
|
|
|
"toml>=0.10.0",
|
|
|
|
"pydantic>=1.5.1",
|
|
|
|
"requests>=2.25.1",
|
2021-02-15 16:34:42 -08:00
|
|
|
"avro_gen @ https://api.github.com/repos/rbystrit/avro_gen/tarball/master",
|
2021-02-12 10:52:08 -08:00
|
|
|
# Note: we currently require both Avro libraries. The codegen uses avro-python3
|
|
|
|
# schema parsers at runtime for generating and reading JSON into Python objects.
|
|
|
|
# At the same time, we use Kafka's AvroSerializer, which internally relies on
|
2021-02-15 14:39:59 -08:00
|
|
|
# fastavro for serialization. We do not use confluent_kafka[avro], since it
|
|
|
|
# is incompatible with its own dep on avro-python3.
|
|
|
|
"confluent_kafka>=1.5.0",
|
2021-02-12 10:52:08 -08:00
|
|
|
"fastavro>=1.3.0",
|
|
|
|
"avro-python3>=1.8.2",
|
|
|
|
"sqlalchemy>=1.3.23", # Required for SQL sources
|
2021-01-31 22:40:30 -08:00
|
|
|
],
|
|
|
|
)
|