What's New in version 3.3.6:

  • Qt: fix crash during 2FA wallet creation (#5334)
  • Fix synchronizer not to keep resubscribing to addresses of already closed wallets (e415c0d9)
  • Fix removing addresses/keys from imported wallets (#4481)
  • Kivy: fix crash when aborting 2FA wallet creation (#5333)
  • Kivy: fix rare crash when changing exchange rate settings (#5329)
  • A few other minor bugfixes and usability improvements.

What's New in version 3.3.4:

  • AppImage: we now also distribute self-contained binaries for x86_64 Linux in the form of an AppImage (#5042). The Python interpreter, PyQt5, libsecp256k1, PyCryptodomex, zbar, hidapi/libusb (including hardware wallet libraries) are all bundled. Note that users of hw wallets still need to set udev rules themselves.
  • Hw wallets: fix a regression during transaction signing that prompts the user too many times for confirmations (commit 2729909)
  • Transactions now set nVersion to 2, to mimic Bitcoin Core
  • Fix Qt bug that made all hw wallets unusable on Windows 8.1 (#4960)
  • Fix bugs in wallet creation wizard that resulted in corrupted wallets being created in rare cases (#5082, #5057)
  • Fix compatibility with Qt 5.12 (#5109)

What's New in version 3.3.3:

  • Do not expose users to server error messages (#4968)
  • Notify users of new releasesRelease announcements must be signed,
  • and they are verified byElectrum using a hardcoded Bitcoin address.
  • Hardware wallet fixes (#4991, #4993, #5006)
  • Display only QR code in QRcode Window
  • Fixed code signing on MacOS
  • Randomise locktime of transactions

What's New in version 3.3.2:

  • Fix Qt history export bug
  • Improve network timeouts
  • Prepend server transaction_broadcast error messages with explanatory message. Render error messages as plain text.

What's New in version 3.2.3:

  • Hardware wallet: the Safe-T mini from Archos is now supported.
  • Hardware wallet: the Coldcard from Coinkite is now supported.
  • BIP39 seeds: if a seed extension (aka passphrase) contained multiple consecutive whitespaces or leading/trailing whitespaces then the derived addresses were not following spec. This has been fixed, and affected should move their coins. The wizard will show a warning in this case. (#4566)
  • Revealer: the PRNG used has been changed (#4649)
  • Fix #4626: fix spending from segwit multisig wallets involving a Trezor cosigner when using a custom derivation path
  • Fix #4491: on Android, if user had set 'uBTC' as base unit, app crashed
  • Fix #4497: on Android, paying bip70 invoices from cold start did not work
  • Several other minor bugfixes and usability improvements.

What's New in version 3.2.2:

  • Fix DNS resolution on Windows
  • Fix websocket bug in daemon

What's New in version 3.1.3:

  • Qt GUI: seed word auto-complete during restore
  • Android: fix some crashes
  • performance improvements (wallet, and Qt GUI)
  • hardware wallets: show debug message during device scan
  • Digital Bitbox: enabled BIP84 (p2wpkh) wallet creation
  • add regtest support (via --regtest flag)
  • other minor bugfixes and usability improvements

What's New in version 3.1.2:

  • Kivy/android: request PIN on startup
  • Improve OSX build process
  • Fix various bugs with hardware wallets
  • Other minor bugfixes

What's New in version 3.1.1:

  • Fix #4031: Trezor T support
  • Partial fix #4060: proxy and hardware wallet can't be used together
  • Fix #4039: can't set address labels
  • Fix crash related to coinbase transactions
  • MacOS: use internal graphics card
  • Fix openalias related crashes
  • Speed-up capital gains calculations
  • Hw wallet encryption: re-prompt for passphrase if incorrect
  • Other minor fixes.

What's New in version 3.1.0:

  • Memory-pool based fee estimation. Dynamic fees can target a desired depth in the memory pool. This feature is optional, and ETA-based estimates from Bitcoin Core are still available. Note that miners could exploit this feature, if they conspired and filled the memory pool with expensive transactions that never get mined. However, since the Electrum client already trusts an Electrum server with fee estimates, activating this feature does not introduce any new vulnerability. In addition, the client uses a hard threshold to protect itself from servers sending excessive fee estimates. Inpractice, ETA-based estimates have resulted in sticky fees, and caused many users to overpay for transactions. Advanced users tend to visit (and trust) websites that display memory-pool data in order to set their fees.
  • Capital gains: For each outgoing transaction, the difference between the acquisition and liquidation prices of outgoing coins is displayed in the wallet history. By default, historical exchange rates are used to compute acquisition and liquidation prices. These values can also be entered manually, in order to match the actual price realized by the user. The order of liquidation of coins is the natural order defined by the blockchain; this results in capital gain values that are invariant to changes in the set of addresses that are in the wallet. Any other ordering strategy (such as FIFO, LIFO) would result in capital gain values that depend on the presence of other addresses in the wallet.
  • Local transactions: Transactions can be saved in the wallet without being broadcast. The inputs of local transactions are considered as spent, and their change outputs can be re-used in subsequent transactions. This can be combined with cold storage, in order to create several transactions before broadcasting them. Outgoing transactions that have been removed from the memory pool are also saved in the wallet, and can be broadcast again.
  • Checkpoints: The initial download of a headers file was replaced with hardcoded checkpoints. The wallet uses one checkpoint per retargeting period. The headers for a retargeting period are downloaded only if transactions need to be verified in this period.
  • The 'privacy' and 'priority' coin selection policies have been merged into one. Previously, the 'privacy' policy has been unusable because it was was not prioritizing confirmed coins. The new policy is similar to 'privacy', except that it de-prioritizes addresses that have unconfirmed coins.
  • The 'Send' tab of the Qt GUI displays how transaction fees are computed from transaction size.
  • The wallet history can be filtered by time interval.
  • Replace-by-fee is enabled by default. Note that this might cause some issues with wallets that do not display RBF transactions until they are confirmed.
  • Watching-only wallets and hardware wallets can be encrypted.
  • Semi-automated crash reporting
  • The SSL checkbox option was removed from the GUI.
  • The Trezor T hardware wallet is now supported.
  • BIP84: native segwit p2wpkh scripts for bip39 seeds and hardware wallets can now be created when specifying a BIP84 derivation path. This is usable with Trezor and Ledger.
  • Windows: the binaries now include ZBar, and QR code scanning should work.
  • The Wallet Import Format (WIF) for private keys that was extended in 3.0 is changed. Keys in the previous format can be imported, compatibility is maintained. Newly exported keys will be serialized as "script_type:original_wif_format_key".
  • BIP32 master keys for testnet once again have different version bytes than on mainnet. For the mainnet prefixes {x,y,Y,z,Z}|{pub,prv}, the corresponding testnet prefixes are {t,u,U,v,V}|{pub,prv}. More details and exact version bytes are specified at Note that due to this change, testnet wallet files created with previous versions of Electrum must be considered broken, and they need to be recreated from seed words.
  • A new version of the Electrum protocol is required by the client (version 1.2). Servers using older versions of the protocol will not be displayed in the GUI.