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
- 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
- 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
- Workaround: download a snapshot of the testnet10 full node db and sync from there.
- 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 allgenerate_signed_transaction
definitions - Full_node: Add
max_height
toCoinStore.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 asstr
- 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
andlast_time_farmed
toget_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
toget_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
forget_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 final words for cudaplot
- Adjust harvester warning to 8 seconds from 5
- Update to chiapos 2.0.2
Fixed
- Fix
.get_next_from_coin_spend
on VerifiedCredential and test new puzhashes - Fix vcs get command when no proofs exist yet
- Wallet: Fix missing hint in
GenesisById.generate_issuance_bundle
- Server: Fix versions for incoming connections
- Repin clvm_tools_rs==0.1.34
- Add reorg rollback to retry store
- Only subscribe to inner wallet puzzle hashes
- Rpc: Fix and test
WalletRpcApi.get_coin_records_by_names
- Full_node:
uint32.MAXIMUM_EXCLUSIVE
->uint32.MAXIMUM
- Full_node: Don't send duplicates in
register_interest_in_puzzle_hash
- Wallet: Deduplicate coin states from peers
- Build: include
puzzles
packages (#15508) - Handle VC syncing exceptions better
- Fix hint parsing for CATs and DIDs
- Update build script for lerna 7
- Fix fork height constant for simulator / block tools
- Some NFT RPC mypy fixes
- Clawback resync
- Fix variable name typo
- Fixed add lock around plot info
- Fix Cli error when exiting on some builds of python.
- Fix whitespace on legacy-support-policy.md
- Cleanup & Fix Simulator Sub Epoch Logic
- Fix flaky CAT test
- Fix CLI indentation
- Skip clawback incoming txs while deleting the unconfirmed txs
- Fix initial-config for testnet fork points heights
- Cudaplot fix
- Fixed
chia plotnft show
command - Fixed an issue where insufficient block interval was used to calculate average block time
- Fixed an issue where
-t
option was required in cudaplot - Add ALLOW_BACKREFS as a flag to get_puzzle_and_solution_for_coin in full_node_api.py
- Fix clawback sender resync issue
- Correct --insecure flag to cancel_offer command line
- Fixed an issue where chiapos recognized
t2
as required option - Fix DataLayer deadlock
GUI Changes
- Refactor TX filter to use TransactionTypeFilterMode Enum by @zsolt-dev in Chia-Network/chia-blockchain-gui#1837
- Added spendClawbackCoins WalletConnect command by @zsolt-dev in Chia-Network/chia-blockchain-gui#1853
- Updated lerna to 7.0.0 and node to 16.20.1 by @paninaro in Chia-Network/chia-blockchain-gui#1861
- Updated mui and lingui by @seeden in Chia-Network/chia-blockchain-gui#1865
- Fixed WalletConnect Dapp disconnection issue by @seeden in Chia-Network/chia-blockchain-gui#1866
- Use new useAuth hook for logIn by @seeden in Chia-Network/chia-blockchain-gui#1868
- Updated locales by @seeden in Chia-Network/chia-blockchain-gui#1887
- Fixed scroll overflow in the header by @seeden in Chia-Network/chia-blockchain-gui#1874
- Added CRCat api by @zsolt-dev in Chia-Network/chia-blockchain-gui#1893
- Added useGetWalletAddressesQuery RPC hook by @paninaro in Chia-Network/chia-blockchain-gui#1892
- Fixed clawback button time comparison with latest block time by @zsolt-dev in Chia-Network/chia-blockchain-gui#1884
- Switch back to wallet balance view after creating CAT tx by @zsolt-dev in Chia-Network/chia-blockchain-gui#1903
- Fixed VC rendering by @seeden in Chia-Network/chia-blockchain-gui#1888
- Plotting/harvesting updates for compressed plots by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1772
- Updated WalletConnect to 2.9.0 by @seeden in Chia-Network/chia-blockchain-gui#1897
- Added Address book feature by @lipalong and @joytechu in Chia-Network/chia-blockchain-gui#1910
- Fixed crash when importing malformed local VC by @rifeljm in Chia-Network/chia-blockchain-gui#1890
- Fixed clawback claim when still syncing by @zsolt-dev in Chia-Network/chia-blockchain-gui#1929
- Updated theme colors by @lipalong in Chia-Network/chia-blockchain-gui#1933
- Added warning text when sending clawback TX by @paninaro in Chia-Network/chia-blockchain-gui#1937
- Use lerna 7.1.3 and nx 16.3.2 for macos 10.14 building by @emlowe in Chia-Network/chia-blockchain-gui#1917
- Fixed "From" to "To" in wallet history by @zsolt-dev in Chia-Network/chia-blockchain-gui#1939
- Update "Clawback will be applied." warning by @zsolt-dev in Chia-Network/chia-blockchain-gui#1940
- Add clawBackExpiration behind the expand TX row for clawback sender by @zsolt-dev in Chia-Network/chia-blockchain-gui#1950
- Hide clawback TXs while wallet is syncing by @zsolt-dev in Chia-Network/chia-blockchain-gui#1951
- Hide GPU setting when it is not available by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1959
- Icon updates by @paninaro in Chia-Network/chia-blockchain-gui#1967
- The label of
last block won
is nowNever
when there are no blocks… by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1971 - Hide temp folder selection on cudaplot by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1972
- Update Electron to 25.4.0 for security fixes by @paninaro in Chia-Network/chia-blockchain-gui#1976
- Plot filter value now is the function of height by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1979
- Fixed an issue where plotNFT was not created after changing plotter by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1997
- Fixed testnet faucet url by @ChiaMineJP in Chia-Network/chia-blockchain-gui#1998