2020-04-06 11:52:18 +02:00
|
|
|
# Copyright © 2020 Interplanetary Database Association e.V.,
|
|
|
|
# BigchainDB and IPDB software contributors.
|
2018-08-16 12:31:32 +02:00
|
|
|
# SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
|
|
|
|
# Code is Apache-2.0 and docs are CC-BY-4.0
|
|
|
|
|
2016-02-09 21:50:55 +01:00
|
|
|
"""
|
2018-03-25 13:28:21 +02:00
|
|
|
BigchainDB: The Blockchain Database
|
2016-02-09 21:50:55 +01:00
|
|
|
|
2017-01-17 14:21:54 +01:00
|
|
|
For full docs visit https://docs.bigchaindb.com
|
2016-02-09 21:50:55 +01:00
|
|
|
|
|
|
|
"""
|
|
|
|
|
2020-08-07 11:22:47 +02:00
|
|
|
import sys
|
|
|
|
from setuptools import setup, find_packages
|
2016-05-12 15:08:30 +02:00
|
|
|
|
2018-05-11 09:15:48 +02:00
|
|
|
if sys.version_info < (3, 6):
|
|
|
|
sys.exit('Please use Python version 3.6 or higher.')
|
|
|
|
|
2016-04-21 13:38:02 +02:00
|
|
|
# get the version
|
|
|
|
version = {}
|
|
|
|
with open('bigchaindb/version.py') as fp:
|
|
|
|
exec(fp.read(), version)
|
|
|
|
|
2016-05-12 15:08:30 +02:00
|
|
|
def check_setuptools_features():
|
2020-08-07 11:22:47 +02:00
|
|
|
"""Check if setuptools is up to date."""
|
2016-05-12 15:08:30 +02:00
|
|
|
import pkg_resources
|
|
|
|
try:
|
|
|
|
list(pkg_resources.parse_requirements('foo~=1.0'))
|
2016-05-19 11:08:26 +02:00
|
|
|
except ValueError:
|
2020-08-07 11:22:47 +02:00
|
|
|
sys.exit('Your Python distribution comes with an incompatible version '
|
|
|
|
'of `setuptools`. Please run:\n'
|
|
|
|
' $ pip3 install --upgrade setuptools\n'
|
|
|
|
'and then run this command again')
|
2016-05-12 15:08:30 +02:00
|
|
|
|
|
|
|
|
|
|
|
check_setuptools_features()
|
|
|
|
|
2016-02-11 22:22:48 +01:00
|
|
|
dev_require = [
|
|
|
|
'ipdb',
|
|
|
|
'ipython',
|
2016-12-13 11:55:50 +01:00
|
|
|
'watchdog',
|
2017-03-13 17:55:11 +01:00
|
|
|
'logging_tree',
|
2017-11-20 15:25:49 +01:00
|
|
|
'pre-commit'
|
2016-02-11 22:22:48 +01:00
|
|
|
]
|
|
|
|
|
2016-02-17 15:47:47 +01:00
|
|
|
docs_require = [
|
2018-09-13 12:05:01 +02:00
|
|
|
'Sphinx~=1.0',
|
2016-07-14 11:44:28 +02:00
|
|
|
'recommonmark>=0.4.0',
|
2016-03-02 01:12:42 +01:00
|
|
|
'sphinx-rtd-theme>=0.1.9',
|
2016-07-14 11:44:28 +02:00
|
|
|
'sphinxcontrib-httpdomain>=1.5.0',
|
2016-11-24 14:33:59 +01:00
|
|
|
'sphinxcontrib-napoleon>=0.4.4',
|
2018-02-08 11:54:57 +01:00
|
|
|
'aafigure>=0.6',
|
2018-06-28 18:08:55 +02:00
|
|
|
'wget'
|
2016-02-17 15:47:47 +01:00
|
|
|
]
|
|
|
|
|
2016-11-30 16:41:24 +01:00
|
|
|
tests_require = [
|
|
|
|
'coverage',
|
|
|
|
'pep8',
|
|
|
|
'flake8',
|
2017-01-23 17:30:37 +01:00
|
|
|
'flake8-quotes==0.8.1',
|
2020-01-26 20:18:40 +01:00
|
|
|
'hypothesis>=5.3.0',
|
2018-08-02 16:35:07 +02:00
|
|
|
# Removed pylint because its GPL license isn't Apache2-compatible
|
2016-12-08 11:42:46 +01:00
|
|
|
'pytest>=3.0.0',
|
2020-08-11 17:13:10 +02:00
|
|
|
'pytest-cov==2.8.1',
|
2017-02-28 17:24:24 +01:00
|
|
|
'pytest-mock',
|
2016-11-30 16:41:24 +01:00
|
|
|
'pytest-xdist',
|
|
|
|
'pytest-flask',
|
2017-03-30 17:27:03 +02:00
|
|
|
'pytest-aiohttp',
|
2018-02-14 10:19:04 +01:00
|
|
|
'pytest-asyncio',
|
2016-12-07 18:42:26 +01:00
|
|
|
'tox',
|
2016-11-30 16:41:24 +01:00
|
|
|
] + docs_require
|
|
|
|
|
2016-10-18 03:46:21 +02:00
|
|
|
install_requires = [
|
2020-08-11 17:13:10 +02:00
|
|
|
'aiohttp==3.6.2',
|
|
|
|
'bigchaindb-abci==1.0.5',
|
2018-11-03 17:51:52 +01:00
|
|
|
'cryptoconditions==0.8.0',
|
2020-08-11 17:13:10 +02:00
|
|
|
'flask-cors==3.0.8',
|
|
|
|
'flask-restful==0.3.8',
|
|
|
|
'flask==1.1.2',
|
|
|
|
'gunicorn==20.0.4',
|
|
|
|
'jsonschema==3.2.0',
|
|
|
|
'logstats==0.3.0',
|
2020-08-13 18:52:45 +02:00
|
|
|
'packaging>=20.0.0', # Dockerfile-alpine required for pkg has ver 20.0.4
|
2020-08-11 17:13:10 +02:00
|
|
|
# TODO Consider not installing the db drivers, or putting them in extras.
|
|
|
|
'pymongo==3.7.2',
|
|
|
|
'python-rapidjson==0.9.1',
|
|
|
|
'pyyaml==5.3.1',
|
|
|
|
'requests==2.23.0',
|
|
|
|
'setproctitle==1.1.10',
|
2016-10-18 03:46:21 +02:00
|
|
|
]
|
|
|
|
|
2019-09-25 22:22:51 +02:00
|
|
|
if sys.version_info < (3, 6):
|
|
|
|
install_requires.append('pysha3~=1.0.2')
|
|
|
|
|
2016-02-09 21:50:55 +01:00
|
|
|
setup(
|
|
|
|
name='BigchainDB',
|
2016-04-21 13:38:02 +02:00
|
|
|
version=version['__version__'],
|
2018-03-25 13:28:21 +02:00
|
|
|
description='BigchainDB: The Blockchain Database',
|
2017-01-17 14:21:08 +01:00
|
|
|
long_description=(
|
2017-01-18 15:41:29 +01:00
|
|
|
"BigchainDB allows developers and enterprises to deploy blockchain "
|
2018-03-25 13:28:21 +02:00
|
|
|
"proof-of-concepts, platforms and applications with a blockchain "
|
2017-01-17 14:21:08 +01:00
|
|
|
"database. BigchainDB supports a wide range of industries and use cases "
|
|
|
|
"from identity and intellectual property to supply chains, energy, IoT "
|
2018-03-25 13:28:21 +02:00
|
|
|
"and financial ecosystems. With high throughput, low latency, powerful "
|
|
|
|
"query functionality, decentralized control, immutable data storage and "
|
|
|
|
"built-in asset support, BigchainDB is like a database with blockchain "
|
|
|
|
"characteristics."
|
2017-01-17 14:21:08 +01:00
|
|
|
),
|
2016-02-09 21:50:55 +01:00
|
|
|
url='https://github.com/BigchainDB/bigchaindb/',
|
|
|
|
author='BigchainDB Contributors',
|
2020-08-06 19:30:40 +02:00
|
|
|
author_email='contact@ipdb.global',
|
2018-03-21 14:03:15 +01:00
|
|
|
license='Apache Software License 2.0',
|
2016-02-09 21:50:55 +01:00
|
|
|
zip_safe=False,
|
2018-05-11 09:15:48 +02:00
|
|
|
python_requires='>=3.6',
|
2016-02-09 21:50:55 +01:00
|
|
|
classifiers=[
|
2018-06-01 13:49:23 +02:00
|
|
|
'Development Status :: 4 - Beta',
|
2016-02-22 11:51:17 +01:00
|
|
|
'Intended Audience :: Developers',
|
|
|
|
'Topic :: Database',
|
|
|
|
'Topic :: Database :: Database Engines/Servers',
|
|
|
|
'Topic :: Software Development',
|
|
|
|
'Natural Language :: English',
|
2018-03-21 14:03:15 +01:00
|
|
|
'License :: OSI Approved :: Apache Software License',
|
2016-10-31 15:08:00 +01:00
|
|
|
'Programming Language :: Python :: 3 :: Only',
|
2017-06-20 13:50:26 +02:00
|
|
|
'Programming Language :: Python :: 3.6',
|
2020-08-07 11:22:47 +02:00
|
|
|
'Programming Language :: Python :: 3.7',
|
|
|
|
'Programming Language :: Python :: 3.8',
|
2016-02-22 11:51:17 +01:00
|
|
|
'Operating System :: MacOS :: MacOS X',
|
|
|
|
'Operating System :: POSIX :: Linux',
|
2016-02-09 21:50:55 +01:00
|
|
|
],
|
|
|
|
|
2016-03-17 17:17:27 +01:00
|
|
|
packages=find_packages(exclude=['tests*']),
|
2016-02-10 19:55:33 +01:00
|
|
|
|
2020-08-07 11:22:47 +02:00
|
|
|
scripts=['pkg/scripts/bigchaindb-monit-config'],
|
2018-07-27 17:33:55 +02:00
|
|
|
|
2016-02-10 19:55:33 +01:00
|
|
|
entry_points={
|
|
|
|
'console_scripts': [
|
2017-03-29 16:35:01 +02:00
|
|
|
'bigchaindb=bigchaindb.commands.bigchaindb:main'
|
2016-02-10 19:55:33 +01:00
|
|
|
],
|
|
|
|
},
|
2016-10-18 03:46:21 +02:00
|
|
|
install_requires=install_requires,
|
2017-07-12 12:56:59 +02:00
|
|
|
setup_requires=['pytest-runner'],
|
2016-02-12 01:32:00 +01:00
|
|
|
tests_require=tests_require,
|
2016-02-11 22:22:48 +01:00
|
|
|
extras_require={
|
|
|
|
'test': tests_require,
|
2018-09-20 14:30:30 +02:00
|
|
|
'dev': dev_require + tests_require + docs_require,
|
2016-06-10 14:01:53 +02:00
|
|
|
'docs': docs_require,
|
2016-02-11 22:22:48 +01:00
|
|
|
},
|
2016-12-13 14:28:00 +01:00
|
|
|
package_data={'bigchaindb.common.schema': ['*.yaml']},
|
2016-02-09 21:50:55 +01:00
|
|
|
)
|