forked from Electron-Cash/Electron-Cash
-
Notifications
You must be signed in to change notification settings - Fork 1
/
RELEASE-NOTES
1136 lines (1029 loc) · 60.9 KB
/
RELEASE-NOTES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Electron Cash is a fork of the open source Electrum Bitcoin wallet (www.electrum.org) for Bitcoin Cash. The current
release is based on the Electrum 2.9.0 codebase with patches to
- handle Bitcoin Cash difficulty adjustment algorithm
- sign transactions the Bitcoin Cash way
- updated list of electrum servers
- updated icons and branding
- remove RBF (unsupported by Bitcoin Cash network nodes)
- use different directory for wallets and configuration
The Electron Cash software is NOT affiliated, associated, or endorsed by Electrum, electrum.org or the Electrum
developers.
If you are concerned about running Electron Cash binaries we recommend installing and/or running it from the github
source directly.
Usage
-----
When you first run Electron Cash it will use a different configuration directory to Electrum. On Unix it is
".electron-cash", and on Windows/MacOS it is "ElectronCash". 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 Cash 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 Cash and not Electrum by checking for "Electron Cash" in the title bar wording. Some
users installing from setup.py have reported conflicts if both Electrum and Electron Cash 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 Cash 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 Cash 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:
electrum-abc.cascharia.com via SSL port 50002
electrum-abc.criptolayer.net via SSL port 50012
180.235.49.196, 35.185.209.69 and 35.197.25.235 TCP port 50001 and SSL port 50002
There will likely be other servers available; please check their banners in the Console tab (View|Show Console).
Hardware Wallets
----------------
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 Cash.
To use Electron Cash with your hardware-wallet coins you will need to restore your wallet as a software Electron Cash
BIP44 wallet from its seed so that Electron Cash 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.
Two-factor Authentication (2FA) Wallets
---------------------------------------
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 Cash or other Bitcoin Cash-compatible software.
Unfortunately Electron Cash 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 Cash directory.
Electron Cash 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
* Multiple address format support. Electron Cash supports input of cashaddr
addresses, legacy bitcoin addresses, and BitPay addresses anywhere
where a legacy address used to be accepted.
* Only display of cashaddr and legacy addresses is supported. You can
toggle the display format in the Appearance tab of the Preferences
dialog window; alternatively you can press the converter icon
button in the toolbar at the bottom of the main window. Hardware
wallets will probably show the legacy format until their firmware is
updated.
* An address converter tab can convert between all 3 address formats.
To see it, choose to show it from the View menu.
* At some stage support for BitPay address format will be removed, and
at some later stage support for display of legacy addresses will also
be removed.
* The fee slider has been adjusted to range from 1 to 10 sats/byte.
* Many bug fixes and improvements
# 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
* Enable Bip70 payment requests for merchants like BitPay.
* Prohibit unconfirmed inputs on payment request (invoice) payments
because Bitpay will reject them anyway.
* Remove Bitpay address format from address converter as Bitpay is
now fully on CashAddr.
* Introduce 'cash' moniker for micro bitcoin
# Release 3.2
* restore disabled script opcodes (May 2018 HF)
* network protocol version bump to 1.2
* ledger: cashaddr support and various fixes
* more block explorers
* other bugfixes and improvements
# Release 3.3
* Add external plugins feature. Please see https://github.com/Electron-Cash/Electron-Cash/blob/master/plugins/README.rst and pay special attention to the risks involved with running external plugins.
* Various bugfixes and improvements
# Release 3.3.1
* Add OP_RETURN feature.
* Upgraded fee interface allowing lower fees with a custom fee rate.
# 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
* Added native elliptic curve cryptography using libsecp256k1 (1000x speedup on tx signing in some cases)
* MacOS QR Reader now works.
* Windows QR Reader now works.
* Various performance fixes -- app should be able to handle much larger wallets now with many UTXOs
* Nework layer fixups
* Updated Checkpoint to the BCH chain.
* Various minor UI gltiches fixed
* MacOS binary size significantly reduced
* Support for OP_RETURN parameters to bitcoincash: URL
* Allow 1-of-1 multisig wallets
* Server list update
# Release 3.3.4
* Anti-Phishing protection for all platforms. Server-provided text will not
appear in user-facing GUI windows anymore. Server error messages are instead
parsed and mapped to predefined strings.
* "Import Labels" now works.
* Memory usage of the app has been reduced -- especially with multiple wallets.
* Upgrade prebuilt Windows and MacOS binary to use newer PyQt5 5.11.3.
# Release 3.3.5
* Added ability to specify raw hex op_return data in Send tab
* Added server options for: "Preferred" and "Banned" in Network Dialog, and an
option to connect to only preferred servers.
* LabelSync plugin now works properly
* Cosigner pool plugin fixups -- it should work much better now!
* Cashaddr is now default on new installs
* OSX packaging fixes (code signature should stay dynamically valid now)
* Updated Trezor plugin to trezorlib-0.11.x (#1089)
* Many bugs and quirks fixed from issue tracker
* Performance improvements
* Memory leaks fixed
# Release 3.3.6
* Support for op_return_raw= URI parameter to 'bitcoincash:' URIs. This
paremeter is for raw hex to be used as the OP_RETURN payload (0x6a will
always be prefixed to this raw hex.) (markblundeberg)
* Testnet wallets were using the wrong bip32 key headers. They SHOULD
accept & generate tpub/tprv on testnet but instead the keys generated were
xpub/xprv. This was not to spec and has been fixed but, it may mean you will
need to regenerate your testnet wallets form mnemonic seed. :/ (cculianu)
* Added "Check for updates..." mechanism which is enabled by default
(check is done once per hour). See Preferences -> General to disable auto
check. Or Help -> "Check for updates..." for manual checking. (cculianu)
* Added "Dark" theme to UI. See Preferences -> General (cculianu)
* Fixed incompatibility bug where generated QR images were uppercase-only
BITCOINCASH: which caused problems with some buggy wallet implementations. We
switched back to generating 'bitcoincash:' (mixed-case) URIs, which is more
compatible. (cculianu)
* Added "Export contacts" facility to UI so you can export all your contacts to
a file. (Strangely, we had "Import contacts", but no export!) (cculianu)
* Added "Wallet -> Rebuild history" to Qt GUI. Allows users to re-synch entire
wallet from server, on demand. (commit: a72b2a72, cculianu)
* Request fee estimate from ElectrumX/ElectronX server every 20 minutes
(cculianu)
* Performance improvements for wallets with huge numbers of tx's (cculianu)
* Trezor bugfix (SomberNight)
* Append HMAC to Bitbox messages (TheCharlatan)
* Android fixes (mhsmith)
* Various internal bugfixes and code refactoring (cculianu, ecdsa, SomberNight)
* servers.json updated (torusJKL)
* Fixed a compatibility issue with Qt 5.12 (SomberNight, cculianu)
# 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 cmd.exe 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 sats/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
* Added Schnorr signatures to UI and backend (fyookball, cculianu,
Mark Lundeberg)
* After much trial and tribulation: fixed broken KeepKey support: KeepKey
webusb now works, too. Latest devices should work again. Thanks Axel!
(Axel Gembe)
* Fixed multisig not working on Trezor (& KeepKey) (cculianu, Axel Gembe)
* Updated QR reading accuracy and detection for Linux AppImage & Windows by
updating the version of ZBar we ship; it's custom-compiled by us from
official repo to include only what's needed. (Axel Gembe)
* Fix #1349 -- Assertion Error on daemon stop (cculianu)
* Added "Hardware Wallet Support..." tool in menu and in Install Wizard for
Linux only to install udev rules for HW wallets. (Axel Gembe, cculianu)
* OP_RETURN-too-large message in UI was wrong, off by 1 (Axel Gembe)
* Fix #1338 - Crash on BIP38 private key sweep (cculianu, im_uname)
* AppImage build fixups (Axel Gembe)
* Added/removed some servers from servers.json (cculianu, dagurval, im_uname)
* Address list: remove double space in balance column (Axel Gembe)
* Console: Make insert key toggle overwrite mode (Axel Gembe)
* x509 certs: Print better error messages when certs are expired; affects
bitpay BIP70 (cculianu, SomberNight)
* Layout and Qt effects fixups for various (Axel Gembe)
* Fix #1306 - Dark theme glitches (Axel Gembe)
* Fixups to keyboard navigation for console tab (Axel Gembe)
* Fix console font being reset when moving between monitors on Windows
(Axel Gembe)
* Qt accelerator key fixups (Axel Gembe)
* Fix #1261 - Mojave Dark mode looked bad (cculianu)
* Added fancy warning box on top of Console tab to prevent social engineering
attacks (Axel Gembe)
* Added -R/--relax-warnings CLI option to disable Secp & other warnings
(Axel Gembe)
* Better Qt error messages when importing bad WIF p2sh 'private keys' (cculianu)
* Ledger Nano-X USB device support (Axel Gembe)
* Various small other nits & bugfixes [see commit log] (cculianu, Axel Gembe)
# 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
* Bugfix -- Imported Private Key wallets as well as some HW wallets (keepkey)
could not sign or save a tx in 4.0.4 due to a subtle bug introduced as part
of a refactor. Fixed. (cculianu)
* Fixed QR scanner looking off-center on some platforms. (Axel Gembe)
* Fixed QR scanner quirks on some platforms when failure to configure camera
resolution confused the QR scanner a little bit. (Axel Gembe)
# Release 4.0.6
* Added CoinText support. Just enter 'cointext:ANY_PHONE_NUMBER' in the send tab
to use it! (cculianu, Jonald Fyookball)
* Added a brand-new Transaction Dialog feature "Download input data" which
allows you to get 100% accurate fees, input addresses, and input amounts for
ANY tx in your wallet or even NOT in your wallet. (cculianu)
* Various fixups to script parser code and misc. transaction refactorings
(Mark Lundeberg)
* Qt: Enable automatic high DPI scaling on Windows and Linux (Axel Gembe)
* Redid some of the icons and graphics to support high DPI (Axel Gembe,
cculianu)
* Added command-line option `--qt_disable_highdpi` to force-disable high DPI
mode (Axel Gembe)
* Bugfixes to Ledger support + allow up to 187 byte OP_RETURN (Axel Gembe)
* Misc tiny UI nits and other fixups (cculianu, Axel Gembe)
* Updated libsecp256k1 to latest from Bitcoin-ABC (cculianu)
* Reduced .dmg, .exe, & .AppImage binary sizes by optimizing images (Axel Gembe)
* Updated servers.json (imaginaryusername)
* CashShuffle: Raised default shuffle limit to 99.9999 BCH (cculianu)
* Replaced the 'clock' icons with new hi-res versions. Please direct all
hatemail to Calin Culianu for he volunteers to take full responsibility.
(Jason Pribble, cculianu, James Cramer, Axel Gembe)
* Minor fix: Clicking a link in browser to open a URL in Electron Cash no longer
resurrects a closed wallet and instead opens the link in whatever active
wallet windows exist. (cculianu)
# Release 4.0.7
* CoinText: Show a popup label after CoinText is initiated to remind user
they need to hit "Send" or "Preview" to proceed (cculianu, imaginary_username)
* Tx Dialog: Fixups and functionality expanded. All wallet addresses are now
links which are clickable (leading to the address's history view). All input
prevouts are now clickable links as well; they lead to a tx dialog screen for
the prevout tx. Additionally, we added a right-click context menu for the
input/output panes of the tx dialog window. This brings EC's functionality
closer to that of a mini block explorer. (cculianu)
* KeepKey: Fixed a packaging issue where loading BIP39 onto an uninitialized
KeepKey would fail with a Python exception on Windows & Mac #1434 (cculianu)
* Python 3.6 is officially the minimum Python version for Electron Cash now.
In the last version, you could still run on Python 3.5 (poorly), we just
made it official. (Axel Gembe, cculianu)
* Added OP_RETURN capability to the 'Receive' tab. You can now generate receive
request URIs and QR codes containing 'op_return' and/or 'op_return_raw'. Not
all wallets can read this query string argument, but Electron Cash can.
(cculianu)
* Linux run-from-source: Warn/Abort with helpful messages if user is missing
required PyQt libs such as QtSvg. (cculianu)
* QR Scanner: Added informative message for Linux run-from-source users who
happen to have a broken PyQt5 lacking a required lib for accessing the
camera. (cculianu)
* Schnorr: Defaults to off for watching-only wallets. This is to prevent
air-gapped setups from underestimating fee between generating and signing EC.
(cculianu)
* Tx Dialog: Warn if user is attempting to broadcat a low fee tx of <1 sats/B.
(cculianu)
* Address tab: Allow CTRL+F of addresses prefixed with bitcoincash: to do the
expected thing. (cculianu)
* Various bugfixes (cculianu)
* OpenAlias: Fix #1441 - Resurrected it form the dead. It wasn't working before.
You can now send payments to people via their openalias eg [email protected]
(requires they set up a DNS TXT record). See https://openalias.org/#implement
(Axel Gembe)
* AppImage: 100% deterministic builds now. (Axel Gembe)
* AppImage: "Open in block explorer" now works (Axel Gembe)
* Windows: We figured out what was causing the anti-virus false positives on
our recent releases and took steps to reduce the possibility of AV false
positives going forward. (cculianu, Axel Gembe)
* CashShuffle: Fix #1223 - Finally resolved the "dead menu actions" bug where
sometimes after bringing up the CashShuffle settings, hotkeys and File->menu
actions would no longer respond. (cculianu, Axel Gembe)
* Quotes/Fiat Exchange Rate: The "historical rates" code was buggy and prone
to "no data" being shown even when the server we get the quotes from has
data. Bug #1448. This has now been fully fixed and made unbuggy. (cculianu)
* Export Wallet History: Fix #1459 - The Wallet -> Export History facility now
always exports fiat history data if "Fiat History" is enabled in preferences.
Note also that the history export is now sorted in descending order by date,
like the history tab default sort order. (cculianu)
* Update checker: Made the "new version available!" notification less obtrusive:
it now posts a message to the system tray popup as well as just creating a
new status bar icon you can click on to respond to the notification at your
leisure. Hopefully this will tempt fewer people to turn off the notifications
(cculianu)
* Preferences pane: Split up the "Transactions" tab in the preferences to
"per-wallet" and "app-global" sections to more clearly communicate in the UI
which of the options are global and which are per-wallet. Closes issue #1427
(cculianu)
* Preferences pane: Added a new option "notify when receiving funds" which
is on by default and if unchecked, allows you to no longer receive system
tray notifications on tx's. This is a per-wallet setting. Closes issue #1451
(cculianu)
* Tx Send Confirmation: Added a new button to the tx send confirmation dialog
"Copy link" which copies the link to the tx on the configured block explorer.
Issue #1464 (cculianu)
* AppImage builds have been made SIGNIFICANTLY smaller. Here's to faster
downloads and peppier startup times, hooray! In addition, the macOS .dmg build
and the Windows .exe builds have been made slightly smaller. (Axel Gembe)
* Cash Address Toggle: Replaced icon with a much nicer one. (Leandro Di Marco)
* Cash Address Toggle: After a reddit poll was conducted, we decided to make it
possible to disable the cash address status bar button in the GUI. It's on
by default, but can be disabled in Preferences -> General. In addition, the
Preferences -> General tab has been laid out slightly differently. (cculianu)
* Improved system tray icon and other assorted icons for high DPI. (Axel Gembe)
* Various build system fixes and bugs fixed. (Axel Gembe)
# 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 electroncash.se server to servers.json (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 wallet.labels. 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 setup.exe 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: Bitpay.com URL / API endpoint has changed, thus breaking fiat
exchange rate sources 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
* Added SatoChip hardware wallet support: https://satochip.io/.
#1668 (Baudoin Collard, cculianu)
* Added API support for plugins to register themselves with the command-line
in order to offer RPC service commands. #1670 (Mark Lundeberg)
* Added "Show crash reporter" to preferences, and re-laid-out the preferences
pane. #1673 (cculianu)
* Fix #1671 -- "No data" for fiat when using the 'history' RPC command has been
now fixed. (cculianu)
* Fix #1679 -- Exporting history now shows fees (if known), as well as input
and output addresses involved in a tx. (cculianu)
* Plugin API fix for @hook. #1669 (cculianu, Mark Lundeberg)
* Internal API optimization for transaction signing #1666 (Mark Lundeberg)
* Added BlockExplorer.one for both testnet and mainnet as a block explorer
configurable in preferences. #1664 (Axel Gembe)
* CLI: Added --op_return and --op_return_raw options for the 'payto' command.
(cculianu)
* AppImage: Improved binary stripping for more reproducible builds. #1662
(Axel Gembe)
* Updated SSL certificates to Sept. 2019. This should hopefully fix some of the
"Unable to verify SSL" errors some users have seen when using CashShuffle.
(cculianu)
* Fixed a long-standing bug where sometimes Electron Cash would hang forever on
startup due to a stale/old daemon 'lockfile'. (cculianu)
* Qt history tab: Added workaround for persitent 'Unknown' balances when using
advanced scripts to spend funds. (cculianu)
* Qt UI: Add mechanism to prohibit '3..' p2sh by default, which should protect
users from accidentally sending BCH to BTC segwit addresses. This protection
can be disabled in preferences. Issues #1658 and #1225. (cculianu)
* Updated README for better instructions on how to run the development/git
version. (Mark Lundeberg)
* Added servers to servers.json: tbch.loping.net, greedyhog.ddns.net. Removed
server theblains.org. (Axel Gembe, greedyhog)
* iOS: Fixes for iOS 13.0+ and other miscellany (cculianu)
* iOS fix: "Downloading headers xx%..." is now more accurate (cculianu)
* iOS fix for bug #1651, crash if prefs screen up when wallet closed. (cculianu)
* transaction.py: don't append value when serializing inputs with scriptSig.
#1648, #1628, #1637 (Mark Lundeberg)
* Addresses tab: hide all empty change addresses, not just used ones &
pop open change list by default. #1646 (Mark Lundeberg)
* Android: allow specifying a server which isn't in servers.json. #1644 #1636
(Malcolm Smith)
* Add Swahili to the language list. (Patrick Kariuki)
* Bumped Qt version to 5.13.2 on most platforms. (cculianu)
* Qt prefs: Renamed the default "light" UI style to "Default". On some systems
this style is actually dark in appearance. (cculianu)
* cashaccts: Fixed parse bug in parsing eg 'cashacctname#123,1.23'. (cculianu)
* Misc. menu and dialog nits, polish, cleanups, more consistent Capitalization,
& More. (Tom Zander, cculianu)
* Qt: main window, make sure Ctrl+Q is shown in File->Quit. (cculianu)
* Transations: prefer verbatim scriptSig for (re)serializing complete
transaction inputs. #1637 (Mark Lundeberg)
* Added index_url override to addrequest command. #1636 (Yuki Matsumoto)
* i18n: Use pgettext in a few places, and various fixups. #1624 (Axel Gembe)
* Very many Android fixes. #1614 (Malcolm Smith)
* p2sh: Fix coin tracking / balance, etc for esoteric scriptSigs/redeemScripts
in inputs. This should make it easier to have a wallet that tracks smart
contract addresses and other advanced usages of Bitcoin. #1620 (cculianu)
* synchronizer: Check txid from server against response content. This is a
paranoia check to make sure the server isn't being malicious. (cculianu)
* i18n nit: Translate 'Unknown' string in format_satoshis. (cculianu)
* Removed cashshuffle.net #1619 (Georg Engelmann)
* Configure payment_url to include payment request ID. #1617 (Mark Meson)
* Command-line: added `addressconvert` command. (cculianu)
* BIP70 Payment Request Fix. There were potentially subtle bugs in how we
handled BIP70. Nothing major. They have been fixed. #1615 (cculianu & Mark
Meson)
* iOS: Add SLP-awareness & protection to the UI. (cculianu)
* Misc. refactoring, nits, and bugfixes (cculianu, Mark Lundeberg)
# Release 4.0.12
* **TRANSLATIONS!** This release includes a complete coverage of the Spanish
language as well as many other language strings added for German, Portuguese,
and other languages. (various contributors, w/ Jonald Fyookball as organizer)
* Made export history way better (#1682) -- Exporting history from the GUI or
the CLI can now optionally include accurate fee data as well as accurate fiat
amounts (if fiat history is enabled in the GUI). (cculianu)
* Fix #1681 - Gave cashshuffle message.proto file a package name. This caused
issues for some source users whereby the lack of a package name may clash with
modules installed on the user's system. (cculianu)
* Android (phase 4): Add ability to delete closed wallets (#1690) (Andrew#128)
* More graceful and softer shutdown on Ctrl-C / SIGINT (#1695) (Mark Lundeberg)
* Various backend preparations for CashFusion (#1693) (Mark Lundeberg)
* Remove unused SIP dependency for Python 3.8 compatibility (Axel Gemebe)
* SatoChip HW Wallet: Fix crash when cancelling PIN change or seed reset
(Baudoin Collard)
* SatoChip HW Wallet: Fix recovered authentikey does not correspond to
registered authentikey error (#1717) (Baudoin Collard)
* Fix #1718: We had a string format error in Export Private Keys dialog, which
would cause uses that were using a password with '{' in it to experience
crashes. (cculianu)
# 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 `servers.json`.
(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: `servers.json`, 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:
https://old.reddit.com/r/btc/comments/fmcf0x/cash_shuffle_privacy_bug/
# Release 4.0.15
- Fixed USB HID support for hardware wallets on macOS. (cculianu)
- Documentation: Updated instructions for running from source on macOS #1848.
(Ty Everett)
- Fix #1806 - Fixed crash when no outputs in tx dialog. (cculianu)
- Requirements: Remove protobuf <3.9 constraint #1864. (Axel Gembe)
- Server list updated. (imaginaryusername, Axel Gembe, cculianu)
- Android fixups and improvements:
- Handle base units being renamed or removed (Malcolm Smith)
- Switch to Requests screen when a request is saved (Malcolm Smith)
- Fix crash when opening payment protocol URL from browser (Malcolm Smith)
- Various internal improvements and fixes (Malcolm Smith)
- Bugfix: BIP39 passphrases were being handled incorrectly for upper or mixed
case #1878. (Jochen Hoenicke)
- Added OP_REVERSEBYTES to the list of known script ops for display. (cculianu)
- Made "Connect only to Preferred Servers" False by default. (cculianu)
- Varous macOS Fixups and improvements:
- Mojave+ dark mode now works (cculianu)
- On macOS we now disabled the "dark" theme in favor of the system dark
theme (cculianu)
- Catalina startup times drastically improved (cculianu)
# Release 4.1.0
- ***CashFusion*** is here! To access it, simply right-click on the CashFusion
icon in the bottom-right of the status bar. Thanks to everybody that worked on
it, in particular: Mark Lundeberg, Jonald Fyookball, Axel Gembe, Calin Culianu
and many more that don't fit here.
- Tx Signing has been significantly sped up for transactions with many inputs.
(Mark Lundeberg, cculianu)
- Tezor HW Wallet: Updated to support latest firmware. #1900, #1902 (Axel Gembe)
- Fixes for bugs introduced by newer ecdsa libraries that use gmpy2. In
particular on Fedora 32 things would sometimes explode when signing a tx or
using CashFusion, due to ecdsa API quirks. (cculianu)
- Fixed ZBar (QR camera) issues on Windows. #1916 (Axel Gembe)
- SSL Certs: Accept wildcard certs, accept CA-signed replacing pinned
self-signed. Servers can now use wildcard certs or switch from self-signed to
CA-signed without losing users! (cculianu)
- Update criptolayer server. #1874 (imaginaryusername)
- Add electroncash.de block explorer. #1920 (Axel Gembe)
- Network: Show problematic pinned certificates and allow unpinning. #1919 (Axel
Gembe)
- Update plugin for Satochip hardware wallet to support latest firmware v0.11.
#1915. (Toporin)
- Tor: Make process shutdown more robust. #1893 (Axel Gembe)
- AudioModem: Fixed to not crash on unsupported platforms. (cculianu)
- Various internal refactorings, fixups, and internal API improvements.
(cculianu, Axel Gembe, Mark Lundeberg)
# 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 Blockchain.com 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