Skip to content

Releases: sparrowwallet/sparrow


17 Nov 14:20
Choose a tag to compare
  • Add icons to wallet tabs for PayNym and hardware wallets, and support custom icons through tab context menu
  • Broadcast premix transactions from Terminal using Mix Selected on UTXOs
  • Show address as QR code in Terminal
  • Change QR code density for UR encoding via QR display dialog button
  • Improve .deb control file and avoid dependence on xdg-utils when building sparrow-server .debs
  • Disable assistive technologies in Windows to avoid potential runtime crash
  • Treat IP range as local network addresses
  • Close connecting sockets and interrupt read thread if necessary on connection shutdown
  • Add error message when connecting to Bitcoin Core with a Taproot wallet
  • Hide 'Spend UTXOs' and 'Freeze UTXOs' context menu items on address cells in the UTXO table
  • Reallow watch-only wallets to trigger USB signing dialog, but handle special case for mixed seed/watch only multisig wallets
  • Always use .mv.db format for Sparrow wallet exporter
  • Bug fix: Avoid using locale for unit formatting
  • Bug fix: Fix NPE in Terminal for exchange rate updates without a BTC rate
  • Bug fix: Fix NPE selecting a server in the server alias dialog
  • Bug fix: Delay wallet file deletion to allow for database compaction and show error on failure
  • Bug fix: Avoid triggering close wallet events when reordering tabs
  • Bug fix: Fix export from Settings tab for a new account by ensuring bidirectional links are restored on save
  • Bug fix: Bring window to front when restored after being minimized to tray
  • Bug fix: Improve Terminal resizing behaviour


27 Oct 11:34
Choose a tag to compare
  • Implement Sparrow Terminal interface to configure Sparrow, create and load wallets, and remix with Whirlpool
  • Support Linux aarch64 operating systems (such as Raspberry Pi 64-bit OS)
  • Add support for configuring server aliases to hide server URLs
  • Add support for switching servers via the Tools menu
  • Add Cancel Transaction (RBF) to the unconfirmed transaction context menu to recover spent funds via RBF
  • Add Unit Format menu to View menu to select alternative grouping and decimal separators
  • Support running Sparrow Terminal in headless Linux (no $DISPLAY) environments
  • Recommend a backup of the output descriptor when saving new multisig wallets
  • Add Jade as an airgapped (QR code) keystore importer
  • Add wallet export option to export a config file for Electrum Personal Server (EPS)
  • Increase the maximum gap limit, but display a warning when the gap limit is over 999
  • Add support for importing a wallet from a Sparrow-created output descriptor PDF
  • Add support for deprecating importers and exporters
  • Deprecate importing and exporting for Cobo Vault hardware wallet
  • Add a context menu item in the transaction diagram to show input and output addresses as QRs for verification
  • Add Move Left and Move Right context menu items to reorder wallet and transaction tabs
  • Show warning dialog when a legacy multisig output descriptor multi is entered
  • Verify signatures immediately after signing as per recommendation in BIP340
  • Freeze and unfreeze all associated UTXOs from an address cell context menu
  • Add a context menu item to Addresses table to spend all UTXOs for an address
  • Request user attention via the taskbar when Soroban communication requires action (OSX only)
  • Set a transaction label on Soroban collaborative transactions
  • Allow Soroban initiator to retry if the meeting request fails
  • Save a transaction diagram as an image through a context menu item on the diagram
  • Add INFO or DEBUG level logging to all external API calls
  • Add TRACE logging to all Electrum server calls
  • Suppress verbose Whirlpool connection related logging errors
  • Use compact parameter to improve PayNym search performance
  • Ignore newline characters when editing a wallet configuration in the output descriptor dialog
  • Show additional inputs in the transaction diagram tooltip as labels or abbreviated txid:index
  • Remove unnecessary Java native commands from binaries
  • Accept output descriptor fragments in Settings QR scan for xpub
  • Avoid resolution of onion hosts when creating proxied server socket addresses
  • Bug fix: Fix long name length on Coldcard multisig export
  • Bug fix: Fix reproducibility issue by avoiding use of objcopy to strip debug info during build
  • Bug fix: Cancel Whirlpool startup service when disconnecting
  • Bug fix: Fix import of Electrum wallets without keystore labels
  • Bug fix: Disable RBF related commands if Allow Unconfirmed preference is disabled


04 Aug 11:46
Choose a tag to compare
  • Add support for Auth47 authentication by registering a handler for auth: URLs in the browser
  • Add support for LNURL-auth authentication by registering a handler for lightning: URLs in the browser
  • Add BIP47 support for Bitcoin Core connections
  • Spend change from BIP47 notification transactions only if necessary (@maxtannahill)
  • Add support for sweeping of funds from a BIP38 encrypted private key
  • Only allow sending to PayNyms where a notification transaction has previously been sent by the sender (no automatic reverse linking)
  • Show taproot specific sighash default in sighash dropdown, and select it if appropriate
  • Add optional transaction count column on address table using table header context menu to show and hide
  • Reduce delay before attempting to reconnect when a private server connection fails
  • Allow mixing out to other postmix wallet accounts
  • Copy existing labels from deposit UTXOs into badbank UTXOs if present
  • Add tooltip to wallet tab label on load failure
  • Avoid unnecessary computation during entry cell sizing on initial table scroll
  • Cache any wallet nodes for provided addresses during transaction construction, and use cache in transaction diagram and privacy analysis
  • Refactor and optimize address classes
  • Optimize retrieving unspent UTXOs
  • Optimize UTXO selection through local variable caching of wallet data reused in computation
  • Prefer using libsecp256k1 to derive public keys from private
  • Store address data in wallet file where no passphrase is present to avoid lengthy rederivation of keys on deep wallets
  • Compact wallet database on closing
  • Indicate when creating a wallet transaction from a deep wallet is deriving keys
  • Check proposed wallet name against open wallets for duplicates
  • Invalidate multisig addresses for message signing and include address tooltip for guidance
  • Add Help menu item to open Telegram support group
  • Show wallet name in delete wallet dialog
  • Improve unconfirmed transaction tooltip
  • Show custom error dialog for 'min relay fee not met' broadcast errors
  • Add context menus to transaction diagram labels to copy addresses and values
  • Require non-empty password on encrypted wallet load
  • Avoid re-requesting passphrase on BIP39 wallet import
  • Show empty passphrases as 'No passphrase' in seed view dialog
  • Indicate number of UTXOs selected in UTXOs tab
  • Delete temporary HWI pyinstaller extraction if HWI crashes
  • Update H2 database to 2.1.214
  • Upgrade to Gradle 7.5
  • Upgrade to Java 18.0.1
  • Bug fix: Always find node for first input when retrieving historical notification transactions
  • Bug fix: Save encrypted keystores on all wallets when changing password on child wallet Settings tab
  • Bug fix: Add all whirlpool accounts if any one is discovered on wallet import
  • Bug fix: Fix transaction sort where parent/child transactions were included in the same block
  • Bug fix: Fix case insensitive matching when searching for addresses and transaction outputs
  • Bug fix: Disallow duplicate xpubs in multisig wallet keystores
  • Bug fix: Fix issue adding accounts to multisig wallets with mixed watch-only and seed keystores
  • Bug fix: Avoid saving xpubs on BIP47 wallets, restore from seed on opening
  • Bug fix: Use locale-insensitive lowercase and uppercase functions
  • Bug fix: Allow PSBTs without previous UTXO data


26 May 12:03
Choose a tag to compare
  • Add Ledger Nano S Plus support
  • Allow watch-only keystores to enable signing from matching connected hardware wallets
  • Import gap limit from Electrum wallets
  • Bug fix: Restore Ledger hardware wallet functionality on 2.0.4 firmware (@achow101)
  • Bug fix: Restore hardware wallet communication on older (10.x) MacOS
  • Bug fix: When hiding empty used addresses, add and remove addresses if address balance changes
  • Bug fix: Explicitly commit spinner editor value when closing dialogs
  • Bug fix: Fix date sorting on UTXOs table
  • Bug fix: Raise minimum for min mixes before mixing out to 2
  • Bug fix: Improve delete wallet performance on some systems by reducing overwrite entropy
  • Bug fix: Fix PSBT taproot internal key duplication
  • Bug fix: Set Lock All Wallets menu command status on every wallet lock
  • Bug fix: Hide entry cell action boxes completely when not hovered over


19 May 12:17
Choose a tag to compare
  • Native support for Apple M1 (aarch64)
  • Add Blockstream Jade support
  • Upgrade to HWI 2.1.0 for hardware wallet Taproot signing (Trezor and Ledger) (@achow101)
  • Support scanning seed QRs (SeedQR, CompactSeedQR, ur:crypto-seed, ur:crypto-bip39) to import seed words and xpubs and to sign PSBTs with immediate clearing of the seed
  • Add dust attack warning to UTXOs where small value transactions are received on previously used addresses
  • Add 'Restart in Testnet' menu command
  • Add 'Delete Wallet' function to File menu, overwriting wallet file data first
  • Add 'Select All' button to UTXOs tab
  • Disable 'Lock All Wallets' menu item when all wallets are locked
  • Rename 'Refresh Wallet' to 'Refresh Wallet Account' where necessary to indicate wallet accounts are refreshed individually
  • Enable 'Max' button when RBF replacement transaction has only one output and no additional inputs
  • Disable privacy optimisation button for BIP78 Payjoins
  • Update confirmation status for opened unconfirmed wallet txes once they have been mined
  • Show signature status on transaction tab for loaded transactions even when offline
  • Pass the desired account number to keystore import description when importing for additional accounts
  • Make connection toggle pulsing clearer by increasing the opacity range
  • Make USB hardware wallet enumeration period configurable
  • Enable pasting a string into send to many spreadsheet using pre-edit cell context menu
  • Update to JavaFX 18, Gradle 7.4.2 and Java 17.0.2
  • Bug fix: Update wallet name in db on load if wallet filename is changed in order to fix passphrase entry dialog
  • Bug fix: Reverse sort order of date column in UTXOs tab
  • Bug fix: Update 'Mix to' button text when wallet label is changed
  • Bug fix: Don't show 'Mix Selected' button for Taproot wallets
  • Bug fix: Improve validation and focus handling in integer spinners
  • Bug fix: Upgrade to nightjar 0.2.33 for Whirlpool startup fix (@zeroleak)
  • Bug fix: Recalculate txid before copying from Txid copy button
  • Bug fix: Ensure minimum relay fee rate is always equal or greater than 1 sat/vb


09 May 13:49
Choose a tag to compare
1.6.4-beta1 Pre-release

Beta release containing only an Apple M1 (aarch64) native build for testing.


31 Mar 13:44
Choose a tag to compare
  • Move account tabs to the left with clearer color hierarchy
  • Update BWT for Bitcoin Core v23 compatibility (@shesek)
  • Add PDF export of wallet output descriptor from QR display dialog
  • Restore collaborative (Stowaway) sends to linked PayNyms
  • Support searching for custom PayNyms when initiating collaborative sends
  • Use onion address when Tor proxy is set
  • Always use "Deposit" label for default Account #0 wallet
  • Ensure unique Stonewall input txids for entire tx (not just per set)
  • Support PSBT Taproot BIP32 derivation field
  • Ensure order of unencrypted wallet tabs is retained across app restarts
  • Warn if saved certificate file could not be deleted when requested
  • Indicate when a server failure occurs when loading a transaction from file or text
  • Show an error message if partial signatures do not match the wallet on finalizing a PSBT
  • Change show delay duration for help tooltips to 500ms
  • Remove as fee rates source
  • Bug fix: Disable BIP47 support for Taproot wallets (for now)
  • Bug fix: Omit frozen UTXOs from Soroban collaborations
  • Bug fix: Update UTXO tab fiat balances as rates change
  • Bug fix: Fix issues updating UTXO chart when mixing
  • Bug fix: Ensure wallet rescan occurs when changing the wallet birthday in the transactions table
  • Bug fix: Perform signature verification on PSBT inputs only after all have been parsed (required for Taproot signatures)


17 Mar 13:57
Choose a tag to compare
  • Support linking and sending directly to payment codes (without
  • Automatically label new BIP47 receive addresses to identify incoming BIP47 transactions
  • Allow any linked PayNym contact to be renamed (right-click on the contact in the PayNym dialog)
  • Add PayNym contacts from the followers list
  • Allow mix partner to more easily retry listening if a timeout occurs via a provided link in the dialog
  • Label invalid notification transactions and avoid attempting to relink with them
  • Identify and color code signatures in transaction hex witness data
  • Bug fix: Make db-updater a daemon thread to fix an issue shutting down properly on Windows
  • Bug fix: Enable Create Transaction button when sending max payment to a linked PayNym


04 Mar 13:22
Choose a tag to compare
  • Add PayNym Addresses dialog to view linked PayNym addresses (Addresses tab)
  • Roll back to preferring IPv4 over IPv6 addresses
  • Bug fix: Fix issue where BIP47 addresses that were sent to did not get history updates
  • Bug fix: Update optimization buttons after Max button pressed
  • Bug fix: Fix regression with expanded transaction diagram dark theme background


03 Mar 13:17
Choose a tag to compare
  • Implement BIP47 - linking, sending to and receiving from PayNyms on Legacy, Nested Segwit and Segwit addresses
  • Introduce nested wallet support to allow BIP47 wallets to contribute to the first (master) wallet
  • Add BIP39 option to File > Import Wallet dialog, discovering any existing wallets using common script types and derivations
  • Improve label handling by detaching and storing labels before a wallet refresh, and labelling matching entries from this store as the wallet is updated
  • Buffer address history update notifications to perform fewer wallet history refreshes
  • Improved IPv6 handling on NAT64 networks
  • Use smaller, shared stage icon to reduce memory usage
  • Add link to Server Preferences in status bar on connection failure
  • Add SeedSigner to File > Import Wallet dialog
  • Bug fix: Fix expanding grey area in Transaction viewer when increasing hex area height
  • Bug fix: Add border to undecorated stages on Windows
  • Bug fix: Mixing UTXOs should reflect in Send Selected total on UTXOs tab
  • Bug fix: Fix resolution of mDNS (.local) hostnames when connecting to Bitcoin Core
  • Bug fix: Prevent wallet response updates while Whirlpool is starting to avoid empty UTXO mix queue