Fixed
- Fixed `Install.ps1` for PowerShell 7.4
- Fixed readability of `Could not find parent coin` error log by printing hex and not bytes
- Fixed some shutdown log spam by ensuring signal objects for signal handlers (fixes 17578)
- Fixed negative plot sync durations not crashing the harvester (fixes 15027) (thanks felixbrucker)
- Fixed log spam by only logging warnings about protocol mismatches for farmer and harvester
- Fixed log spam by logging rollbacks only if heights are actually deleted
- Fixed DID update metadata issue (fixes 17412)
- Fixed error codes and add more test coverage for message conditions
- Fixed non-development source install
- Fixed reorg from 0
- Fixed (again) Datalayer download banning
- Improved timelord skip peak logic.
- Used click.Path for make_offer command filename (fixes 10920)
- Handle when xck_target_address in config doesn't decode correctly (fixes 16995)
- Delete unconfirmed Clawback TX
- tighten up the check for duplicate UnfinishedBlocks before requesting that block
- Optimized Datalayer `get_key_by_node`
- Added test for observance of melted CAT balance (fixes 17727)
- increase backwards compatibility by using default values for peer file path
- Added `--skip-keyring` option to `chik start` and use in GUI (fixes 17848)
Added
- Added Python 3.12 support
- Added new subscription and wallet sync protocol support (will be used by the wallet in future releases)
- Added Chip-25 Message Conditions support (https://github.com/Chik-Network/chips/pull/98)
- Added support for HTTP redirect for the pool url (thanks felixbrucker)
- Added `use_delta_sync` option for faster wallet sync (thanks felixbrucker)
- Added Datalayer RPC pagination.
- Added Datalayer multiple batch updates with `submit_on_chain` option.
- Added `get_network_info` RPC to daemon
- Added `new_unfinished_block2` support in Chik seeder
- Added Hint support for SpendSim
Changed
- Transition `FullBlock`, `BlockRecord`, `CoinSpend`, and `HeaderBlock` to rust
- Move tests - all tests and infrastructure are now included in the chik-blockchain package under `chik/_tests`
- Remove `Announcement` class in favor of `Condition` subclasses
- Remove `ignore_max_send_amount`
- Use `psutil.cpu_affinity()` instead of `os.cpu_count()`
- Stop automatic transaction pushing by wallets
- Unify transaction pushing
- For testing purposes added support for non-ssl rpc clients
- Return TXs from CATWallet and Offer creation
- Remove all install.sh code that installs python and leave it to the user to install separately
- Remove old `unhashable` special case in `Streamable`
- Optimize `validate_removals()`
- Remove support for migrating peers from legacy file format
- Set unique peer filenames when swapping to/from testnets
- Cleaner cli output for rpc client fetch errors
- Optimized Datalayer subscription handling by using a `QueuedAsyncPool` for `DataLayer.periodically_manage_data()`
- Update README.md links for wiki & faq sunset
- Update README formatting and links (thanks bknox83)
- Turned concatenation of strings to f-strings (thanks eukub)
- Remove dead code in `multiprocess_validation`
- Improve logging of the height-to-hash and sub-epoch-summaries cache
- Pass full version in `Handshake` (thanks felixbrucker)
- Separate protocol versions for full_node, farmer, harvester, wallet
- Optimized v1 to v2 DB upgrade
- Datalayer: Avoid manage data loop delay for self subscriptions
- Datalayer: Don't download DAT files that are already on disk
- Datalayer: `get_proof` optimizations - use get_ancestors_optimized
- Datalayer: Optimize insert/upsert/delete by using `get_node_by_key`
- Datalayer: stop using fee config setting and remove from initial config
- Datalayer: Optimize clean_node_table's query and speedup by leveraging relaxed foreign_keys
- Enabled compression for cli rpm
- Bump `chik_rs` to `0.6.1`
- Bump `klvm_tools` to `0.4.9`
- Bump `chikvdf` to `1.1.4`
- Bump `chikpos` to `2.0.4`
- Bump `klvm` to `0.9.9`
- Bump `aiohttp` to `3.9.2`
- Bump `anyio` to `4.3.0`
- Bump `boto3` to `1.34.46`
- Bump `aiosqlite` to `0.20.0`
- Bump `colorlog` to `6.8.2`
- Bump `cryptography` to `42.0.5`
- Bump `keyring` to `24.3.1`
- Bump `dnspython` to `2.5.0`
- Bump `watchdog` to `4.0.0`
- Bump `dnslib` to `0.9.24`
- Bump `typing-extensions` to `4.10.0`
Known Issues
- Please be aware that logging at `DEBUG` log level may log your local keyring passphrase to the log file. Note this is **not** your key mnemonic.