You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: misc/release/notes.md
+18-7Lines changed: 18 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,20 +8,31 @@ For details, go to the [Centrifugo documentation site](https://centrifugal.dev).
8
8
9
9
## What's changed
10
10
11
+
This release **has a potential breaking change** in the Redis Cluster case where users try forming a Centrifugo cluster consisting of nodes with different Centrifugo versions (older than 6.6.0 and 6.6.0+). See details in the **Fixes** section below. We believe this scenario is very rare, and the risk of causing issues for anyone is minimal. The benefit is supporting ElastiCache Serverless Redis out of the box without extra options.
12
+
11
13
### Improvements
12
14
13
-
* Add `use_existing_consumer` option for NATS async consumer by @b43[#1074](https://github.com/centrifugal/centrifugo/pull/1074)
14
-
* Support for grpc `static_metadata`, tweak http `static_headers` behaviour to match the doc [#1076](https://github.com/centrifugal/centrifugo/pull/1076)
15
-
* New `publication_data_format` channel global and namespace option [#1085](https://github.com/centrifugal/centrifugo/pull/1085)
16
-
* Better performance: Eliminate allocations under active batching scenario coming from Prometheus metrics. See [centrifugal/centrifuge#530](https://github.com/centrifugal/centrifuge/pull/530)
* We are actively working on a new Centrifugo Helm chart v13 major release. See [centrifugal/helm-charts#136](https://github.com/centrifugal/helm-charts/pull/136). The new chart will support new Kubernetes functionality, will have better docs, and more examples and tutorials for Google and AWS managed Kubernetes services. The plan is to release one more version of the v12 chart with Centrifugo v6.6.0 as the base `appVersion` and then move on to the v13 chart. Note that users of the v12 Helm chart will be able to use newer Centrifugo versions without any issues, as chart versioning is independent of Centrifugo versioning (done through the `appVersion`). However, new updates, fixes for chart functionality, and documentation will be released only for the v13 chart.
16
+
* Performance: optimizations for allocation efficiency under a batched message writing scenario and when publishing the message into channel.
18
17
19
18
### Fixes
20
19
21
-
* This release addresses [#1083](https://github.com/centrifugal/centrifugo/issues/1083) by introducing `publication_data_format` mentioned above.
20
+
* Fix slot issues when publishing with history to ElastiCache Serverless Redis. See the report in [#1087](https://github.com/centrifugal/centrifugo/issues/1087) and the fix in [centrifugal/centrifuge#541](https://github.com/centrifugal/centrifuge/pull/541). Centrifugo was not previously tested with ElastiCache Serverless Redis. The [finding](https://github.com/centrifugal/centrifugo/issues/1087#issuecomment-3667377731) that Serverless ElastiCache requires using hashtags in channels to follow the same slots as normal data structure keys goes beyond the Redis Cluster specification (where channels are not related to hash slots until using sharded PUB/SUB). The initial thought was to introduce a separate option to support this behavior, but after further consideration, Centrifugo will always use hashtags for channels in the Redis Cluster case. This means we have incompatible changes in the internal Redis protocol: nodes of different Centrifugo versions (<6.6.0 and 6.6.0+) will not work together in one cluster. This scenario is not common at all, and we have never encouraged such a setup. Moreover, when combined with the Redis Cluster condition (under 1% of setups), the chance of causing issues for someone is minimal. During rollout, message loss can happen, but only on the PUB/SUB layer, which is at-most-once anyway. History streams and recovery logic will work as usual and will prevent client state corruption.
22
21
23
22
### Miscellaneous
24
23
25
24
* This release is built with Go 1.25.5.
26
25
* Updated dependencies.
27
-
* See also the corresponding [Centrifugo PRO release](https://github.com/centrifugal/centrifugo-pro/releases/tag/v6.5.2).
26
+
* See also the corresponding [Centrifugo PRO release](https://github.com/centrifugal/centrifugo-pro/releases/tag/v6.6.0).
27
+
28
+
### Happy New Year
29
+
30
+
We would like to thank the Centrifugo community for staying with us throughout 2025. Your feedback, bug reports, discussions, and contributions help drive the project forward and make Centrifugo better with every release.
31
+
32
+
In 2025, we released Centrifugo v6 and, throughout the year, built important functionality on top of that foundation. Major highlights are: new async consumers from popular queue systems, server-side publication filtering, support for RFC 8441 (WebSocket over HTTP/2). A new real-time SDK for C# was introduced. Centrifugo reached 7k+ real installations, usage of our SDKs grew significantly according to CDN stats ([example](https://www.jsdelivr.com/package/npm/centrifuge?tab=stats)), and we saw more and more projects choosing Centrifugo as their real-time messaging solution. For the first time, we saw a local Go meetup where 2 out of 4 talks were about projects using Centrifugo. This is a great sign of growing adoption. We continue to receive consistently positive feedback from developers, highlighting Centrifugo as a reliable, efficient, and easy-to-use real-time messaging server.
33
+
34
+
We are looking forward to getting even more things done in 2026 and continuing to improve Centrifugo and the real-time messaging ecosystem.
35
+
36
+
Happy New Year to everyone, and best wishes for a successful year ahead! 🎄 May the Centrifugal force be with you! 🖲
0 commit comments