diff --git a/docs/release-notes/release-notes.1.3.0.md b/docs/release-notes/release-notes.1.3.0.md new file mode 100644 index 0000000..8e4302a --- /dev/null +++ b/docs/release-notes/release-notes.1.3.0.md @@ -0,0 +1,69 @@ +# vspd 1.3.0 + +vspd v1.3.0 contains all development work completed since v1.2.0 (June 2023). +All commits included in this release can be viewed +[on GitHub](https://github.com/decred/vspd/compare/release-v1.2.0...release-v1.3.0). + +## Dependencies + +vspd 1.3.0 must be built with go 1.20 or later, and requires: + +- dcrd 1.8.0 +- dcrwallet 1.8.0 + +When deploying vspd to production, always use release versions of all binaries. +Neither vspd nor its dependencies should be built from master when handling +mainnet tickets. + +## Recommended Upgrade Path + +The upgrade path below includes vspd downtime, during which clients will not be +able to register new tickets, check their ticket status, or update their voting +preferences. Voting on tickets already registered with the VSP will not be +interrupted. You may wish to put up a temporary maintenance webpage or announce +downtime in public channels. + +The upgrade path assumes dcrd and dcrwallet are already version 1.8.0. + +1. Build vspd from the 1.3.0 release tag. +1. Stop vspd. +1. **Make a backup of the vspd database file in case rollback is required.** +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 + +- 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. +- vspd will now distinguish between tickets which are "missed" and tickets which + are "expired". Previously these tickets would be considered as a single set + labelled "expired". This is acheived using dcrd and + [Golomb-Coded Set filters](https://github.com/decred/dcrd/tree/master/gcs#gcs). +- vspd 1.3.0 will perform a **one-time update of every revoked ticket in the + database** the first time it is started. This may take a while for VSPs which + have been active for a long time or have a large number of revoked tickets. +- Expired and missed tickets added to `/vspinfo`. Revoked is now deprecated. +- Minor improvements to web UI: + - Homepage now displays expired and missed tickets instead of revoked tickets. + - Homepage only displays the current network if it is not running on mainnet. + - Admin page now displays decoded transactions in a human readable format + in addition to the raw bytes. +- Logging has been reviewed to reduce unnecessary verbosity and to make better + use of log levels. Scripts or monitoring solutions which parse logs may need + to be updated. + +### Bug Fixes + +- Disable spell checking on admin page input for ticket hash + ([#397](https://github.com/decred/vspd/pull/397)). +- Duplicate transactions will no longer cause an error when calling + sendrawtransaction + ([#398](https://github.com/decred/vspd/pull/398)). +- Calculate missed/expired/revoked ticket ratios as percentage of all tickets, + not just voted tickets + ([#417](https://github.com/decred/vspd/pull/417)). +- Web server returns explicit errors intead of zero values when cache is not ready + ([#440](https://github.com/decred/vspd/pull/440)).