Electron Radiant: Bitcoin Cash Wallet Guide
Electron Radiant: Bitcoin Cash Wallet Guide
Usage
-----
When you first run Electron Radiant it will use a different configuration directory
to Electrum. On Unix it is
".electron-radiant", and on Windows/MacOS it is "ElectronRadiant". Your wallet
files will be copied from the Electrum
cofiguration directory (".electrum" on unix, "Electrum" on Windows/MacOS), if
found. Initially transactions will show
up as unverified because Electron Radiant is downloading the blockchain headers to
verify the transactions. This can take
up to 10 minutes, but is only done once.
Ensure you are running Electron Radiant and not Electrum by checking for "Electron
Radiant" in the title bar wording. Some
users installing from [Link] have reported conflicts if both Electrum and
Electron Radiant are installed in parallel
that way.
We STRONGLY recommend you get comfortable and only send a small amount of Bitcoin
Cash coins at first, to yourself,
to confirm the network is processing your transactions as expected.
Bitcoin Cash hard forks after the 6th block with timestamp greater than 1 August
2017, 12:20 UTC has been mined. The
seventh block must be greater than one million bytes in size.
The Bitcoin Cash fork enforces a new signing scheme which is incompatible with the
legacy chain. Electron Radiant only
signs transactions using this scheme, so its transactions are only valid on the
Bitcoin Cash hard fork after the fork
has occurred.
If you want to send Bitcoin before the fork, or Segwitcoins after the fork, you
should continue to use the standard
Electrum client, Electron Radiant will not work.
Once the network forks, it will take time for the Electrum server network to split
into servers of the Segwit fork, and
servers of the Bitcoin Cash fork. You should ensure you are connected to a Bitcoin
Cash Electrum server in order to
send transactions successfully. Some servers that will be serving the Bitcoin Cash
fork are:
There will likely be other servers available; please check their banners in the
Console tab (View|Show Console).
Since Bitcoin Cash enforces a new signing scheme, hardware wallet vendors need to
supply new firmware and/or libraries
for the hardware to be able to sign transactions correctly. Currently such
libraries and firmware do not exist, so you
cannot use your hardware wallets with Electron Radiant.
To use Electron Radiant with your hardware-wallet coins you will need to restore
your wallet as a software Electron Radiant
BIP44 wallet from its seed so that Electron Radiant can sign the transactions
itself. Since this exposes your coins to
risk you may want to wait for the 3rd party software to be developed and integrated
instead.
For the same reason as Hardware Wallets above, 2FA wallets need Trustedcoin to
perform new Bitcoin Cash-style
signatures for their transactions to be valid on the Bitcoin Cash fork. If third
party support appears we will attempt
to integrate it.
Multisig
--------
For a multisig transaction to be valid on the Bitcoin Cash fork, each signature
must be done thew new Bitcoin Cash way,
so each signature must be performed with Electron Radiant or other Bitcoin Cash-
compatible software.
Unfortunately Electron Radiant does not currently work with multisig wallets as
Electrum's serialization format for
transferring transactions between cosigners is incomplete. We intend to fix this.
Miscellaneous
-------------
Electrum 2.9 has new code to deal with chain forks which may have outstanding (pre-
existing in Electrum)
bugs and problems. Since this package forks that code it will contain those
issues.
If you have problems syncing to the correct chain fork (take a look at the Overview
Tab in the "Network" window (in
Menu "Tools") to see information about chain forks your client knows about), you
can try to remove everything except
"wallets" directory and "config" file from your Electron Radiant directory.
Electron Radiant 3.0 -- This is now on Python 3. Make sure all python commands are
on python 3 and any needed
modules/libraries are imported into pyhon 3. The build is deterministic for
windows (everyone should get
the same binary because of customization to Pyinstaller that was done by Electrum
team, as well as separate
repos for locales and icons). The fee upgrades may not be visible for existing
wallet owners
unless you reset the max fee in preferences or remove the config file. There is no
minimum fee on the client
side. Be careful sending too low of a fee (lower than 1 satoshi/byte) or your
transaction may get stuck,
and there is no warning message.
# Release 2.9.2
* force headers download if headers file is corrupted
* add websocket to windows builds
* fix initial headers download
* validate contacts on import
* command-line option for locktime
# Release 2.9.3
* Improved code to force wallet to stay on Bitcoin Cash chain
* Removed dynamic fees. Fees are now simple Sat/Byte model
* Add Coin_Type 145 for Bitcoin Cash for bip39 seed imports
* Use bitcoincash URI prefix for receiving and QR codes
# Release 2.9.4
* Implement new Difficulty Adjustment Algorithm for Nov 13, 2017 Hard Fork
* Change ticker symobl from BCC to BCH
* Implement changes to allow simultaneous installation with Electrum
* Upgrade to PyQt5
* Various fixes for hardware wallets
* Remove 2FA for new wallet creation
* Remove feature to copy electrum wallet files
# Release 3.0
* upgrade to Python3 and PyQt5
* Build is done deterministically for windows
* improve fee policy
# Release 3.1
# Release 3.1.1
* Requires Python 3.5 or greater
* Fixes JSONPRC security threat
* Fixes included for ledger for windows
# Release 3.1.2
* Additional security improvements related to JSONRPC
# Release 3.1.3
* Android only release for security fixes
# Release 3.1.5
* Various bug fixes
# Release 3.1.6
# Release 3.2
# Release 3.3
# Release 3.3.1
# Release 3.3.2
* UTXO (coin) level freezing (accessible from Coins tab)
* Bugfix to network code reared its head when user switches forks in unlikely
circumstances
* Checkpoint code (ElectrumX 1.4) protocol upgrade for faster blockchain header
downloads
* Updated servers list
* BitPay support now works flawlessly
* Fork icon indicates chain splits to allow user to select an alternate chain
* UI glitches fixed
* Various bug fixes (address exceptions)
* Translations on Windows working again
* More Spanish language translations!
* Mac: bitcoincash: URLs working
* Mac: Bitpay URLs working
# Release 3.3.3
# Release 3.3.4
# Release 3.3.5
# Release 3.3.6
# Release 4.0.0
* Privacy features have been added, most notably CashShuffle has been integrated
strongly into the wallet. It is an optional plugin for shuffling coins
securely with other users. Coin control and other logic has been added as
well. The bulk of the work for this release has been this feature.
(Clifford, cculianu, Josh Ellithorpe, Mark Lundeberg, Jonald Fyookball,
imaginaryusername, emergent_reasons, acidsploit, and others).
* Fix #1174, #1178 - Resurrection of .onion support (requires enabling of
non-SSL).
* Fixups for qr code image saving (cculianu), #1175
* Closing a wallet now actually closes its daemon threads. Closing a wallet
window now also implicitly closes any tx dialog child windows it created.
Closing the last wallet window in the app will quit the app, even if other
child windows are still alive. (cculianu)
* Coins tab layout fixups #1180, including right click -> Copy X (cculianu,
Mark Lundeberg, SomberNight)
* Addition of Wallet -> Scan beyon gap... tool #1194 (cculianu)
* Fixed #968 for the Receive tab -- when the form is unsaved it now always is
*guaranteed* to refresh itself with a new unused address in real time.
(cculianu)
* Tx notification systray popup was too intermittent. It now pops up more
frequently when reeiving or synching a new wallet. The wording used has also
been simplified. (cculianu)
* Fix #1182 - Bad proxy can end up in config file (cculianu)
* Fix #1215 - Tabs that are not being shown are no longer refreshed in the GUI.
They refresh themselves when you switch to them, however, if they need to.
This should improve perception of UI responsiveness for large wallets
especially. (cculianu)
* Fixed some bugs related to switching chains (forks) #1185 (cculianu)
* Fixed a bug where importing a private key didn't update the history until
app restart. (cculianu)
* Fix Network Dialog layout (SomberNight)
* Fix sign message not accept rich text spesmilo#5210 (SomberNight)
* Fix #1189 - Cope better with unknown wallet formats or corrupt wallets on
startup. This should improve the experience for SLP users that also use
regular Electron Cash (cculianu)
* Switch over to bitcoin-abc libsecp in preparation for Schnorr signatures.
Libsecp is now actually bundled with the Linux "source" tarball. (cculianu)
* Fix to exchange rate prefs screen UI and deletion of BitcoinAverage as a
historical rate provider (cculianu)
* If running from source, app now has an icon on all platforms (cculianu)
* Fix ubuntu installation for virtual-env (acidsploit)
* Due to phishing being a recurrent annoyance, "Preferred servers only" now
defaults to "CHECKED" for new installs. (cculianu)
* Many performance improvements, especially for large wallets (cculianu)
* Cache address balance in memory rather than recompute each call (SomberNight)
* Various internal bugfixes (cculianu, SomberNight, ecdsa)
# Release 4.0.1
* Lowest base unit in GUI has been renamed from 'cash' to 'bits' by popular
demand. It turns out the 'cash' unit never was popular. (cculianu)
* CashShuffle & Keepkey: Fixed a bug in google protobuf that prevented both
plugins from being loaded simultaneously. #1227 (cculianu)
* Trezor support has been improved with many bugs fixed. It should be less
crashy overall when restoring seeds or when cancelling dialogs. (cculianu)
Special thanks to Technologov for providing feedback and for donating Trezor
wallets to test & dev on.
* Added ability to load any image to Trezor One or Model T's home screen. The
image will be scaled and dithered correctly. You can load PNG, JPG, GIF,
SVG or whatever other image formats Qt supports. (cculianu)
* CashShuffle: Implemented Coins Tab (right click) -> Reshuffle Coin. Use this
feature if want to shuffle already-shuffled coins again to keep liquidity up
or for even more privacy. (cculianu)
* Fix #1235 - Email plugin was broken and crashy. It works now. (cculianu)
* Virtual keyboard plugin looked terrible on some platforms, particularly macOS.
Its layout has been improved to look good on all plafrotms. (cculianu)
* Windows build is now on Python 3.6.8
* Fix #1238 & #1239 - Dark Mode had some hard to read GUI elements due to poorly
chosen colors in the Transaction Dialog. Fixed. (cculianu)
* Fix #1231 - Request list esoteric crash when rebuilding history. (cculianu)
* Merge PR #959 - Fix the support for Ledger HW1/Nano legacy hardware w/o
touching Nano S/Blue (Thomas Preindl, Axel Gembe)
* Ledger: Improved handling of locked Ledger devices (#1245) (Axel Gembe)
* HW Wallets: Fixed devices not being closed properly in some cases (#1246)
(Axel Gembe)
* HW Wallets: Improved messaging for user when trying to detect a HW device
and dependent libraries are missing. This affects the install wizard and it
is hoped it will assist users in troubleshooting. (#1244, #1251) (Axel Gembe)
* HW Wallets: Show proper error message when trying to sign a tx with OP_RETURN
(#1254) (Axel Gembe)
# Release 4.0.2
* Set the gap limit for change from 6 to 20. This is because we realized
CashShuffle wallets already behave as if the gap limit were 12 (reserving
addresses as they shuffle). We just made it official. (Mark Lundeberg)
* Added BIP38 private key support. You can create an import wallet, import
private keys, or sweep private keys using BIP38. In either of those 3,
specify a mix of WIF and/or BIP38 keys and you will be prompted to enter the
password to decrypt the BIP38 keys in question, 1 at a time. (#1289)
(cculianu)
* Added Windows CLI support if running from [Link] or WindowsPowerShell
(previously the console output was always mute even if running with -v --
it only worked for msys, mingw, cygiwn, etc, but not normal Windows console).
(#1295) (Axel Gembe)
* Windows: Make console no longer flash on startup (#1294) (Axel Gembe)
* Fix to minor esoteric/rare bug in CashShuffle where it may be overzealously
freezing receiving addresses with non-shuffle outputs on them. (#1291)
(cculianu)
* Ledger HW Wallet: Remove non-working websocket 2FA for legacy ledger devices
(#1298) (Axel Gembe)
* Ledger HW Wallet: Added support for OP_RETURN and also multiple transaction
outputs (on devices that support it). Code mainly taken from Electrum but
adapted and modified by us. (Axel Gembe)
* Added Linux AppImage builds -- these builds are self-contained binaries with
everything rolled into a single file. It should make it much easier for
Linux users not wishing to install dependencies to simply run Electron Cash.
Based off Electrum's implementation, with our own customizations. (cculianu)
* OSX: Made the DMG release use a "fancy" dmg with graphics and a symlink to
/Applications as is customary on macOS. (cculianu)
* Lib: Fixed a potential crash bug if the server sends bad data to the client.
(cculianu)
* Deprecated support for Python 3.5. Electron Cash now requires Python 3.6+.
* CLI: Added -x/--disable_preferred_servers command-line option (#1222)
(cculianu)
* CLI: encrypt/decrypt commands were broken. They are now working. (#1270)
(cculianu)
* Disabled all fee estimates in the codebase. They are useless on BCH anyway
and were a holdover from our BTC roots. BCH tx's always confirm next block
if they pay the minimum 1.0 photons/B fee anyway. Fee estimates are not needed.
Also disabled the "Estimated confirmation time:" label from the Transaction
Dialog winow. This is not informative either for similar reasons. (cculianu)
* Hardened build system against dependency vulnerabilities (cculianu)
* Fixed bug when Coins -> "Spend" and you right-click in the Send tab's
coins area. (#1269) (Mark Lundeberg)
* Winows: Added some missing OpenGL libs to the built package. Qt will now
use OpenGL or fall back to ANGLE (GL -> D3D translation layer) or software
rendering. The fallbacks help with buggy drivers. (cculianu, Axel Gembe)
* Fixed Tx Dialog breaking on esoteric scriptsigs (#1263) (Mark Lundeberg)
* Strip whitespace when copying various right-click -> "Copy Amount" to the
clipboard. (cculianu)
# Release 4.0.3
# Release 4.0.4
* Added a brand new, cross platform and awesome QR Code scanner #1376
(Axel Gembe, cculianu)
* Fixed QR icon appearing black/invisible on some Linux systems
(Axel Gembe, cculianu)
* Allow user to load any image containing a QR code in the various QR-scan
style dialogs: Pay-to in Send tab, Private Key Sweep, etc. (Axel Gembe)
* Fix #1375 - Ensure 'Receive' tab does not ever give you a frozen address.
(cculianu)
* Schnorr signing has been enabled by default if previously unspecified if the
libsecp256k1[ABC] is present (non-HW, non-multisig wallets only) (cculianu)
* Fix #1385 - Auto-switch send tab mode Shuffled/Unshuffled depending on the
selected coins when doing Coins -> right click -> Spend. (cculianu)
* Various bugfixes (Axel Gembe, cculianu)
# Release 4.0.5
# Release 4.0.6
# Release 4.0.7
# Release 4.0.8
* Cash Accounts support has been added to Electron Cash! Most of the UI for it
is in the "Contacts" tab (View -> Show Contacts), there are also UI bits to it
in the Addresses tab, in the Tools menu, and of course, the Send tab (where
you can enter any Cash Account and it will get auto-resolved for you!)
#1505 (cculianu with massive platform work from Axel Gembe)
* Fixups to allow Digital Bitbox and Ledger to sign more types of OP_RETURN
outputs. (imaginaryusername, Axel Gembe, cculianu)
* "Button" Editor: Fix keypress events going to the editor when the buttons are
focused and other nits. #1518 (Axel Gembe)
* More help for "QtSvg Missing" error; #1516 (Mark Lundeberg)
* Qt: Performance fix to History tab for wallets with many txs when verifying.
The performance when verifying for wallets with a huge history was not optimal
and the UI would periodically hang. This has been fixed. (cculianu)
* SPV: Make the merkle node checker no longer care whether "inner node looks
like a tx" because this check is no longer need after the Nov. 2018 hard-fork.
(cculianu, Mark Lundeberg)
* Fix #1502 - Intermittent iOS Crash Reporter on bad/expired BIP70 Payment
(cculianu)
* Translations: Add support for plural forms #1500 (Axel Gembe)
* Coins Tab: Added default sort order of Amount, Descending. The Coins tab now
also remebers whatever sort order you gave it. This should be good for
CashShuffle users with many coins in their coins tab. (cculianu)
* Wallet: Improve performance of is_mine() check from O(N) to O(logN) (cculianu)
* Qt Network Dialog: Let the user edit the host/port in peace (SomberNight,
cculianu)
* Fonts: Improve color emoji support on Windows and Linux #1498 (Axel Gembe)
* Fonts: Add Google Noto Color Emoji font subset #1496, #1523 - This is bundled
in Windows and AppImage and loaded at runtime if the user lacks a suitable
color emoji font (Axel Gembe).
* AppImage: Bundle more binaries to increase compatibility & other fixes #1492
(Axel Gembe)
* Updated "Error, Could not import PyQt5" message to be more helpful (cculianu)
* Qt: Update to 5.12.3 for Windows and AppImage builds #1490 (Axel Gembe)
* Linux Qt: Warn user if running Qt < 5.12 (this has terrible font support
which causes EC to render fonts badly if using emojis or unicode) (cculianu)
* AppImage: Upgrade to Ubuntu 16.04 as base #1489 (Axel Gembe)
* Build: Protect against PGP keyserver poisoning attack #1487 (Axel Gembe)
* Added [Link] server to [Link] (Georg Engelman)
* TxDialog: Allow various fields to be selected by mouse. (cculianu)
* TxDialog: Added the "Mined in block" field to the dialog. (cculianu)
* Localization: The app now defaults to the system language on Windows, Mac and
generic Unix for new installs. The preferences dialog has also been improved
to bring the General tab to the front and make the language picker contain
translated language names. #1477 (Axel Gembe, cculianu, Alexander Schlarb)
* Fix #1473: Omit bitcoincash: prefix from legacy address in receive tab QR
image if no parameters are filled-in other than 'address'. This allows users
to quickly use the receive tab to scan a QR image from a mobile wallet that
doesn't know about bitcoincash:. Note that if the receive tab has parameters
filled in eg: description, amount, etc, then the receive request becomes a
URI and it will have the bitcoincash: prefix prepended, even if using legacy
address mode. (cculianu)
* Ledger: Fix #1479: 2FA Dialog with Legacy devices and multiple outputs was
crashy due to a small programming error. Fixed. (Axel Gembe)
* Added various hotkeys to the GUI Ctrl+K, Ctrl+M, etc. You will see them in
the various in-app menus (such as Tools, Wallet, etc). (cculianu)
* Made the network layer more resilient to malformed server responses.
(cculianu)
* Search box has been fixed to not get crushed by the balance label and to also
work better and have placeholder text. Closes #1493 (cculianu)
* Coins tab: Offer alternate address format copy (eg "Copy Legacy Address" if
in CashAddr mode, and vice versa). This was already available in the Addresses
tab but wasn't in the Coins tab. Closes #1476 (cculianu)
* Address tab: Allow multi-select and copy of data items such as Addresses,
Address & Balance, etc. Closes #1475 (cculianu)
* Contacts tab: All contacts can now also get an optional label. The label is
keyed off the address and is saved in [Link]. Closes #1508 (cculianu)
* Added better help for the Pay to edit in the send tab. The help text has been
improved to clarify this advanced widget's capabilities, and a '?' help button
has been added in the tool buttons for the line edit. (cculianu)
* App icon has been updated to be a little more rectangular and render better
across resolutions and platforms. #1526 (cculianu, Axel Gembe, fyoookball,
BeltranLeo)
* Update checker: Use a longer timeout to not time out when using a proxy
server. #1509 (cculianu)
* External Plugins: Be more resilient to a bad plugin file. #1533 (cculianu)
* Updated translations (Axel Gembe)
* Email plugin crash fix #1534 (cculianu)
* Minor UI bugfixes. (Axel Gembe, cculianu)
# Release 4.0.9
* Fixed remaining (rare, hopefully) font & emoji rendering issues on some Linux
distributions. (Axel Gembe)
* Added preferences options for "Use FreeType" (Windows) and "fontconfig
overrides" (Linux). (cculianu)
* Updated blockchain checkpoint to block 592911. (Malcolm Smith)
* Added support for "cashacct:" URIs #1547. You can paste these in the Pay-to
edit in the Send tab or, if on Linux, Mac & Windows, click on a cashacct:
link in your browser as well. (cculianu)
* Fixed esoteric crash bug which would occur sometimes when opening the
preferences dialog. This bug was due to bugs in PyQt5 when using QtMultimedia
and the fix involved loading QtMultimedia at app start, rather than on-demand.
#1545 (cculianu)
* Fix #1552: Disallow "Request payment" in addresses tab when address is used.
This would lead to an inconsistent UI; the receive tab would always enforce a
new address anyway, so the option in the right-click menu was misleading at
best in that situation. "Request payment" works as normal if the address is
unused, however. (cculianu)
* Fixed Windows [Link] to be more reproducible and other misc build fixes.
(Axel Gembe, cculianu)
* Fixed very rare uncaught exception due to misbehaving plugin #1554. (cculianu)
* KeepKey & Trezor: Fix WebUSB on Windows 10 1903 by patching libusb, #1556.
(Axel Gembe)
* Cash Accounts: Lookup/Search results offer a "Details..." link now instead
of the "View tx..." link. You can view tx on the details page. (cculianu)
* Qt: Added proper keyboard navigation to the Transaction Dialog window, and
various other places. #1557 (Axel Gembe)
* Android: Added native libsecp256k1 support (Malcolm Smith)
* Bugfix #1240, #892, #1484: Prevent infinite startup hangs due to lockfile
timestamp in the future. (cculianu)
* Email Plugin: Minor fixups and fixed bug #924. (cculianu)
* iOS: Fix #1273 -- Crash due to trying to pass a Python Exception to obj-c as
string. (cculianu)
* Various build and packaging fixes for Windows. (Axel Gembe)
* Added BitPay 2.0 JSON API support. (cculianu)
* Fixup to some plugins such as Scheduled Payments and Inter-Wallet-Transfer
raising uncaught exceptions if they are loaded and enabled and user hits
Ctrl+F (cculianu).
* LabelSync: Prevent error dialog spam when labels plugin fails to update
labels on the server. (cculianu)
# Release 4.0.10
* Lib & Qt: Added Bip38Key encryption support to both the library for plugins
to use as well as to the Qt UI for users to be able to export or encrypt WIF
keys as BIP38 encrypted keys; #1593, #1594. (cculianu)
* Minor internal i18n nits, #1571. (Mark Lundeberg)
* Windows: Switch LibUSB to version 1.0.23-rc2, #1572. (Axel Gembe)
* iOS: Added native secp256k1 to iOS build, drastically improving signing speed.
(cculianu)
* iOS: Added Schnorr signatures. (cculianu)
* Fixed output script classifaction code to be more correct. (Mark Lundeberg)
* Qt: Made generated QR codes look better on HighDPI displays. (cculianu,
zebra-lucky)
* Misc. localization and internationalization fixups. (Axel Gembe)
* OSX: Minor fixup for Mojave font weights being rendered too thick. (cculianu)
* Minor bugfix: Guard against "all zero" transactions coming from malicious
servers, #987. (cculianu)
* Qt Console: Fixed the warning box layout to fit on-screen in all setups,
#1584. (Axel Gembe)
* Qt: Fixed minor warning about alpha value, #1585. (proteanx)
* OSX & Linux AppImage: Bumped bundled Python version to 3.6.9. (cculianu)
* iOS: Added a ruby helper script which, if running Brew, will auto-set-up
more of the Xcode project for the user after creating it with
`make_ios_project.sh`. (jonspock)
* Added SLP awareness to all wallets. Even though one can't easily get an SLP
token into a non-SLP wallet, it is still possible. The EC internals now
track transactions containing SLP tokens and guard against spending such
coins. Coins that have SLP tokens on them are highlighted in green in the
"Coins" tab and cannot be spent from the UI. This is to prevent token
burn, #1602 (cculianu)
* Android build fixes, #1599. (mhsmith)
* More Android fixes: Added stability improvements and various corner
case bugfixes (see github PR #1605 for details). (mhsmith)
* Fiat FX Rate: [Link] URL / API endpoint has changed, thus breaking fiat
exchange rate anources if "Bitpay" was selected. Fixed. (cculianu)
* Updated websockets (electrum-merchant): fixed stale/old code which no longer
ran, added '--payment_url' option, and other miscellany. (cculianu)
* Implemented BIP70 properly on Qt and iOS; #1612. (cculianu)
* MacOS HW Wallets: Fixed SIGSEGV crash due to talking to the device from
multiple threads which is not supported on Darwin. (cculianu)
* Ledger Nano HW support has been vastly improved: It should be less crashy
and provide the user with much more meaningful messages for getting the device
into the proper state to talk to Electron Cash. (cculianu)
* Wallet: Fixed erroneous coinbase maturity logic. Immature mined coins were
erroneously being withheld from spending for an extra confirmation. (cculianu)
* Coins tab: Coinbase coins that are not mature are now highlighted in blue
text and are not allowed to be selected for individual coin spending
(previously you could select them for spending with no way to actually spend
them which was bad UX). (cculianu)
* TxDialog: coinbase tx's now show 0 fee, rather than 'unknown' (cculianu)
# Release 4.0.11
# Release 4.0.12
# Release 4.0.13
- **BIP 39 Seed format** is now the ***native seed format*** for Electron Cash!
(Calin Culianu)
- New wallets will always generate seeds in this format. When restoring from
seed, format auto-detection is implemented (so that old 'Electrum' style
seeds continue to work).
- Additionally, wallets created/restored from BIP39 will no longer have no
"Seed" icon in the GUI (and you can always view their seed; it is never
"forgotten").
- The seed dialog now always shows derivation paths for BIP39 seeds.
- **New integrated Tor capability**. (Axel Gembe, Calin Culianu)
- This capability will be bundled with Electron Cash for the upcoming
***CashFusion*** feature.
- For now, though -- you can use it to start/stop Tor right from inside
Electron Cash -- **no additional Tor browser install needed**!
- Faster Network, #1819: Improved network code for faster wallet startup times.
(Mark B Lundeberg)
- Added "Sign/Verify message" to the 'Contacts' tab right-click menu.
(Calin Culianu)
- Fix #1727 - Don't close Qt app if user hides windows using the system tray
icon Show/Hide feature. (Calin Culianu)
- Wallet rename function added for Android version, plus other fixes.
(Andrew#128, Malcolm Smith)
- Wallet export function added for Android version. (Andrew#128, Malcolm Smith)
- Internal fix-ups to possible error message dialogs when broadcasting a
transaction #1730 (Mark B. Lundeberg)
- Performance boost to base_encode/base_decode for legacy addresses.
(SomberNight/ghost43)
- Updated translations. (Axel Gembe, Georg Engelmann, various other volunteers)
- Updated embedded libsecp256k1 to ABC version 0.20.9.
(Calin Culianu, ABC Authors)
- Server list: Add 'display' key to give Tor servers a short name. (Axel Gembe)
- Network dialog: Various fixups to proxy detection and usage of Tor servers &
onion icon on .onion servers (Axel Gembe, Calin Culianu)
- Various much-needed build system refinements and fixes. (Axel Gembe)
- Qr code reader: Fix to make it more reliable on all setups. (Axel Gembe)
- Updated pre-packages server list, aka `[Link]`.
(Calin Culianu, Andrea Suisani)
- Fixed the long-standing "tx's lose their txid" bug resulting in erroneous
error dialogs popping up on broadcast sometimes. (Calin Culianu)
- Fix #1785 - Allow searching (Ctrl+F) by tx_hash in history tab.
(Calin Culianu)
- About dialog: Update copyright year to 2020 and make localizable. (Axel Gembe)
- Fix #1789: Disallow user delete last address in Imported wallet. You could
then end up with an empty, 0-address wallet, which the rest of the internal
codebase did not like. (Calin Culianu)
- Fix #1774: Tolerate spurious 'error' messages from server. (Calin Culianu)
- Fix #1738 - Handle `protobuf` serialization errors for payment requests.
(Calin Culianu)
- CashFusion back-port #1647: Add change-address reservation subsystem.
(Mark B Lundeberg)
- Add create/restore commands in to daemon mode RPC server #1746.
(MrNaif2018)
- UTXOList (Coins tab): Show number of coins in output_point column.
(Calin Culianu)
- Update ViaBTC explorer address. (Imaginary Username)
- #1802 - Added "payment_received" event which can be used by plugin authors
wishing to author BIP70 payment integraton plugins. (MrNaif2018)
- Fix: Signing payment requests with OpenAlias should now work. (Calin Culianu)
- #1811: `[Link]`, updated greedyhog's server. (greedyhog)
- Max OSX -Binaries are now built with hardened runtime enabled, which is
required now on latest Catalina. (Calin Culianu)
- Fix #1817, Bitcoin Lib: Added tighter validation to bitcoin.deserialize_xkey.
(Calin Culianu)
- Various internal bug-fixes and improvements.
(Calin Culianu, Axel Gembe, Mark B Lundeberg, Andrew#128, Malcolm Smith).
# Release 4.0.14
- Fixed a bug in CashShuffle which would sometimes cause some shuffle tx's
to use the same address twice in the outputs. (cculianu)
See reddit thread:
[Link]
# Release 4.0.15
# Release 4.1.0
# Release 4.1.1
- Added support for the ASERTi3-2d DAA for the Nov. 15th, 2020 upgrade #1954
(Calin Culianu)
- Added testnet4 support, accessible with the --testnet4 CLI option (#1974)
- Internal build fixes for OSX (Calin Culianu)
- Internal fix for unit tests #1929 (Axel Gembe)
- CashFusion: Show icon and add message even on non-fusable wallets #1927 (Axel
Gembe)
- dnssec: fix compat with dnspython 1.16 and 2.0.0 #1934 (Axel Gembe)
- tests: fix cashaddr checksum test unreliability #1938 (Axel Gembe)
- CashShuffle: Remove unmaintained tests #1940 (Axel Gembe)
- Tor: Make the messages refer to a specific Tor binary #1941 (Axel Gembe)
- git sanity: enforce "git checkout commithash" actually pulls commit #1949
(SomberNight, Axel Gembe)
- CashFusion: Add more tiers for fusion server #1951 (Jonald Fyookball)
- trezor: bump lib version, implement new passphrase-on-device UI #1947 (Axel
Gembe, matejcik)
- Add [Link] mainnet and testnet explorers #1952 (Axel Gembe)
- Fusion: Remove example server #1953 (Axel Gembe)
- CashFusion: Ensure tor_port_good is defined in plugin (Calin Culianu)
- Build: Fix wine build failing, typo in the git checkout work #1956 (Axel
Gembe)
- CashFusion: Better consolidation logic (Mark Lundeberg)
- CashFusion: Update default server to use SSL #1959 (Mark Lundeberg)
- CashFusion: Enhance fuzzing logic; more funds safety checks (Mark Lundeberg)
- CashFusion: Miscellaneous cleanup (Mark Lundeberg)
- Made PyQt5 optional by default and installable by [full] or [gui] extra
requires (MrNaif2018)
- Android: add plural formulae for Arabic and Polish (Malcolm Smith)
- Android: use Babel so we don't need to handle every plural formula separately
(Malcolm Smith)
- Prompt to start Tor only if user has enabled autofuse for wallet (Calin
Culianu)
- Fix make_locale to be more pythonic (agilewalker)
- Exchange rates: Remove dead exchanges #1982 (Axel Gembe)
- Android: Sign transaction with schnorr #1988 (Jonas Lundqvist)
- CashFusion: Include 'distinct coins' concept when enforcing privacy threshold
(Mark Lundeberg)
- Qt: Set the layout direction based on user-configured language, for
right-to-left languages (Calin Culianu)
- Network dialog: Add capitalized Tor binary name #1989 (Axel Gembe)
- Run history_list_filter hook on updated labels #1990 (Jonas Lundqvist)
# Release 4.2.0
- Added support for scalnet test network, accessed with CLI arg --scalenet.
(Calin Culianu)
- CLI/Server: Added addtransaction arg to payto/paytomany (#1997) (MrNaif2018)
- Ledger: Fix warning about unverified inputs (#2003) (Axel Gembe)
- Ledger: Test firmware version for trusted input requirement, fixes failure
on older firmware < 1.4.0. (#2008) (Axel Gembe)
- Ledger: Update python dependencies (#2009) (Axel Gembe)
- Android: add Load & Sign unbroadcasted tx (#1986) (Matthew Clancy,
Malcolm Smith)
- Added ASERT tests (#2007) (Jonas Lundqvist)
- Added paymentrequest tests (#2011) (Jonas Lundqvist)
- Enable coverage HTML report (#2012) (Jonas Lundqvist)
- Use locale atof when sorting columns (#2015) (Jonas Lundqvist)
- Add Bitcoin Unlimited block explorer (#2016) (Jonas Lundqvist)
- CLI: Added RPA paycode support (#2006) (Jonald Fyookball & Calin Culianu)
- Dockerfile fixes for WINE and Linux AppImage (Calin Culianu)
- Got rid of `imp` rewriting of lib, plugins, and gui dirs in source tree.
(Calin Culianu, Axel Gembe, Malcolm Smith)
- Disable cointext: support from send tab & remove cointext code (#2022)
(Calin Culianu)
- Qt UI: Made all tabs except for "Console" ON by default (Calin Culianu)
- TxDialog: Add "Freeze Coins" button to freeze inputs before broadcast
(Calin Culianu)
- Fixed a regression introduced in 4.2.1 where the checkpoint block being after
the asert anchor caused the code in [Link] to have a bad time.
(Calin Culianu)
- appimage build: build was failing on some host systems #2181 (SomberNight)
- Requirements: Restring PyQt5 version to >=5.12.3 and < 5.15.3 (Calin Culianu)
- Re-enabled PyQt 5.15.3 (Calin Culianu)
- OSX Fix: Allow for Mojave+ dark mode to work (requires Qt 5.15.2) (Calin Culianu)
- NSIS: Wait for the uninstaller to finish #2184 (Axel Gembe)
- NSIS: Ensure the process is not running when (un)installing #2184 (Axel Gembe)
- Servers: Add [Link] scalenet server #2186 (Axel Gembe)
- Servers: Fix indentation #2187 (Axel Gembe)
- Build: Use git version with patch for CVE-2021-21300 #2191 (Axel Gembe)
- [Link]: Fix typo #2192 (Axel Gembe)
- AppImage: Include libxcb into the image #2197 (Axel Gembe)
- Add [Link] to manifest #2200 (Jonas Lundqvist)
- Install Wizard: Add derivation path scanner #2199 (Jonas Lundqvist)
- Tweaks and fixups to the DerivationPathScanner (Calin Culianu)
- Build: Add cffi to the requirements #2203 (Axel Gembe)
- Android: add new layout screens for the choice between standard and multi-sig
wallet. (Aldin Kovačević)
- Android: reorganize code for creating a standard wallet.(Aldin Kovačević)
- Tor: Update to version [Link] with some patches #2205 (Axel Gembe)
- OpenSSL: Update to version 1.1.1j #2206 (Axel Gembe)
- Skip path derivation scan if seed is unavailable #2208 (Jonas Lundqvist)
- Shorten boolean expression, use double quotes #2209 (Daniel Gonzalez Gasull)
- Style changes (from backport), small refactorings #2211 (Daniel Gonzalez Gasull)
- Fix PR 2211 #2218 (agilewalker)
- Add [Link] #2222 (Georg Engelmann)
- Removed unreachable line of code #2224 #2234 (Daniel Gonzalez Gasull)
- OpenSSL: Update to version 1.1.1k #2225 (Axel Gembe)
- Python: Update to version 3.8.9 #2226 (Axel Gembe)
- Fixed typo #2227 (Kevin Nowaczyk)
- AppImage: Update OpenSSL to version 1.1.1-1ubuntu2.1~18.04.9
#2231 (Axel Gembe)
- Android: Added initial UI for multisg wallet creation. (Aldin Kovačević)
- Build: Verify the Python checksums #2239 (Axel Gembe)
- Android: Various commits to support multi-sig wallets (Aldin Kovačević)
- Remove CPFP (child pays for parent) (Calin Culianu)
- Update [Link] (Calin Culianu)
- Android: Using 'get_tx_info' to get the status of the transaction.
(Aldin Kovačević)
- Make make_locale check exit status of gettext commands #2259 (Malcolm Smith)
- Android: fix duplicate requirement, add missing string (Malcolm Smith)
- Android: update to Gradle 6.5 and Android Gradle plugin 4.1.2 (Malcolm Smith)
- Android: Added multisig wallets to the Android application #2279
(Aldin Kovačević)
- Look for external plugins in ELECTRON_CASH_PATH #2301 (Jonas Lundqvist)
- Support disabling JSON-RPC server in Daemon #2305 (MrNaif2018)
- [fusion] Increase 'fuzz fee' to be tier/10^6 #1984 (Mark B. Lundeberg)
- Add feerate argument to payto/paytomany #2306 (MrNaif2018)
- Android: catch overflow errors in AmountBox; closes #2288 (Malcolm Smith)
- Android: restore thousands commas in read-only fiat amounts; closes #2246
(Malcolm Smith)
- Android: Make PaymentRequest.has_expired always return a boolean; closes #2298
(Malcolm Smith)
- Android: Add missing interface_lock in Network.get_server_height; closes #2173
(Malcolm Smith)
- iOS: Support OP_RETURN transaction outputs #2307 (JOE LOYA )
- Android: many, many, many commits fixing many things related to v4.2.4-4
(Malcolm Smith)
- CashFusion: Add "spend only fused coins" to Send tab #2316 (Calin Culianu)
- Android: add sweep private keys command (Malcolm Smith)
- Fix daemon running in non-jsonrpc mode (MrNaif2018)
- Various Linux and Windows build fixups (Calin Culianu)
- Fixed build for OSX Mojave (Calin Culianu)
- Make OpenAlias accept 'bitcoincash:' prefix #2321 (Karol Trzeszczkowski)
- Updated checkpoints for mainnet, testnet3, and testnet4 (Calin Culianu)
- Removed support for ABC's "TaxCoin" (Calin Culianu)
- CashFusion Server: Allow testnets to have unlimited connections per IP
(Calin Culianu)
- CashFusion: Add depth checks #2325 (Jonas Lundqvist, Calin Culianu)
- CashFusion: Added a "Fusion Status" column to coins tab (Calin Culianu)
- macOS: Fix popup_widget display if running in dark mode (Calin Culianu)
- Remove [Link] block explorer #2328 (Jonas Lundqvist)
- CashFusion: Clarify status of coins on fused address #2329 (Jonas Lundqvist)
- Add more accurate exchange rate for ARS #2326 (Santiago Chiabotto)
- History list - Made fiat balance changes also appear in red (scinklja)
- Implement unconfirmed invoices status (MrNaif2018)
- Add ability to forget config on exit (MrNaif2018)
- Fire payment_received event on confirmation too (MrNaif2018)
- macOS: Set minimum system version to 10.14.0 in [Link] (cculianu)
- Add native introspection opcodes (upcoming May 2022 additions to
script) #2339 (cculianu)
- CashFusion: Default fusion depth, if checked, to 3 (cculianu)
- Trivial fix: Allow plugins to use qt/[Link] filename_field (acidsploit)
- Added [Link] to server list (Josh Green)
- Fixups for iOS 15+ (cculianu)
- Android: Remove pycparser from [Link] (Malcolm Smith)
- Android: improve string conversion script, and make it detect some errors
(Malcolm Smith)
- Fixups for Python 3.10 (cculianu)
- add kisternet v3 onion to testnet (jkister)
- Qt: Add cleanup code to avoid random segfault on exit (cculianu)
- AppImage: Fixed to work on Debian and Tails #2245 (Axel Gembe)