github AvianNetwork/Avian v5.0.0-rc3
v5.0.0 RC3 – Smaug

pre-releaseone day ago

Avian Core v5.0.0-rc3 "Smaug" Release Notes

Avian Core v5.0.0-rc3 is the third release candidate for the upcoming v5.0.0 major release. It focuses on index infrastructure, asset RPC reliability, and wallet improvements discovered during rc2 testing.

Highlights

Index infrastructure overhaul

  • Replaced legacy ad-hoc address, spent, and timestamp indexes with a proper BaseIndex-derived implementation, aligning them with the Bitcoin Core 30.x index architecture
  • Added P2WPKH (bech32 segwit v0) support to the address and spent indexes — bech32 addresses are now fully indexed and queryable via getaddressutxos, getaddresstxids, etc.
  • Fixed incorrect P2PKH script byte offset ([22] → [23]) that was causing address index misses for standard pay-to-pubkey-hash outputs
  • Fixed P2PKH, P2SH, and asset script type detection in the address index to ensure all script types are indexed correctly
  • Fixed a missing disconnect_data flag in SpentIndex that caused an assertion crash during blockchain reorgs

Asset indexing and RPC fixes

  • Fixed -assetindex argument not being wired to the fAssetIndex global, meaning asset index RPCs were silently non-functional even when the flag was passed
  • Fixed ReindexAssets to perform a clean rebuild with correct UTXO scanning, proper cache flushing, and UI progress reporting
  • Fixed listaddressesbyasset and listassetbalancesbyaddress returning {} after the first chainstate flush, both RPCs now read from LevelDB with an in-memory overlay rather than the dirty-only cache
  • Fixed listaddressesbyasset failing with "Asset not found" when querying owner tokens (e.g. ASSETNAME!)

Wallet improvements

  • walletcreatefundedpsbt now correctly handles asset transfer outputs, allowing PSBTs to be constructed for asset sends

Timing and consensus

  • Recalibrated internal block-count constants (confirmation targets, fee estimation windows, etc.) to match Avian's 30-second block time rather than Bitcoin's 10-minute block time

Notes
This release significantly hardens the indexing layer introduced in v5. If you are running with -addressindex, -spentindex, or -timestampindex, a reindex is required when upgrading from rc2.

Asset index users (-assetindex) should also reindex to pick up the fixes to UTXO scanning and script type detection.

Bech32 addresses remain unsupported for asset creation and transfer (legacy P2PKH only), but are now fully supported in the address and spent indexes for querying.

What's Changed

  • fix: wire -assetindex arg to fAssetIndex global by @cdonnachie in #233
  • Fix/reindexassets utxo scan by @cdonnachie in #234
  • feat: support asset transfer outputs in walletcreatefundedpsbt by @cdonnachie in #235
  • fix: calibrate block-count constants for Avian 30-second block time by @cdonnachie in #236
  • fix: index all asset script types in address index by @cdonnachie in #237
  • fix: ReindexAssets - clean rebuild, UTXO flush, and UI progress by @cdonnachie in #238
  • fix(index): correct P2PKH script byte index [22]->[23] in address ind… by @cdonnachie in #239
  • Refactor/baseindex address spent timestamp by @cdonnachie in #240
  • chore: bump version to 5.0.0rc3 by @cdonnachie in #241

Full Changelog: v5.0.0-rc2...v5.0.0-rc3

Don't miss a new Avian release

NewReleases is sending notifications on new releases.