Chia blockchain python implementation (full node, farmer, harvester, timelord, and wallet)
Go to file
Kyle Altendorf 777295b2ad
add system and os dependent timeout adjustments (#13778)
* add system and os dependent timeout adjustments

* Update time_out_assert.py

* add adjusted_timeout() and apply

* Update connection_utils.py
2022-12-15 20:00:00 -06:00
.github Merge commit '0eed79bad4f71874ca54755b758ca7c698d013b6' into checkpoint/main_from_release_1.6.2_0eed79bad4f71874ca54755b758ca7c698d013b6 2022-12-14 13:10:26 +01:00
benchmarks create_bundle_from_mempool() doesn't need to be async (#14114) 2022-12-13 17:11:12 -06:00
build_scripts Renamed chia packages to use the @Chia-Network scope Updates build scripts to account for the scope rename (#14050) 2022-12-05 11:44:43 -06:00
chia add system and os dependent timeout adjustments (#13778) 2022-12-15 20:00:00 -06:00
chia-blockchain-gui@9c968c24b8 Merge commit 'b0fc14287882f2e2e08418fb25821789098c9930' into checkpoint/main_from_release_1.6.2_b0fc14287882f2e2e08418fb25821789098c9930 2022-12-15 16:23:51 +01:00
mozilla-ca@0f00aa44c2 CA Cert updates (#13937) 2022-11-17 10:24:49 -06:00
tests add system and os dependent timeout adjustments (#13778) 2022-12-15 20:00:00 -06:00
tools isort: Remove the remaining exceptions and sort the related files (#14124) 2022-12-13 17:10:55 -06:00
.coveragerc run tests in CI via coverage (#9704) 2022-03-28 13:22:23 -07:00
.flake8 black the generated protocol messages code (#11786) 2022-06-08 10:21:03 -05:00
.gitignore data layer - remove old .gitignore (#13198) 2022-08-30 02:59:54 -05:00
.gitmodules catchup: into main from long_lived/post_1.5.0 @ 916ccee549 (#12629) 2022-07-29 16:58:21 -05:00
.isort.cfg isort: Remove the remaining exceptions and sort the related files (#14124) 2022-12-13 17:10:55 -06:00
.markdown-lint.yml move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
.pre-commit-config.yaml Run pre-commit SQL checks as a module (#14064) 2022-12-07 20:49:46 -06:00
activated.ps1 Add .clvm.hex pre-commit check (#12050) 2022-09-12 16:08:55 -05:00
activated.py configure isort to add the future annotations import (#13327) 2022-09-30 03:40:22 -05:00
activated.sh pre-commit: Fix a venv activation issue on linux (#12822) 2022-08-09 18:27:11 -05:00
BUILD_TIMELORD.md update permissions (#6061) 2021-05-26 11:33:26 -07:00
CHANGELOG.md Updating 1.6.1 changelog (#13810) 2022-11-03 15:51:58 -05:00
CODE_OF_CONDUCT.md Bram's edit to code_of_conduct and start new dev branch 2020-09-15 12:26:16 -07:00
CONTRIBUTING.md run pylint directly (#12100) 2022-06-27 10:53:04 -05:00
Install-gui.ps1 Adding submodule branch override to Install-gui.ps1 (#13752) 2022-10-31 11:23:53 -05:00
install-gui.sh Add Arch Linux to install-gui.sh script (#14059) 2022-12-09 20:29:23 -06:00
Install-plotter.ps1 Deprecate chia plotters install command (#13584) 2022-10-17 12:35:58 -05:00
install-plotter.sh Deprecate chia plotters install command (#13584) 2022-10-17 12:35:58 -05:00
install-timelord.sh make setup.py more normal, except in our exceptional case (#13214) 2022-09-16 15:58:11 -05:00
INSTALL.md Improve style consistency in root directory docs files (#4493) 2021-05-12 13:12:30 -07:00
Install.ps1 Deprecate chia plotters install command (#13584) 2022-10-17 12:35:58 -05:00
install.sh tools: Implement and test tools/legacy_keyring.py (#13947) 2022-12-03 23:31:51 -06:00
installhelper.py configure isort to add the future annotations import (#13327) 2022-09-30 03:40:22 -05:00
lgtm.yml flag lgtm issues in test code and benchmark code as well (#11445) 2022-05-05 14:22:56 -07:00
LICENSE 2021 year -> 2022 (#9829) 2022-01-15 19:41:56 -08:00
mypy.ini Type check mempool_item.py (#14088) 2022-12-08 14:01:46 -06:00
PRETTY_GOOD_PRACTICES.md Update PRETTY_GOOD_PRACTICES.md (#13763) 2022-10-31 13:58:02 -05:00
pylintrc util: Remove legacy keyring support (#13398) 2022-11-18 10:33:18 -06:00
pyproject.toml black the generated protocol messages code (#11786) 2022-06-08 10:21:03 -05:00
pytest.ini Bump keyring from 23.6.0 to 23.9.3 (#13555) 2022-10-26 15:17:53 -05:00
README.md logo-fix (#13610) 2022-10-07 15:51:31 -05:00
run-py-tests.sh more set -o errexit (#10468) 2022-03-17 09:13:27 -07:00
SECURITY.md removing duped text 2022-11-22 15:53:40 -07:00
setup.py tools: Implement and test tools/legacy_keyring.py (#13947) 2022-12-03 23:31:51 -06:00
start-gui.sh more set -o errexit (#10468) 2022-03-17 09:13:27 -07:00

chia-blockchain

Alt text

Current Release/main Development Branch/dev
Ubuntu Core Tests MacOS Core Tests Windows Installer on Windows 10 and Python 3.7 Ubuntu Core Tests MacOS Core Tests Windows Installer on Windows 10 and Python 3.7

GitHub contributors

Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure. Here are some of the features and benefits:

  • Proof of space and time based consensus which allows anyone to farm with commodity hardware
  • Very easy to use full node and farmer GUI and cli (thousands of nodes active on mainnet)
  • Chia seeder, which maintains a list of reliable nodes within the Chia network via a built-in DNS server.
  • Simplified UTXO based transaction model, with small on-chain state
  • Lisp-style Turing-complete functional programming language for money related use cases
  • BLS keys and aggregate signatures (only one signature per block)
  • Pooling protocol that allows farmers to have control of making blocks
  • Support for light clients with fast, objective syncing
  • A growing community of farmers and developers around the world

Please check out the wiki and FAQ for information on this project.

Python 3.7+ is required. Make sure your default python version is >=3.7 by typing python3.

If you are behind a NAT, it can be difficult for peers outside your subnet to reach you when they start up. You can enable UPnP on your router or add a NAT (for IPv4 but not IPv6) and firewall rules to allow TCP port 8444 access to your peer. These methods tend to be router make/model specific.

Most users should only install harvesters, farmers, plotter, full nodes, and wallets. Setting up a seeder is best left to more advanced users. Building Timelords and VDFs is for sophisticated users, in most environments. Chia Network and additional volunteers are running sufficient Timelords for consensus.

Installing

Install instructions are available in the INSTALL section of the chia-blockchain repository wiki.

Running

Once installed, a Quick Start Guide is available from the repository wiki.