From ca8f914470c64c05a85dd0695c496dbbf69fcb74 Mon Sep 17 00:00:00 2001 From: jholdstock Date: Wed, 23 Oct 2024 16:15:55 +0100 Subject: [PATCH 1/3] docs: Add 1.4.0 release note --- docs/release-notes/release-notes.1.4.0.md | 102 ++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 docs/release-notes/release-notes.1.4.0.md diff --git a/docs/release-notes/release-notes.1.4.0.md b/docs/release-notes/release-notes.1.4.0.md new file mode 100644 index 00000000..dbb581b3 --- /dev/null +++ b/docs/release-notes/release-notes.1.4.0.md @@ -0,0 +1,102 @@ +# vspd 1.4.0 + +vspd v1.4.0 contains all development work completed since v1.3.2 (November 2023). +All commits included in this release can be viewed +[on GitHub](https://github.com/decred/vspd/compare/release-v1.3.2...release-v1.4.0). + +## Downgrade Warning + +This release contains a backwards incompatible database upgrade. +The new database format is not compatible with previous versions of the vspd +software, and there is no code to downgrade the database back to the previous +version. + +Making a copy of the database backup before running the upgrade is suggested +in order to enable rolling back to a previous version of the software if required. + +## Dependencies + +vspd 1.4.0 must be built with go 1.22 or later, and requires: + +- dcrd 2.0.4 +- dcrwallet 2.0.4 + +Always use release versions of all binaries when deploying vspd to production. +Neither vspd nor its dependencies should be built from master when handling +mainnet tickets. + +## Recommended Upgrade Procedure + +The upgrade procedure below includes vspd downtime, during which clients will +not be able to register new tickets, check their ticket status, or update their +voting preferences. You may wish to put up a temporary maintenance webpage or +announce downtime in public channels. Voting on tickets already registered with +the VSP will not be interrupted. + +1. Build vspd from the `release-v1.4.0` tag, and build dcrwallet and dcrd from + their `release-v2.0.4` tags. +1. Stop vspd. +1. **Make a backup of the vspd database file in case rollback is required.** +1. Stop the instance of dcrd running on the vspd server. +1. Install new dcrd binary on the vspd server and start it to begin any required + database upgrades. You can proceed with the following steps while the + upgrades run. +1. Upgrade voting wallets one by one so at least two wallets remain online for + voting at all times. On each server: + 1. Stop dcrwallet. + 1. Stop dcrd. + 1. Install new dcrd binary and start. + 1. Wait for any dcrd database upgrades to complete. + 1. Check dcrd log file for warnings or errors. + 1. Install new dcrwallet binary and start. + 1. Wait for any dcrwallet database upgrades to complete. + 1. Check dcrwallet log file for warnings or errors. +1. Ensure dcrd on the vspd server has completed all database upgrades. +1. Check dcrd log file for warnings or errors. +1. Install new vspd binary and start it. +1. Check vspd log file for warnings or errors. +1. Log in to the admin webpage and check the VSP Status tab for any issues. + +## Notable Changes + +- A new executable named vspadmin has been added to the repository. + + vspadmin is a tool to perform various VSP administration tasks such as + initializing new databases and creating default config files for fresh vspd + deployments. It also enables operators of existing VSPs to change the extended + public keys (xpub) used for collecting fees, something which was previously + not possible. + + Full documentation for vspadmin can be found + [on GitHub](https://github.com/decred/vspd/blob/master/cmd/vspadmin/README.md). + +- The current and any historic fee xpub keys are listed on a new tab in the admin + page. + +- Fee calculation now takes the new block reward subsidy split from the activation + of [DCP-0012](https://github.com/decred/dcps/blob/master/dcp-0012/dcp-0012.mediawiki) + into consideration. In practice, this means that VSPs will begin charging + marginally higher fees. + +### Config Changes + +- The vspd flag `--feexpub` is now deprecated and does nothing. The equivalent + functionality has been moved into the `createdatabase` command of the new + vspadmin executable. + +- The vspd flag `--configfile` is now deprecated and does nothing. It is still + possible to run vspd with config in a non-default location using the + `--homedir` flag. + +### API changes + +- After being deprecated in release 1.3.0, the revoked ticket count has now been + removed from `/vspinfo`. The number of revoked tickets can be calculated + by adding the number of missed and expired tickets. + +### Bug Fixes + +- Don't run upgrades unnecessarily on brand new databases + ([#477](https://github.com/decred/vspd/pull/477)). +- Don't initialize databases with private keys, only public + ([#478](https://github.com/decred/vspd/pull/478)). From 3f123641349c344d02d719d23cf5042350dddaab Mon Sep 17 00:00:00 2001 From: jholdstock Date: Sat, 2 Nov 2024 08:38:40 +0000 Subject: [PATCH 2/3] Add #495. --- docs/release-notes/release-notes.1.4.0.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/release-notes/release-notes.1.4.0.md b/docs/release-notes/release-notes.1.4.0.md index dbb581b3..c748988d 100644 --- a/docs/release-notes/release-notes.1.4.0.md +++ b/docs/release-notes/release-notes.1.4.0.md @@ -100,3 +100,5 @@ the VSP will not be interrupted. ([#477](https://github.com/decred/vspd/pull/477)). - Don't initialize databases with private keys, only public ([#478](https://github.com/decred/vspd/pull/478)). +- Various minor GUI improvements and bugfixes + ([#495](https://github.com/decred/vspd/pull/495)). From bc65c4631dd7563d070cc31b9ffbeeb320a4d2f9 Mon Sep 17 00:00:00 2001 From: Jamie Holdstock Date: Wed, 8 Jan 2025 18:37:51 +0800 Subject: [PATCH 3/3] Update to decred 2.0.5 --- docs/release-notes/release-notes.1.4.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/release-notes.1.4.0.md b/docs/release-notes/release-notes.1.4.0.md index c748988d..37a6350a 100644 --- a/docs/release-notes/release-notes.1.4.0.md +++ b/docs/release-notes/release-notes.1.4.0.md @@ -18,8 +18,8 @@ in order to enable rolling back to a previous version of the software if require vspd 1.4.0 must be built with go 1.22 or later, and requires: -- dcrd 2.0.4 -- dcrwallet 2.0.4 +- dcrd 2.0.5 +- dcrwallet 2.0.5 Always use release versions of all binaries when deploying vspd to production. Neither vspd nor its dependencies should be built from master when handling @@ -34,7 +34,7 @@ announce downtime in public channels. Voting on tickets already registered with the VSP will not be interrupted. 1. Build vspd from the `release-v1.4.0` tag, and build dcrwallet and dcrd from - their `release-v2.0.4` tags. + their `release-v2.0.5` tags. 1. Stop vspd. 1. **Make a backup of the vspd database file in case rollback is required.** 1. Stop the instance of dcrd running on the vspd server.