A summary of this feature release is listed below. See the changelog for the
full list of changes.
-
Importing legacy proposals. The majority of this release centers around
importing the legacy git backend proposals into the tlog backend. A CLI tool
was created to handle the required data conversions and to manage the import
process. The import also required a number of downstream changes as well.
Code was added that gives the sysadmin the ability rebuild the plugin caches,
the caches were moved into the tlog backend database, the trillian version
was brought up to date, and trillian tree management was added to politeiad
in order to reduce trillian performance issues that can result from the
number of trillian trees growing. -
Comment edits. Users now have the ability to edit comments during a set
period of time after the comment was submitted. The edit period is a plugin
setting that defaults to 5 minutes.
Note: politeiad requires a restart using the --fsck flag after updating to
v1.4.0 to reflect the changes made to the various plugin caches. The trillian
binaries must be updated to v1.4.1.
Changelog
This release consists of 60 commits from 3 contributors which totals to 242
files changed, 14866 additional lines of code and 4808 deleted lines of code.
[0ed0313] docs: Add v1.3.1 release notes.
[9e8c9a1] comments: Add 'allowextradata' to the policy reply.
[bd78867] comments: Allow retrieving all comment votes.
[b846b94] multi: Add routes page sizes as plugin settings.
[4439e3f] politeiad: Consistent record entries ordering.
[5f8e535] multi: Add temporary comment edits.
[cf53aa7] politeiad: Cleanup deprecated page sizes.
[2668d50] pictl: 'commenttimestamps' improvements.
[d968152] tstore: Allow plugins to use the key-value store.
[22a80f8] tstore: Unprefix returned keys from CacheGet.
[c54ff12] politeiad: Update trillian to v1.4.0.
[be19afb] comments: Cache final timetamps.
[094cff5] ticketvote: Cache final timestamps.
[e5d9b16] politeiawww: Add Records API documentation.
[38b63bd] pi: Add LegacyToken field to ProposalMetadata.
[f8c0449] politeiawww: Add plugin model.
[444cb2d] pi: Fix LegacyToken errors.
[14381e9] docs: Add plugin architecture doc.
[6c0d426] politeiad: Add legacypoliteia convert cmd.
[94dd965] mysql: Fix column name bug.
[b749291] tstore: Add tstore client init function.
[65bee18] mysql: Fix InsertUser identity table bug.
[321813e] politeiad: Add tlog package.
[af61db4] chore: Update github actions.
[18491bc] pi: Fix min start date setting bug.
[cff2406] politeiawww: Fix csrf error check bug.
[2a35645] pi: Fix plugin setting error messages.
[3830b89] comments: Fix fsck bugs.
[69d4b66] Update trillian version (1.4.1).
[58c77b1] pivoter: Correct unix build tags.
[bf02cf0] build: Drop io/ioutil.
[68b24c4] pivoter: Support SIGTERM on Windows.
[9446fc2] multi: Improve identity logging.
[950620c] mysql: Improve error handling.
[8eaa621] pivoter: Cosolidate config error reporting.
[2af8a2a] politeiad: Remove leveldb tstore config option.
[ca6fdfe] tstorebe/store: Allow put overwrites.
[67afd49] tstorebe: Improve fsck logging and docs.
[aea0011] comments: Fix empty comments bug.
[9366695] ticketvote: Add the timestamp to the vote summary.
[6f6bcc0] ticketvote: Move inventory cache to db.
[e5381ad] ticketvote: Move summaries cache to db.
[87860ed] ticketvote: Move runoff vote subs cache to db.
[34adbcb] ticketvote: Implement fsck.
[58d30e1] politeiawww: Remove legacy websockets.
[a893055] Cleanup git backend packages.
[a8bab40] politeiawww: Cleanup legacy packages.
[c1d6bbc] legacypoliteia: Add import command.
[d4ade66] Package and deadcode cleanup
[c196b7f] legacypoliteia: Handle trillian edge case failure.
[cae9d73] tstore: Improve blobs not found error.
[cba058e] dbutil: Improve migrate cmd.
[5bd85d2] Bump version to v1.4.0.
[ae75b0c] multi: Go 1.19 comment formatting.
[3237f4c] version: Support single override and add git hash.
[5e4c32a] build: Updates for Go 1.19.
[cf41fe8] sessions: Del expired sessions on startup.
[bc06896] sessions: Add db tests.
[ec4a9c8] dbutil: Fix mysql flag bug.
[35c283d] dbutil: Update dump cmd.
[be5a17f] tstore: Freeze trillian trees.
Code Contributors (alphabetical order)
- Amir Massarwa (amass01)
- Dave Collins (davecgh)
- Luke Powell (lukebp)