From bde7c1fd8ca040f61f339c96c6589d57feca3dd9 Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Fri, 28 Jan 2022 14:13:36 +0000 Subject: Version 0.6 (#2117) * Bump version, release notes * Update changelog * Update changelog --- CHANGES.md | 28 ++++++++++++++++++++++++++++ internal/version.go | 4 ++-- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 94edc628..95e24de1 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,33 @@ # Changelog +## Dendrite 0.6.0 (2022-01-28) + +### Features + +* NATS JetStream is now used instead of Kafka and Naffka + * For monolith deployments, a built-in NATS Server is embedded into Dendrite or a standalone NATS Server deployment can be optionally used instead + * For polylith deployments, a standalone NATS Server deployment is required + * Requires the version 2 configuration file — please see the new `dendrite-config.yaml` sample config file + * Kafka and Naffka are no longer supported as of this release +* The roomserver is now responsible for fetching missing events and state instead of the federation API + * Removes a number of race conditions between the federation API and roomserver, which reduces duplicate work and overall lowers CPU usage +* The roomserver input API is now strictly ordered with support for asynchronous requests, smoothing out incoming federation significantly +* Consolidated the federation API, federation sender and signing key server into a single component + * If multiple databases are used, tables for the federation sender and signing key server should be merged into the federation API database (table names have not changed) +* Device list synchronisation is now database-backed rather than using the now-removed Kafka logs + +### Fixes + +* The code for fetching missing events and state now correctly identifies when gaps in history have been closed, so federation traffic will consume less CPU and memory than before +* The stream position is now correctly advanced when typing notifications time out in the sync API +* Event NIDs are now correctly returned when persisting events in the roomserver in SQLite mode + * The built-in SQLite was updated to version 3.37.0 as a result +* The `/event_auth` endpoint now strictly returns the auth chain for the requested event without loading the room state, which should reduce spikes in memory usage +* Filters are now correctly sent when using federated public room directories (contributed by [S7evinK](https://github.com/S7evinK)) +* Login usernames are now squashed to lower-case (contributed by [BernardZhao](https://github.com/BernardZhao)) +* The logs should no longer be flooded with `Failed to get server ACLs for room` warnings at startup +* Backfilling will now attempt federation as a last resort when trying to retrieve missing events from the database fails + ## Dendrite 0.5.1 (2021-11-16) ### Features diff --git a/internal/version.go b/internal/version.go index 88123693..f09daabd 100644 --- a/internal/version.go +++ b/internal/version.go @@ -16,8 +16,8 @@ var build string const ( VersionMajor = 0 - VersionMinor = 5 - VersionPatch = 1 + VersionMinor = 6 + VersionPatch = 0 VersionTag = "" // example: "rc1" ) -- cgit v1.2.3