-
Notifications
You must be signed in to change notification settings - Fork 1
/
setup.py
123 lines (117 loc) · 4.35 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
from setuptools import setup
dependencies = [
"blspy==1.0.6", # Signature library
"sweetyvdf==1.0.3", # timelord and vdf verification
"sweetybip158==1.0", # bip158-style wallet filters
"sweetypos==1.0.4", # proof of space
"clvm==0.9.7",
"clvm_rs==0.1.14",
"clvm_tools==0.4.3",
"aiohttp==3.7.4", # HTTP server for full node rpc
"aiosqlite==0.17.0", # asyncio wrapper for sqlite, to store blocks
"bitstring==3.1.9", # Binary data management library
"colorama==0.4.4", # Colorizes terminal output
"colorlog==5.0.1", # Adds color to logs
"concurrent-log-handler==0.9.19", # Concurrently log and rotate logs
"cryptography==3.4.7", # Python cryptography library for TLS - keyring conflict
"fasteners==0.16.3", # For interprocess file locking
"keyring==23.0.1", # Store keys in MacOS Keychain, Windows Credential Locker
"keyrings.cryptfile==1.3.4", # Secure storage for keys on Linux (Will be replaced)
# "keyrings.cryptfile==1.3.8", # Secure storage for keys on Linux (Will be replaced)
# See https://github.com/frispete/keyrings.cryptfile/issues/15
"PyYAML==5.4.1", # Used for config file format
"setproctitle==1.2.2", # Gives the sweety processes readable names
"sortedcontainers==2.4.0", # For maintaining sorted mempools
"websockets==8.1.0", # For use in wallet RPC and electron UI
"click==7.1.2", # For the CLI
"dnspython==2.1.0", # Query DNS seeds
"watchdog==2.1.3", # Filesystem event watching - watches keyring.yaml
]
upnp_dependencies = [
"miniupnpc==2.2.2", # Allows users to open ports on their router
]
dev_dependencies = [
"pytest",
"pytest-asyncio",
"flake8",
"mypy",
"black",
"aiohttp_cors", # For blackd
"ipython", # For asyncio debugging
"types-setuptools",
]
kwargs = dict(
name="sweety-blockchain",
author="Mariano Sorgente",
author_email="mariano@sweety.net",
description="Sweety blockchain full node, farmer, timelord, and wallet.",
url="https://sweety.net/",
license="Apache License",
python_requires=">=3.7, <4",
keywords="sweety blockchain node",
install_requires=dependencies,
setup_requires=["setuptools_scm"],
extras_require=dict(
uvloop=["uvloop"],
dev=dev_dependencies,
upnp=upnp_dependencies,
),
packages=[
"build_scripts",
"sweety",
"sweety.cmds",
"sweety.clvm",
"sweety.consensus",
"sweety.daemon",
"sweety.full_node",
"sweety.timelord",
"sweety.farmer",
"sweety.harvester",
"sweety.introducer",
"sweety.plotting",
"sweety.pools",
"sweety.protocols",
"sweety.rpc",
"sweety.server",
"sweety.simulator",
"sweety.types.blockchain_format",
"sweety.types",
"sweety.util",
"sweety.wallet",
"sweety.wallet.puzzles",
"sweety.wallet.rl_wallet",
"sweety.wallet.cc_wallet",
"sweety.wallet.did_wallet",
"sweety.wallet.settings",
"sweety.wallet.trading",
"sweety.wallet.util",
"sweety.ssl",
"mozilla-ca",
],
entry_points={
"console_scripts": [
"sweety = sweety.cmds.sweety:main",
"sweety_wallet = sweety.server.start_wallet:main",
"sweety_full_node = sweety.server.start_full_node:main",
"sweety_harvester = sweety.server.start_harvester:main",
"sweety_farmer = sweety.server.start_farmer:main",
"sweety_introducer = sweety.server.start_introducer:main",
"sweety_timelord = sweety.server.start_timelord:main",
"sweety_timelord_launcher = sweety.timelord.timelord_launcher:main",
"sweety_full_node_simulator = sweety.simulator.start_simulator:main",
]
},
package_data={
"sweety": ["pyinstaller.spec"],
"": ["*.clvm", "*.clvm.hex", "*.clib", "*.clinc", "*.clsp", "py.typed"],
"sweety.util": ["initial-*.yaml", "english.txt"],
"sweety.ssl": ["sweety_ca.crt", "sweety_ca.key", "dst_root_ca.pem"],
"mozilla-ca": ["cacert.pem"],
},
use_scm_version={"fallback_version": "unknown-no-.git-directory"},
long_description=open("README.md").read(),
long_description_content_type="text/markdown",
zip_safe=False,
)
if __name__ == "__main__":
setup(**kwargs)