2022-09-30 11:40:22 +03:00
|
|
|
from __future__ import annotations
|
|
|
|
|
2022-09-16 23:58:11 +03:00
|
|
|
import os
|
2023-01-20 00:40:32 +03:00
|
|
|
import sys
|
2022-09-16 23:58:11 +03:00
|
|
|
|
2023-06-26 23:08:29 +03:00
|
|
|
from setuptools import find_packages, setup
|
2019-07-19 06:30:31 +03:00
|
|
|
|
2020-01-13 16:19:53 +03:00
|
|
|
dependencies = [
|
2023-02-28 22:12:11 +03:00
|
|
|
"aiofiles==23.1.0", # Async IO for files
|
2023-07-28 01:02:48 +03:00
|
|
|
"anyio==3.7.1",
|
2023-06-30 22:20:42 +03:00
|
|
|
"blspy==2.0.2", # Signature library
|
2023-06-29 16:35:56 +03:00
|
|
|
"boto3==1.26.161", # AWS S3 for DL s3 plugin
|
2023-06-28 00:41:28 +03:00
|
|
|
"chiavdf==1.0.9", # timelord and vdf verification
|
2023-01-07 01:56:00 +03:00
|
|
|
"chiabip158==1.2", # bip158-style wallet filters
|
2023-07-22 12:33:01 +03:00
|
|
|
"chiapos==2.0.0rc1", # proof of space
|
2021-06-22 21:47:07 +03:00
|
|
|
"clvm==0.9.7",
|
2022-11-02 19:18:15 +03:00
|
|
|
"clvm_tools==0.4.6", # Currying, Program.to, other conveniences
|
2023-07-14 07:19:46 +03:00
|
|
|
"chia_rs==0.2.9",
|
2023-06-07 22:08:17 +03:00
|
|
|
"clvm-tools-rs==0.1.34", # Rust implementation of clvm_tools' compiler
|
2023-07-28 01:03:07 +03:00
|
|
|
"aiohttp==3.8.5", # HTTP server for full node rpc
|
2023-04-24 21:51:12 +03:00
|
|
|
"aiosqlite==0.19.0", # asyncio wrapper for sqlite, to store blocks
|
2023-05-11 02:53:04 +03:00
|
|
|
"bitstring==4.0.2", # Binary data management library
|
2023-02-11 00:12:54 +03:00
|
|
|
"colorama==0.4.6", # Colorizes terminal output
|
2022-09-28 12:28:07 +03:00
|
|
|
"colorlog==6.7.0", # Adds color to logs
|
2023-05-25 00:50:19 +03:00
|
|
|
"concurrent-log-handler==0.9.24", # Concurrently log and rotate logs
|
2023-07-28 01:02:57 +03:00
|
|
|
"cryptography==41.0.2", # Python cryptography library for TLS - keyring conflict
|
2023-06-21 20:59:47 +03:00
|
|
|
"filelock==3.12.2", # For reading and writing config multiprocess and multithread safely (non-reentrant locks)
|
2023-02-10 01:42:12 +03:00
|
|
|
"keyring==23.13.1", # Store keys in MacOS Keychain, Windows Credential Locker
|
2022-04-24 06:13:06 +03:00
|
|
|
"PyYAML==6.0", # Used for config file format
|
2023-02-28 21:26:50 +03:00
|
|
|
"setproctitle==1.3.2", # Gives the chia processes readable names
|
2021-09-07 19:04:47 +03:00
|
|
|
"sortedcontainers==2.4.0", # For maintaining sorted mempools
|
2022-09-29 19:24:36 +03:00
|
|
|
"click==8.1.3", # For the CLI
|
2023-03-02 03:09:30 +03:00
|
|
|
"dnspython==2.3.0", # Query DNS seeds
|
2023-01-07 01:56:15 +03:00
|
|
|
"watchdog==2.2.0", # Filesystem event watching - watches keyring.yaml
|
2022-11-12 23:18:43 +03:00
|
|
|
"dnslib==0.9.23", # dns lib
|
2023-07-28 01:02:33 +03:00
|
|
|
"typing-extensions==4.7.1", # typing backports like Protocol and TypedDict
|
2023-05-11 02:52:51 +03:00
|
|
|
"zstd==1.5.5.1",
|
2023-05-04 21:18:04 +03:00
|
|
|
"packaging==23.1",
|
2023-01-07 01:56:26 +03:00
|
|
|
"psutil==5.9.4",
|
2020-01-13 16:19:53 +03:00
|
|
|
]
|
2020-03-30 22:00:13 +03:00
|
|
|
|
2020-03-31 03:46:08 +03:00
|
|
|
upnp_dependencies = [
|
2021-06-14 18:21:12 +03:00
|
|
|
"miniupnpc==2.2.2", # Allows users to open ports on their router
|
2020-03-31 03:46:08 +03:00
|
|
|
]
|
2021-05-12 23:12:30 +03:00
|
|
|
|
2019-11-18 07:50:31 +03:00
|
|
|
dev_dependencies = [
|
2022-02-25 07:58:28 +03:00
|
|
|
"build",
|
2023-05-01 23:28:54 +03:00
|
|
|
# >=7.2.4 for https://github.com/nedbat/coveragepy/issues/1604
|
|
|
|
"coverage>=7.2.4",
|
2022-09-16 22:36:37 +03:00
|
|
|
"diff-cover",
|
2021-12-11 02:01:31 +03:00
|
|
|
"pre-commit",
|
2022-06-28 19:51:04 +03:00
|
|
|
"py3createtorrent",
|
2022-06-27 18:53:04 +03:00
|
|
|
"pylint",
|
2019-11-18 07:50:31 +03:00
|
|
|
"pytest",
|
2022-03-10 22:06:49 +03:00
|
|
|
"pytest-asyncio>=0.18.1", # require attribute 'fixture'
|
2022-09-16 22:36:37 +03:00
|
|
|
"pytest-cov",
|
2021-11-23 23:45:23 +03:00
|
|
|
"pytest-monitor; sys_platform == 'linux'",
|
|
|
|
"pytest-xdist",
|
2022-02-25 07:58:28 +03:00
|
|
|
"twine",
|
2022-02-15 18:28:53 +03:00
|
|
|
"isort",
|
2019-11-18 07:50:31 +03:00
|
|
|
"flake8",
|
2023-02-10 01:39:30 +03:00
|
|
|
"mypy",
|
2023-07-29 06:47:14 +03:00
|
|
|
"black==23.7.0",
|
2021-04-15 14:16:52 +03:00
|
|
|
"aiohttp_cors", # For blackd
|
2021-04-07 05:48:46 +03:00
|
|
|
"ipython", # For asyncio debugging
|
2023-06-29 16:36:44 +03:00
|
|
|
"pyinstaller==5.13.0",
|
2021-11-19 22:12:58 +03:00
|
|
|
"types-aiofiles",
|
2021-11-23 23:44:53 +03:00
|
|
|
"types-cryptography",
|
|
|
|
"types-pkg_resources",
|
|
|
|
"types-pyyaml",
|
2021-09-22 20:44:03 +03:00
|
|
|
"types-setuptools",
|
2019-11-18 07:50:31 +03:00
|
|
|
]
|
2019-07-19 06:30:31 +03:00
|
|
|
|
2022-12-04 08:31:51 +03:00
|
|
|
legacy_keyring_dependencies = [
|
|
|
|
"keyrings.cryptfile==1.3.9",
|
|
|
|
]
|
|
|
|
|
2020-04-01 03:39:42 +03:00
|
|
|
kwargs = dict(
|
2020-03-30 22:23:50 +03:00
|
|
|
name="chia-blockchain",
|
2019-11-18 07:50:31 +03:00
|
|
|
author="Mariano Sorgente",
|
|
|
|
author_email="mariano@chia.net",
|
2020-06-17 02:46:51 +03:00
|
|
|
description="Chia blockchain full node, farmer, timelord, and wallet.",
|
2020-04-19 22:34:15 +03:00
|
|
|
url="https://chia.net/",
|
2019-11-18 07:50:31 +03:00
|
|
|
license="Apache License",
|
2023-07-14 20:49:58 +03:00
|
|
|
python_requires=">=3.8.1, <4",
|
2019-11-18 07:50:31 +03:00
|
|
|
keywords="chia blockchain node",
|
2020-03-27 22:17:34 +03:00
|
|
|
install_requires=dependencies,
|
2020-04-01 03:39:42 +03:00
|
|
|
extras_require=dict(
|
2020-09-02 01:30:23 +03:00
|
|
|
dev=dev_dependencies,
|
|
|
|
upnp=upnp_dependencies,
|
2022-12-04 08:31:51 +03:00
|
|
|
legacy_keyring=legacy_keyring_dependencies,
|
2020-04-01 03:39:42 +03:00
|
|
|
),
|
2023-06-26 23:08:29 +03:00
|
|
|
packages=find_packages(include=["build_scripts", "chia", "chia.*", "mozilla-ca"]),
|
2020-03-27 22:17:34 +03:00
|
|
|
entry_points={
|
|
|
|
"console_scripts": [
|
2021-03-22 22:36:05 +03:00
|
|
|
"chia = chia.cmds.chia:main",
|
2022-04-28 00:28:13 +03:00
|
|
|
"chia_daemon = chia.daemon.server:main",
|
2021-03-22 22:36:05 +03:00
|
|
|
"chia_wallet = chia.server.start_wallet:main",
|
|
|
|
"chia_full_node = chia.server.start_full_node:main",
|
|
|
|
"chia_harvester = chia.server.start_harvester:main",
|
|
|
|
"chia_farmer = chia.server.start_farmer:main",
|
|
|
|
"chia_introducer = chia.server.start_introducer:main",
|
2022-02-14 22:48:35 +03:00
|
|
|
"chia_crawler = chia.seeder.start_crawler:main",
|
|
|
|
"chia_seeder = chia.seeder.dns_server:main",
|
2021-03-22 22:36:05 +03:00
|
|
|
"chia_timelord = chia.server.start_timelord:main",
|
|
|
|
"chia_timelord_launcher = chia.timelord.timelord_launcher:main",
|
|
|
|
"chia_full_node_simulator = chia.simulator.start_simulator:main",
|
2021-09-29 02:37:50 +03:00
|
|
|
"chia_data_layer = chia.server.start_data_layer:main",
|
2022-08-31 23:55:50 +03:00
|
|
|
"chia_data_layer_http = chia.data_layer.data_layer_server:main",
|
2023-04-15 03:07:00 +03:00
|
|
|
"chia_data_layer_s3_plugin = chia.data_layer.s3_plugin_service:run_server",
|
2020-03-27 22:17:34 +03:00
|
|
|
]
|
2020-01-23 08:19:47 +03:00
|
|
|
},
|
2021-03-04 04:26:26 +03:00
|
|
|
package_data={
|
2021-03-22 22:36:05 +03:00
|
|
|
"chia": ["pyinstaller.spec"],
|
2023-04-18 19:27:17 +03:00
|
|
|
"": ["*.clsp", "*.clsp.hex", "*.clvm", "*.clib", "py.typed"],
|
2021-03-22 22:36:05 +03:00
|
|
|
"chia.util": ["initial-*.yaml", "english.txt"],
|
|
|
|
"chia.ssl": ["chia_ca.crt", "chia_ca.key", "dst_root_ca.pem"],
|
2021-03-05 01:25:35 +03:00
|
|
|
"mozilla-ca": ["cacert.pem"],
|
2021-03-04 04:26:26 +03:00
|
|
|
},
|
2019-11-13 10:25:42 +03:00
|
|
|
long_description=open("README.md").read(),
|
2020-09-15 05:33:57 +03:00
|
|
|
long_description_content_type="text/markdown",
|
2019-07-19 06:30:31 +03:00
|
|
|
zip_safe=False,
|
2022-06-02 21:10:14 +03:00
|
|
|
project_urls={
|
|
|
|
"Source": "https://github.com/Chia-Network/chia-blockchain/",
|
|
|
|
"Changelog": "https://github.com/Chia-Network/chia-blockchain/blob/main/CHANGELOG.md",
|
|
|
|
},
|
2019-07-19 06:30:31 +03:00
|
|
|
)
|
2020-04-01 03:39:42 +03:00
|
|
|
|
2023-01-20 00:40:32 +03:00
|
|
|
if "setup_file" in sys.modules:
|
|
|
|
# include dev deps in regular deps when run in snyk
|
|
|
|
dependencies.extend(dev_dependencies)
|
2020-04-01 03:39:42 +03:00
|
|
|
|
2022-09-16 23:58:11 +03:00
|
|
|
if len(os.environ.get("CHIA_SKIP_SETUP", "")) < 1:
|
2021-10-13 20:26:15 +03:00
|
|
|
setup(**kwargs) # type: ignore
|