releases.json
)This directory contains the releases.json
file that the Electrum ABC update checker uses to determine when a new version of the application is available.
There is an update-checking facility built-in to the Qt desktop app. The facility basically functions as follows:
RELEASES_JSON_URL
in electrumabc/constants.py
(currently: https://raw.github.com/Bitcoin-ABC/bitcoin-abc/master/electrum/contrib/update_checker/releases.json)releases.json
(the file in this directory)releases.json
– if they are newer than the version in the running app, and if the signed message is valid and is signed with one of the addresses hard-coded in update_checker.py
, it then informs the user that an update is available.No automatic updating is performed and the user must manually click on the URL hard-coded in the app to go to the release page.
The purpose of this facility is merely as a convenience for users who aren’t on reddit or aren’t constantly refreshing our website to be able to find out when a new version is available.
It hopefully will decrease the number of users running very old versions of Electrum ABC.
You need to update releases.json
in this directory whenever a new version is released, and push it to master.
This file contains a dictionary of:
{
"version string" : { "bitcoin address" : "signed message" }
}
electrumabc/version.py
.releases.json
electrumabc/version.py
.releases.json
releases.json
, and update it to “3.3.5”electrumabc_gui/qt/update_checker.py
. Paste this address and the signed message (replacing the old address and signed message) into the dictionary entry for “3.3.5” in releases.json
.releases.json
to master. (Since currently the update_checker.py
code looks for this file in master on github).The old entry:
"3.3.4": {
"bitcoincash:qphax4cg8sxuc0qnzk6sx25939ma7y877uz04s2z82": "G8lW9Wh2/sa2I7Sd0jdAlit+lYwrXFwjG7ZDUEDngSwyPAT29YMKP68hqeaW7+mp4gClY1+qPIAQsFqzPtoMbTw="
}
Gets replaced with:
"3.3.5": {
"bitcoincash:qphax4cg8sxuc0qnzk6sx25939ma7y877uz04s2z82": "HPC+QnKXdxW/V6qeVFGjYKeP9YQ6DL16Y1SQznavG/G7FUEpMK1wnkAj5yO/RW440mvXxds1PpS35RaEMtvbgJw="
}
Notice how the version string is different, the signing address happened to remain the same, and, of course, the signature is different now.
electrumabc_gui/qt/update_checker.py
. (If you do not, modify this file before release to include one of your addresses!)3.3.5
in the example above.Before pushing the commit to the remote repository, it is possible to test locally that a signature is correct.
For this, run the application from sources with the --test-release-notification
command line option.
./electrum-abc -v --test-release-notification
To trigger the version check manually, go to the Help menu and click Check for updates.