One of the things my fellow ElectrumSV developer AustEcon and I did a long time ago was hook up the mypy static type checker to our CI (continuous integration) process so that it gets run every time we push a change to our source code repository. If the type checker fails, the build is marked as failing. This then adds a strong incentive to run the type checker locally before pushing a commit.

An image for the story linked blurb you see on Twitter, Slack or wherever.

TLDR; All our code (with a narrow set of exclusions) has been updated to use strict type checking. Some bugs were found, but nothing anyone really cares…


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

We have not been making smaller releases like this. Most of the work is devoted to a larger update that prepares ElectrumSV for many of the exciting things you might see coming in the Bitcoin Association roadmap! …


For the most part there have been no critical problems with ElectrumSV that require releases. So we have been working on our next big technical upgrade. This document is intended to describe what we have been doing for that upgrade so far, and what else has to be done.

This is a technically oriented update.

Goal

The focus of this effort is to clean up the wallet code and prepare for a P2P future, removing a lot of the legacy approaches we are stuck with.

Progress so far

We’ve made a lot of great progress getting rid of a lot of technical debt and…


This document aims to record the plan for moving the focus of ElectrumSV away from monitoring the blockchain to a P2P focused approach. Due to the complicated nature of this, and the fact that it cannot be done wholesale, it is even more necessary to ensure this design document records both the reasoning and the nuances of the planned approach taken for later reference.

It is a copy of an original document shared on Google Drive, and is not guaranteed to be updated to match the original.

Overview

The way SPV was interpreted for the original Electrum wallet was that a…


Overview

As work on the second refactoring effort proceeds, we need to ensure that the model we use to respond to reorgs is correct.

Current approach

  1. The wallet is notified that a transaction is mined, by examination of the scripthash history for a key that is used in the transaction.
  2. The wallet knows when the blockchain is reorganised through processing the headers that it receives from any of the servers it is connected to, through a different chain of headers becoming the longest.
  3. Transactions above the fork height have their proof removed, and a new proof is fetched for each.

Flaws

Reorg detection

Headers are synchronised…


When Bitcoin Cash split from Bitcoin SV to become some strange variation on what Bitcoin used to be, we were left with a problem. Transactions made for either blockchain were valid for the other blockchain. This meant that if a user sent unsplit Bitcoin SV, it would also move the Bitcoin Cash to the same payment destinations. And vice versa, sending the Bitcoin Cash would send the Bitcoin SV.

This article is not intended for non-technical users. It is intended to define the current technical state of coin-splitting for my own reference, as of the date of writing. …


This article covers the release of ElectrumSV 1.3.11, and some of the more important changes that have been made since ElectrumSV 1.3.10. 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…


This article covers the release of ElectrumSV 1.3.10, and some of the more important changes that have been made since ElectrumSV 1.3.9. 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…


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…


This article covers the release of ElectrumSV 1.3.8, and some of the more important changes that have been made since ElectrumSV 1.3.7. 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.

There is also a guide that illustrates some of the common uses of ElectrumSV. Especially if you are new to ElectrumSV, or coming from ElectrumSV 1.2.5 (or even earlier versions). …

Roger Taylor

ElectrumSV developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store