Skip to content

Releases: Chia-Network/chia-blockchain

2.0.0

24 Aug 15:19
dc46f46
Compare
Choose a tag to compare

Version 2.0.0 of the Chia reference client is now available for download! This release focuses on those who are farming and running a full node, and is an important update that we want all farmers to update to.

For Farmers

It's officially here! Plot compression and GPU plotting is now available. To determine how you might strategize to get the most out of your farm, please check out this blog post.
Here is what's included in this release:

Plotting

Plotting Docs

  • Bladebit 3.0 release - Create compressed K32 plots using ramplot or the new GPU plotting cmmand, cudaplot, to increase your effective space and earn more farming rewards
    • C1 to C7 compression levels are supported, see here to understand how much compression you are getting at each level
    • 256GB minimum RAM support when using a GPU, or 416GB minimum RAM support when using a CPU. NVIDIA GPU with 8GB* of VRAM, CUDA capability of 5.2 (1 series cards and up).
    • Supported on Windows and Linux
    • Plot from the GUI or from the CLI
    • Existing uncompressed plots will still continue to work

Note

Bladebit support for lower RAM requirements with hybrid disk plotting, and other exciting features are currently in the works, and will soon be making their way into future releases. Keep an eye out for pre-releases on the Bladebit release page so that you can begin beta testing them as soon as they are available.

Farming/Harvesting

Farming Docs

  • GPU harvesting of compressed plots (decompression) with NVIDIA cuda GPUs, farm compressed plots with high efficiency (multiple petabytes on a single GPU).
  • CPU harvesting (decompression) for levels C1-C7, although up to C5 is recommended for most CPU farmers
  • Chia GUI updates for farming
    • The farm tab has been updated with farm health statistics to easily identify network, pool, or plot issues.
    • Added a Harvester tab for GUI users to now see the amount of raw and effective space each harvester is managing as well as report on local and remote harvester latency and plot information. This is critical information for farming compressed plots!
    • New harvester settings page, including compression support, and recursive plot scan to support subdirectories.

Consensus and blockchain protocol

  • Plot filter reduction hard fork has been introduced due to plotting speeds increasing with the introduction of GPU plotting, and to discourage plot grinding attempts. The first reduction for plot filters will kick in at block 5,496,000 (around June 2024) and lower the filter from 512 to 256. Thereafter, the filters will be reduced by half every three years. More details can be found in our blog post on GPU plotting.
  • CLVM BLS additions through a soft fork
    • New BLS operators to supplement point_add functionality to enable more complex CLVM performance, including signature verification and the use of zero-knowledge (ZK) proofs
    • Operators for calculating a remainder through the addition of "modpow" and "%" in CLVM
    • Adding operator support for secp256k1 and secp256r1 signatures to support using HSMs, hardware wallet, Apple Secure Enclave, and Android's Keystore trusted execution environment as signing devices
  • Transition to BLST library to get performance gains in full nodes when validating and submitting transactions

General End-User Experience Improvements

  • Local address book has been added so you can save commonly used addresses, DIDs, or domains against a contact that can be used when creating a transaction or more easily identify past transactions. The address book is shared across all local keys on the same computer to reduce having to keep duplicate copies.

For Developers and Creators (RPC and CLI Only)

  • Added a get_wallet_address RPC to enable developers to derive wallet addresses from any point in the wallet keyspace for any of the user's keys making it easier to get a specific wallet address along a derivation path for a specific key
  • WalletConnect API updates
    • Clawback commands have been added so DApps can initiate clawback commands to any connected wallet
    • Get wallet address commands have also been added

General system and application support updates

  • 2.0.0 is the last Chia update to officially support the v1 full node database. All users are recommended to upgrade to v2 database in order to support future updates.
  • Python 3.7 is no longer supported with this release. If you are running Ubuntu 18.04, you may need to manually update your Python version.
  • This release is the last Chia update to support macOS 10.14 Mojave, macOS 10.15 Catalina. Future updates will only support macOS 11 Big Sur or higher.
  • This release no longer supports Windows 8.1. This and future updates will only support Windows 10 or higher.
  • Offer files created on 1.6.2 or older Chia clients are no longer supported

Important

Known Issues

  • Bladebit will crash when the target destination drive is full
    • This will be fixed in Bladebit 3.1 beta, but a workaround is to just restart bladebit
  • Sending Cats from Goby to 2.0 wallet won't show up in the 2.0 wallet
    • Workaround: use 1.8.2 wallet to see balance and you can send yourself the coins to see them in the 2.0 wallet
  • Can't sync full node from 0 on testnet10
  • GPU harvesting - certain NVIDIA GPUs and driver combinations on certain platforms will encounter a known error "GRResult is not GRResutl_OK" in the logs, and stop decompression events.
    • Workaround: Restart the harvester
  • Viewing an offer file results in seeing no assets being offered
    • Workaround: If you want to accept it you will need to downgrade your wallet version to 1.8.2. This is an old offer file created on version 1.6.2 or older. That offer file format is no longer supported in 2.0 or later.
  • Your wallet is synced, but the balance is incorrect AND you also create a high volume of offers (> 50)
    • Workaround: manually update your derivation index in Settings -> General and let your wallet sync
  • Corrupt plots on Windows 10 on certain combinations of NVIDIA cards and drivers
    • Please only use Windows 11 to plot
  • The GUI crashes when clicking on Contacts
    • Workaround: Log out of the wallet, and log back in

Added

  • Compressed plot support
  • Add config option to accept private network addresses from introducers
  • Generate a license directory that contains licenses missing from the installers
  • 2.0 updates
  • Add DataLayer clear pending roots interfaces
  • Add get_wallet_addresses RPC for deriving wallet addresses
  • Multi threaded chia plots check
  • Hard fork 2.0
  • Add fields to BlockRecord.
  • Protocols: Introduce error protocol message
  • Add RPC client and tests for cancel_offers endpoint
  • Add sql logging config for DataLayer
  • New aggregate signature conditions
  • Timeout for retrieving a decompressor.

Changed

  • Bump SOFT_FORK3_HEIGHT to align with the next release cycle
  • Move CAT_MOD from cat_loader -> cat_utils
  • Use a more aggresive activation schedule on testnet10
  • Full_node: More set usage in subscription code
  • Rename exclude_coin_* -> excluded_coin_* for consistency
  • Add **kwargs to all generate_signed_transaction definitions
  • Full_node: Add max_height to CoinStore.get_coin_states_by_ids
  • Util: Some tweaks to StructStream and sized ints
  • Rephrase async contextmanager DBConnection to use asynccontextmanager
  • Bump chia_rs to 0.2.8
  • Bump blspy to 2.0.0 (blst)
  • Bump blspy to 2.0.1
  • Use PKCS#8 format for SSL private keys
  • Auto find setup.py packages
  • Update simulator SSL keys to PKCS#8
  • Support calling daemon commands from chia rpc CLI
  • Use latest blspy
  • Convert All CLI Commands to using async generators
  • Server: Store Handshake.software_version in connections as str
  • Cleanup CLI RPC connection error handling
  • Plot filter hard fork
  • Add DIDWallet.get_coin() to simplify DID wallet
  • Update initial-config
  • Bump chia_rs dependency to 0.2.9
  • Remove support for Python 3.7
  • Added quality lookup time info to FarmingInfo
  • Updated UI_ACTUAL_SPACE_CONSTANT_FACTOR to 0.78
  • Solution_generator
  • Added blocks_won and last_time_farmed to get_farmed_amount Wall…
  • Avoid DataLayer insert precheck
  • Report certificate errors directly for CLI connection errors
  • Remove references to old offer mod
  • Avoid DataLayer insert ancestors precheck
  • Improved pool stats handling
  • Added average_block_time to get_blockchain_state FullNode RPC API
  • Added get_keys_for_plot daemon server API
  • Added cuda and plot compression support for bladebit 3
  • Added total_effective_plot_size for get_harvesters RPC API
  • Added compression level and harvesting mode to harvester protocol/mes…
  • Farmer now returns missing signage points
  • Pass DataLayer root and generation instead of requerying
  • Update chiapos
  • Added defaults to get_harvester_config API
  • Update cuda plot log-progress mapping
  • Update install plotters scripts
  • Update chiavdf to 1.0.10
  • Bump softfork3 activation by about 2 weeks
  • Bump soft-fork3 activation height
  • Update chiapos to full release
  • Update chia_rs to 0.2.10
  • Bladebit3 as the default plotter to install
  • Use 'Completed writing plot' as the magic...
Read more

2.0.1-b2

20 Aug 07:23
5103130
Compare
Choose a tag to compare
2.0.1-b2 Pre-release
Pre-release

What's Changed

Added

Changed

Fixed

New Contributors

Read more

2.0.0-rc6

18 Aug 19:59
8c83d93
Compare
Choose a tag to compare
2.0.0-rc6 Pre-release
Pre-release

What's Changed

Changed

Full Changelog: 2.0.0-rc5...2.0.0-rc6

2.0.0-rc5

17 Aug 02:36
cde7005
Compare
Choose a tag to compare
2.0.0-rc5 Pre-release
Pre-release

What's Changed

Added

Changed

  • Use 'Completed writing plot' as the magic final words for cudaplot by @emlowe in #16011

Fixed

Full Changelog: 2.0.0-rc4...2.0.0-rc5

2.0.1-b1

10 Aug 00:08
5e1da48
Compare
Choose a tag to compare
2.0.1-b1 Pre-release
Pre-release

What's Changed

This is a failed beta pre-release, as our CI requires additional commits that have not yet been merged to main. Please stay tuned for 2.0.1-b2.

Added

Changed

Fixed

New Contributors

Full Changelog: 2.0.0-rc2...2.0.1-b1

2.0.0-rc4

09 Aug 21:18
630846b
Compare
Choose a tag to compare
2.0.0-rc4 Pre-release
Pre-release

What's Changed

Due to the number of changes that have been made, it is highly encouraged that you generate a new config.yaml (chia init) before using this build. Please remember to also do this on remote harvesters/farmers as well.

Changed

Fixed

  • Fixed an issue where -t option was required in cudaplot by @ChiaMineJP in #15963
  • Add ALLOW_BACKREFS as a flag to get_puzzle_and_solution_for_coin in full_node_api.py by @Quexington in #15937
  • Fix clawback sender resync issue by @ytx1991 in #15853

GUI Changes

Full Changelog: 2.0.0-rc3...2.0.0-rc4

2.0.0-rc3

05 Aug 10:19
6c2c7bd
Compare
Choose a tag to compare
2.0.0-rc3 Pre-release
Pre-release

What's Changed

Changed

Fixed

Full Changelog: 2.0.0-rc2...2.0.0-rc3

2.0.0-rc2

27 Jul 02:05
4013451
Compare
Choose a tag to compare
2.0.0-rc2 Pre-release
Pre-release

What's Changed

2023-07-27_00-01
2023-07-27_00-04

Changed

Fixed

  • Fix default parallel decompressor count by @wallentx in #15845
  • Skip clawback incoming txs while deleting the unconfirmed txs by @ytx1991 in #15826
  • fix initial-config for testnet fork points heights by @arvidn in #15870
  • fix initial-config for testnet fork points heights by @arvidn in #15873

GUI Changes

Full Changelog: 2.0.0-rc1...2.0.0-rc2

2.0.0-rc1

22 Jul 10:34
591e794
Compare
Choose a tag to compare
2.0.0-rc1 Pre-release
Pre-release

What's Changed

A major update!
Chia-blockchain 2.0
Chiapos 2.0
Bls-signatures 2.0
Bladebit 3.0
And many more numbers!

Compressed Plots

If you have not already generated a new config.yaml, or updated your existing one when using the 2.0.0-b5 pre-release, you will need to do so with this release, so that you have all of the new entries for compressed plot harvesting. Please note that compressed plots will not be detected by your harvester untill you have properly configured your config.yaml.
The new configuration options, as well as their default values are:

  # Compressed harvesting.
  # If `parallel_decompressor_count` is set to 0, compressed plots will not be detected by the harvester 
  # A non-zero number overrides this default.
  parallel_decompressor_count: 0
  # If set to 0, `decompressor_thread_count` will default to half of nproc available on the machine.
  # A non-zero number overrides this default.
  decompressor_thread_count: 0
  disable_cpu_affinity: False
  # Ignore compressed plots with compression level greater than this.
  max_compression_level_allowed: 7
  use_gpu_harvesting: False
  gpu_index: 0
  enforce_gpu_index: False

Added

Changed

Fixed

Read more

2.0.0-b5

19 Jul 08:00
e037b44
Compare
Choose a tag to compare
2.0.0-b5 Pre-release
Pre-release

What's Changed

Compressed Plots

This pre-release includes all of the compressed plot harvesting code merged into the main branch. You will either need to generate a new config.yaml, or update your existing one with the new entries for compressed plot harvesting. If you had previously been using an alpha build of the compressed plot harvester, please note that some of the names/spelling of previous compression-related entries in config.yaml have been changed. It is probably just easiest to generate a new config.yaml starting with this build.

Known Issues

Cannot create GPU/compressed plots from the GUI (bladebit-cuda availability via Beta Program)

Added

Changed

Fixed

Full Changelog: 2.0.0-b4...2.0.0-b5