ElectrumSV 1.3.9

Roger Taylor
5 min readNov 16, 2020

This article covers the release of ElectrumSV 1.3.9, and some of the more important changes that have been made since ElectrumSV 1.3.8. Skip to the “What has changed in this release?” section to see what has changed, if that is what you are here for.

Do you need an introduction to how ElectrumSV works?

We have a selected range of guides to common tasks that our users may want to do in our documentation, please check it out.

Where can you download ElectrumSV?

The only safe downloads are available on: electrumsv.io

Where can you get help?

Find our issue tracker here where you can create a ticket. Fill out the issue template, please! Otherwise we have no idea what steps you took or any of the other details and then we have to spend time asking you them anyway and you get help much later. Fill out the template for your own sake, if not ours!

We do not provide support over Twitter or any other forms of social media. Not only is it not guaranteed we will see your comments, it is a very painful way to do support that we avoid. If you need support, submit an issue on our issue tracker. Or you can raise subjects of interest on Unwriter’s Slack, or the Metanet.ICU Slack.

If you are a MacOS user and cannot install/run our latest release, please read this article.

What has changed in this release?

The main changes in this release have been listed below. If you don’t want to know the details, just read the titles. If you want to find out about smaller fixes, you can check the release notes in the Github repository.

Big Sur support for MacOS

There’s some shenanigans going on with two of our the projects we use in the wallet, PyQt5 and PyInstaller. PyQt5 provides the graphical user interface that you see when you use ElectrumSV, and PyInstaller provides the way we do builds. If you run ElectrumSV from the source code, the latest version of PyQt5 works fine. If you run a build using an older versions of PyQt5 before a certain point, it works fine. But if you run a build using later versions of PyQt5 it locks up — and does not work fine at all.

This was reported months ago by Lin Zheming, but we’ve been waiting for these other projects to sort it out. ElectrumSV is not the only project experiencing this, all projects that use these dependencies will encounter it and have to deal with it.

For now we’ve made a workaround to allow ElectrumSV to continue to work for Big Sur users, and this means using the older version of PyQt5 for all platforms. Only MacOS really needs the older version, but we’re going to use it for the other platforms to keep things simple.

Commits: #1

Transaction export and saving

The code to export and save transactions, accessed through the transaction dialog, was not working right in all cases.

We now offer a range of ways to both copy and save a viewed transaction. The first two screenshots will be both the copy and save menus for a fully signed transaction.

The copy menu for a fully signed transaction.

We do not support copying the raw transaction data to the clipboard. In most cases if a user is copying a transaction, they will likely be copying the hex to paste into a web site.

The “with proofs” option is a little more complex. In the longer term it will probably give the user an option to choose what to include, and allow headers, merkle proofs and parent transactions to be included. But for now, it just includes parent transactions.

The save menu for a fully signed transaction.

The save menu does however also offer the ability to save the raw transaction data.

The next two screenshots are the copy and save menus from a transaction that is not fully signed, otherwise referred to as an incomplete transaction.

The copy menu for an incomplete transaction.

Copying (or saving) an incomplete transaction is something intended at this point for cosigners of multi-signature wallets — it includes derivations for mutually known signing keys for example.

The save menu for an incomplete transaction.

There is no raw transaction data for an incomplete transaction, so we just offer the same options for saving as we do for copying.

A related change to the user interface is the “please wait” dialog. This used to just be a vague message related to the task at hand, and users would often “cancel” the task by for instance using the X button in the top-right corner. This has been upgraded a little, and now optionally both shows a message on completion and auto-closes after five seconds (but can be manually dismissed by the user clicking the “Dismiss” button).

Commits: #1

Other changes

  • #534: An obscure problem where some users started signing something with their hardware wallet, then closed the ElectrumSV user interface related to this signing action before dealing with their device and it’s request that something be signed.
  • #562: The faucet splitting code was broken and errored after acquiring dust.

What changed before this release?

You can read more details about previous bug fixes and changes, starting from the following article.