Original release notes
Wasabi Wallet is an easy to use, privacy-focused, open-source, non-custodial, Bitcoin wallet.
:window: Windows :green_apple: Apple M1/M2 :apple: Apple Intel :penguin: Ubuntu / Debian :penguin: Other Linux
---
Release Highlights
P2P synchronization fixes after chain reorganizations
Security improvements for coinjoin
Native macOS Apple Silicon support for hardware wallets
Release Summary
Wasabi Wallet v2.8.2 fixes P2P synchronization issues after blockchain reorganizations and addresses security vulnerabilities in coinjoin.
P2P synchronization fixes after chain reorganizations
Fixed several issues that caused synchronization failures when the blockchain experienced reorganizations. The wallet now correctly handles orphaned tips and shorter reorg chains without throwing errors, ensuring reliable sync recovery.
Security improvements for coinjoin
Enhanced coinjoin security by verifying other participants' inputs before signing. This adds an extra layer of protection against malicious coordinators or participants attempting to manipulate transactions.
Native macOS Apple Silicon support for hardware wallets
Hardware Wallet Interface (HWI) now runs natively on Apple Silicon Macs, eliminating the need for Rosetta emulation and improving performance when using hardware wallets on M1/M2/M3 machines.
---
Installation Guide
Download the operating system relevant software package and install Wasabi like you would with any other software on your computer. For a detailed installation guide, including signature verification, see the documentation.
Documentation
:spider_web: Website :onion: Tor onion site :orange_book: Documentation :grey_question: FAQ
Advanced Guide
If you want to build or update Wasabi from source code, check out these easy instructions.
Wasabi uses reproducible builds, which you can verify with this guide.
Requirements
- Windows 10 1607+
- Windows 11 23H2+
- macOS 14+
- Ubuntu 22.04+
- Fedora 42+
- Debian 12+
---
What's Changed
- RPC: getnewaddress: change default taproot parameter to true by @MarnixCroes in https://github.com/WalletWasabi/WalletWasabi/pull/14827
- Fix icon and merge rows on sync cards by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14826
- Arrow key movements active without clicking by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14821
- Route coinjoin payment add/cancel through the Wallet backend by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14811
- BlockFilterSqliteStorage: Enable connection pooling by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14684
- config help text: improve sentence writing by @MarnixCroes in https://github.com/WalletWasabi/WalletWasabi/pull/14836
- Support event subscriptions by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14650
- [trivial] Code style by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14785
- Redo Calculation for Anonymity Score by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14117
- Fix race condition while displaying script results by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14848
- Allow Scripts to listen for events by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14850
- Wait for block headers before starting synchronization by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14851
- Use biggest version for development by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14849
- KeyManager: Refactor
ToFileby @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14777 - Upgrade to xUnit v3 by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14864
- KeyManager: Fix more synchronization issues by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14860
- KeyManager: Remove the constructor used only in tests by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14859
- [SQLite 7/n] Move
DeleteIndextoSqliteStorageHelper.DeleteDatabaseFilesby @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14861 - LoginView: Consolidate text and button when providing wrong password by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14866
- [trivial] Code style changes by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14858
- Assign GitHub labels for reported issues and features by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14873
- Pay in coinjoin regardless of anonymity score by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14789
- Fix recursive parsing and validations by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14876
- Bright white in card titles by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14871
- Show awaiting addresses of all script types by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14822
- CoinJoinPaymentsView: Change "Pending" to "Queued" by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14872
- Logger: Refactor to create logger once and configuration is allowed only before actual logging by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14720
- Make
dotnet testoutput more CI friendly by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14884 - [BIP-77 2 of 5] Recognize BIP 77 pj endpoints and preserve pjos in BIP 21 parsing by @DanGould in https://github.com/WalletWasabi/WalletWasabi/pull/14880
- Verify other participant's inputs by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14886
- Keep the wallet height from underflowing and preceding the first filter by @Kukks in https://github.com/WalletWasabi/WalletWasabi/pull/14902
- SendFeeViewModel: Remove unnecessary async code by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14899
- Fix potential crash when
WildEstimationsis empty by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14897 - FeeRateEstimations: Use an immutable dictionary by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14898
- Use stricter default parameters by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14910
- Revalidate password in rpc requests by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14911
- Use a cryptographic hash function to hash the master key by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14913
- Track uncertain payments in coinjoin by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14917
- Revert "Track uncertain payments in coinjoin" by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14919
- Track signed payments in coinjoin (#14917) by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14921
- release.sh: Updates for reproducibility by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14792
- Revert "Redo Calculation for Anonymity Score" by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14944
- release.sh: Set
amd64andarm64correctly in Debian control file by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14945 - Prioritize the recovered wallet over the previously existing wallet by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14820
- SleepInhibitor: Fix sleep inhibition behavior for macOS by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14926
- CompactFilterBehavior: Split into multiple files by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14947
- Add native macOS arm64 HWI by @molnard in https://github.com/WalletWasabi/WalletWasabi/pull/14887
- Hide privacy progress % and bar with discreet mode by @Coinjoiner21 in https://github.com/WalletWasabi/WalletWasabi/pull/14963
- Fix block cache pruning threshold by @molnard in https://github.com/WalletWasabi/WalletWasabi/pull/14968
- SmartTransaction: Remove
FromLine()deserialization by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14960 - [anon 1/n] SmartCoin: Prefer
SmartCoin.AnonymitySetinstead ofHdPubKey.AnonymitySetby @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14959 - [anon 2/n] SmartCoin: Prefer
SmartCoin.AnonymitySetinstead ofHdPubKey.AnonymitySetby @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14961 - Global: Start P2P after bitcoin data is initialized from SQLite by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14966
- Fix regtest by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14982
- xUnit: Set up xUnit correctly for integration tests by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14978
- Fix reog orphaned tip by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14975
- [anon 3/n] SmartCoin: Prefer
SmartCoin.AnonymitySetinstead ofHdPubKey.AnonymitySetby @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14972 - Don't scan filters while the initial filter download is running by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14986
- Sync bug by @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14971
- Fix flaky Arena client coinjoin tests by @molnard in https://github.com/WalletWasabi/WalletWasabi/pull/14979
- Fix remaining Arena client startup race by @molnard in https://github.com/WalletWasabi/WalletWasabi/pull/14994
- Synchronizer: Return AlreadyOnBestBlock when P2P filters are at tip by @turbolay in https://github.com/WalletWasabi/WalletWasabi/pull/14996
- Actively wait for the synchronization condition by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14995
- Do not retry immediately when a periodical service fail by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14997
- PaymentBatch: Never requeue a signed coinjoin payment by @turbolay in https://github.com/WalletWasabi/WalletWasabi/pull/14998
- Prevent throwing wen reorg'ed chain is shorter by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/14999
- Remove the pay in coinjoin regardless anonscore toggle by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/15001
- Connect to P2P network always with Tor, not only for onion and tro en... by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/15003
- Do not request filters out of range by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/15004
- Verify note author is wasabi team by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/15005
- Use CSPRNG for input verification sampling by @1440000bytes in https://github.com/WalletWasabi/WalletWasabi/pull/15002
- nuget: Remove
NuGetAuditSuppressby @Carti-it in https://github.com/WalletWasabi/WalletWasabi/pull/14974 - Release note v2.8.2 by @lontivero in https://github.com/WalletWasabi/WalletWasabi/pull/15008
New Contributors
- @1440000bytes made their first contribution in https://github.com/WalletWasabi/WalletWasabi/pull/15002
Full Changelog: https://github.com/WalletWasabi/WalletWasabi/compare/v2.8.1...v2.8.2

