mirror of
https://github.com/Chia-Network/chia-blockchain.git
synced 2024-11-10 12:29:49 +03:00
025c45f0b5
* initial hack * crawler * add pytz * Checkpoint. * Catch some bugs. * Localhost dig working. * Checkpoint: return only high quality nodes. * Statistics. * Try improving finding reliable nodes. * Bug. * Move db to memory. * Timestamp in the last 5 days. * Increase crawl parameters, 180+ connections per sec. * Bug. * Optimize for DNS traffic. * Prepare for hosting. * Minimum height. * Typo. * Try catch everything. * dnslib. * Add db, format code. * nits. * No connections for the dns server. * Rename src -> chia * Fix some issues with v1.1 * Crawler task pool. * Optimize closing connections. * Split crawler and dns server. * Install instructions. * Catch startup bug. * Try a big timeout for lock aquire. * lint. * Lint. * Initial commit extended stats. * Simplify code. * Config. * Correct stats. * Be more restrictive in crawling. * Attempt to fix stats bug. * Add other peers port to config. * Update README for the config. * Simplify crawl task. * Fix bug on restarts. * Prevent log spamming. * More spam prevention. * Fix bug. * Ipv6 (#1) * Enable ipv6. * Fix bug. * Use numeric codes for QTYPE. * ANY working. * More spam prevention. * Try to improve IPv6 selection. * Log IPv6 available. * Try to crawl more aggresive for v6. * rename dns.py to crawler_dns.py so it doesn't conflict with imported package names * Remove pytz package off dependencies * Tidy-up ws_connection.py * Fix spelling * Reinstate chia-blockchain readme, with additional lines pertaining to the DNS introducer & crawler * More detailed info in the README wrt Chia Seeder * Nit * More memetic naming of Chia Seeder * Nit * Add entry points * Add entry in packages * Patch some methods on the upstream server * Update peer record fields * Standard library imports first * Crawler API check * Reconcile crawl store * Account for crawler_db_path in config * Await crawl store load DB and load reliable peers * Updates to crawler * Rename to dns_server * Crawler-specific overrides for the chia server * Edit comment * Undo changes to ChiaServer in view of crawler-specific overrides introduced in previous commit * Nit * Update service groups * Expand name maps, mostly * Fix the init config * Remove unused import * total_records unused at this stage * Remove ios_reliable in peer_reliability table * Remove row[20] entry * Split overly long line * Fix * Type hint for ns_records * Reconcile mismatch btw type int and uint64 * Type annotations in crawler * Check whether crawl store is set * Remove upnp_list * Lint * Chia Seeder CLI * Lint * Two white spaces * 3rd party package import * Cleaner way to handle overrides for ChiaServer method * Address linter warnings * Rename * Nits * Fix * Change port # * Most chia_seeder commands up and running * Rename * Progress of sorts * Fix * Improve legibility * Fix naming * Fix setup.py * Lint * None -> '' * Remove whitespace * Rename * Log ipv6 better. (#9227) * Log ipv6 better. * Lint. * - * Undo GUI changes * Another attempt * GUI changes Co-authored-by: Yostra <straya@chia.net> Co-authored-by: Florin Chirica <fchirica96@gmail.com> Co-authored-by: Chris Marslender <chrismarslender@gmail.com>
140 lines
4.8 KiB
Python
140 lines
4.8 KiB
Python
from setuptools import setup
|
|
|
|
dependencies = [
|
|
"multidict==5.1.0", # Avoid 5.2.0 due to Avast
|
|
"aiofiles==0.7.0", # Async IO for files
|
|
"blspy==1.0.7", # Signature library
|
|
"chiavdf==1.0.3", # timelord and vdf verification
|
|
"chiabip158==1.0", # bip158-style wallet filters
|
|
"chiapos==1.0.6", # proof of space
|
|
"clvm==0.9.7",
|
|
"clvm_rs==0.1.15",
|
|
"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 chia 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
|
|
"dnspythonchia==2.2.0", # Query DNS seeds
|
|
"watchdog==2.1.6", # Filesystem event watching - watches keyring.yaml
|
|
"dnslib==0.9.14", # dns lib
|
|
]
|
|
|
|
upnp_dependencies = [
|
|
"miniupnpc==2.2.2", # Allows users to open ports on their router
|
|
]
|
|
|
|
dev_dependencies = [
|
|
"pytest",
|
|
"pytest-asyncio",
|
|
"pytest-monitor; sys_platform == 'linux'",
|
|
"pytest-xdist",
|
|
"flake8",
|
|
"mypy",
|
|
"black",
|
|
"aiohttp_cors", # For blackd
|
|
"ipython", # For asyncio debugging
|
|
"types-aiofiles",
|
|
"types-click",
|
|
"types-cryptography",
|
|
"types-pkg_resources",
|
|
"types-pyyaml",
|
|
"types-setuptools",
|
|
]
|
|
|
|
kwargs = dict(
|
|
name="chia-blockchain",
|
|
author="Mariano Sorgente",
|
|
author_email="mariano@chia.net",
|
|
description="Chia blockchain full node, farmer, timelord, and wallet.",
|
|
url="https://chia.net/",
|
|
license="Apache License",
|
|
python_requires=">=3.7, <4",
|
|
keywords="chia blockchain node",
|
|
install_requires=dependencies,
|
|
setup_requires=["setuptools_scm"],
|
|
extras_require=dict(
|
|
uvloop=["uvloop"],
|
|
dev=dev_dependencies,
|
|
upnp=upnp_dependencies,
|
|
),
|
|
packages=[
|
|
"build_scripts",
|
|
"chia",
|
|
"chia.cmds",
|
|
"chia.clvm",
|
|
"chia.consensus",
|
|
"chia.daemon",
|
|
"chia.full_node",
|
|
"chia.timelord",
|
|
"chia.farmer",
|
|
"chia.harvester",
|
|
"chia.introducer",
|
|
"chia.plotters",
|
|
"chia.plotting",
|
|
"chia.pools",
|
|
"chia.protocols",
|
|
"chia.rpc",
|
|
"chia.seeder",
|
|
"chia.seeder.util",
|
|
"chia.server",
|
|
"chia.simulator",
|
|
"chia.types.blockchain_format",
|
|
"chia.types",
|
|
"chia.util",
|
|
"chia.wallet",
|
|
"chia.wallet.puzzles",
|
|
"chia.wallet.rl_wallet",
|
|
"chia.wallet.cc_wallet",
|
|
"chia.wallet.did_wallet",
|
|
"chia.wallet.settings",
|
|
"chia.wallet.trading",
|
|
"chia.wallet.util",
|
|
"chia.ssl",
|
|
"mozilla-ca",
|
|
],
|
|
entry_points={
|
|
"console_scripts": [
|
|
"chia = chia.cmds.chia:main",
|
|
"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",
|
|
"chia_seeder = chia.cmds.seeder:main",
|
|
"chia_seeder_crawler = chia.seeder.start_crawler:main",
|
|
"chia_seeder_server = chia.seeder.dns_server:main",
|
|
"chia_timelord = chia.server.start_timelord:main",
|
|
"chia_timelord_launcher = chia.timelord.timelord_launcher:main",
|
|
"chia_full_node_simulator = chia.simulator.start_simulator:main",
|
|
]
|
|
},
|
|
package_data={
|
|
"chia": ["pyinstaller.spec"],
|
|
"": ["*.clvm", "*.clvm.hex", "*.clib", "*.clinc", "*.clsp", "py.typed"],
|
|
"chia.util": ["initial-*.yaml", "english.txt"],
|
|
"chia.ssl": ["chia_ca.crt", "chia_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) # type: ignore
|