Version 1.8.0 of the Chia reference client is now available for download! This release features user experience improvements, including updates for notifications, WalletConnect support, DataLayer permissioning, and NFT caching.
Critical Security patches
- This release includes patches that are critical security updates for all network users. It is highly recommended that all network nodes upgrade to the 1.8.0 version.
- We will be publishing a post mortem in the near future to discuss the specific issues we are patching with this release, until then, responsible disclosure dictates that we not address the issues directly.
- Please monitor our official communication streams for more information on this matter once we feel it is safe to disclose.
General End-User Experience Improvements
-
Notifications for New Release Updates
- Operating on the latest version of the Chia wallet just got easier. The Chia wallet now notifies users of newly available release updates, prompting them to download and install the most recent version. Whenever a new production build is available, a banner notification will automatically appear in the main GUI window, directing users to the latest build’s download page.
-
Improved Installation Flexibility for Windows Users
- With 1.8.0, instead of automatically launching the GUI after upgrading the Chia application, Windows users can select an option to complete the upgrade installation process without triggering the GUI functionality, for those who typically just work via the command line interface.
-
Ability Customized DApp Permissions in WalletConnect
- The latest updates to our WalletConnect application permissions enables users to granularly manage their connections on a per DApp basis. You may opt to disconnect from an application entirely, revoking all permissions, or reset individual permissions granted to each DApp. This applies to read-only permissions requested by a DApp, allowing users to individually reset any read-only permissions.
- Note: Any permissions that trigger a spend will always require user confirmation and cannot be automatically bypassed by a user.
-
Improved NFT Caching and Loading Performance
- Version 1.8.0 optimizes the loading performance of NFT wallets throughout initial syncing, as well as subsequent loading across multiple NFT screens. These enhancements also improve scalability support and improve the loading of wallets with large numbers of NFTs.
For Developers and Creators (RPC and CLI Only):
-
DataLayer Permissioning Support
- Chia’s DataLayer powers secure and auditable data sharing amongst various parties. This data is stored off-chain, using an open and permissionless publish/subscribe model. In version 1.8.0, we’ve added a DataLayer plug-in mechanism for managing subscriber (read) and publisher (write) permissions support to enable enterprise use cases, granting organizations more control over access to data.
- The Chia DataLayer service calls a RESTful API to provide publish and subscribe capabilities for DataLayer files. Plugins can be used to integrate with any desired user credential system to allow designated subscribers and publishers to download or upload DataLayer files.
- Find the usage guide here for documentation on the Permissioning Support.
-
Chialisp File Extension Standard
- Included in this release is standardizing the file extensions used for Chialisp related files. This update standardizes the following files:
- Chialisp files will end in *.clsp
- CLVM files will end in *.clvm
- Chialisp library files will end in *.clib
- Included in this release is standardizing the file extensions used for Chialisp related files. This update standardizes the following files:
For Full Node operators:
- Assert Before (fka Invalid After) / CHIP-14
- We’re initiating a protocol update which allows users to require a coin spend to occur before a certain block height. For example, a user may post an offer contingent on its acceptance before a specified block height and once past, the offer expires.
- It’s important to note that this soft fork update will activate at block height 3,886,635 and is currently unavailable at the blockchain level. We recommend users upgrade to the newest version before block 3,886,635, which is expected to occur ~60 days after this release. Upon further development, we plan to integrate the functionality across primitives.
Added
- Add Chia Simulator tools —
chia dev sim
— directly Into Chia Blockchain - Added
chia completion
command - Added
wallet_removed
tostate_changes
messages to support wallet removal in GUI - Add support to
cat_spend
RPC for running TAIL - Expose NFT coin info's
latest_height
to RPCs requesting NFT info - Make
python -m chia
work - DataLayer plugin support and infrastructure
Changed
- Fix soft fork to 60 days
- Don't subscribe to all coin ids in the DB
- Handle trade coins in the
try
block ofnew_coin_state
- Add benchmark that tests the mempool over a long time
- Enable soft-fork2 conditions (incl.
ASSERT_BEFORE
) - Update condition codes constants in clvm include file
- Improve coin state retry wait logic and retry store test
- Improve balance caching
- Update Wallet command line help for key fingerprints
- Optimize
Mempool.add_to_pool()
- Change self peer connection error to info, remove traceback
- Reduce DB lookups in
handle_did
andhandle_nft
- Limit expiring transactions
- Return fee estimates as integer mojos
- Activate the soft-fork and soft-fork2 earlier on testnet10
- Bump
chia_rs
to 0.2.7 - Lower
MAX_FUTURE_TIME
to 2 minutes with the 1.8.0 soft-fork activation - List the columns for
INSERT
intocoin_record
Fixed
- Disconnect untrusted peers if we find a trusted synced one
- Only compile CLVM if source newer than hex
- Fixed Windows issues with passphrase prompt on CLI by flushing prompt (Fixes #14889)
- Fix removal while iterating over connections set
- Fix the mempool fee rate calculation
Assert_before_height
,assert_before_seconds
fields inMempoolItem
- Correct SQLite logging when using
db_wrapper.manage_connection()
- Case-insensitive DNS label matching to support bit
0x20
use - Check hint length in notification manager to avoid raise
- Mempool insertion order
- Drop leaking weight proof validation cache
- Windows fix of memory profiler
- Small improvements to trusted peer check to include IPv6 addresses and add tests
- Close daemon client even for a
BaseException
inacquire_connection_to_daemon()
- Rework config peer resolving and connection handling
- Fix, simplify, and test
TransactionRecord.is_valid
- Check for directory existence before creating offer
- Fix
manage_clvm.py
hash building and std libraries - Resolve introducer right before the connection attempt (Fixed #14888)
- Async DNS lookups
- Move assignments of
WalletStateManager._sync_target
- Lock
WalletStateManager.lock
while populating balances initially
GUI Changes
- Show emoji and color picker in wallet header view
- Refactor and add test coverage for OfferBuilder's
createDefaultValues
- Remove unused
useNFTMetadata
hook inapi-react
- Add
spend_type
param toget_fee_estimates
RPC - Fixed broken
useThrottleQuery
hook - Added WalletConnect app permissions GUI
- Refactor styled components to
sx
prop in core package - Add react and redux devtools to electron
- Add absent
libgbm1
dependency - Fix acceptance of one-sided offers
- NFT Transfer cosmetic fixes for showing fee mojos on a new line
- Update
getWallets
API/hook to setincludeData
to false by default - Add
getCATWalletInfo
query to callcat_asset_id_to_name
RPC - NFT Provider - refactored NFTs
- Add option to Emoji picker to clear or not set an emoji
- Make URL values in
NFTProperties
clickable - Temporarily workaround issue using
openDialog()
on WalletConnect dialogs. - Add TS types for
api
,api-react
and refactor parameters to object - Preview an offer being created via WalletConnect using
createOfferForIds
- Updated WalletConnect app permissions GUI
- Add a global notification toggle
- Fixed BladeBit plotting from GUI
- Refresh wallet header when logging into a key
- Check latest GUI version
- Added
compareAppVersions
function with tests - Enable MintGarden offer sharing on mainnet
- Add checkbox to toggle launching Chia when installer exits
- NFT improvements
- Set progress to 100% when there are no NFTs
- Update wording in
PlotAddNFT
- Update WalletConnect SDK to
2.6.0
- OfferBin --> 🗑
- Fix regression that prevented accepting offers with unknown CAT