Skip to content

Commit

Permalink
Prepare v5.4.3 release notes (#868)
Browse files Browse the repository at this point in the history
  • Loading branch information
FZambia authored Jul 30, 2024
1 parent 586eb99 commit 8c9971d
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 14 deletions.
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ require (
github.com/rs/zerolog v1.33.0
github.com/spf13/cobra v1.8.1
github.com/stretchr/testify v1.9.0
github.com/twmb/franz-go v1.17.0
github.com/twmb/franz-go/pkg/kadm v1.12.0
github.com/twmb/franz-go v1.17.1
github.com/twmb/franz-go/pkg/kadm v1.13.0
github.com/twmb/franz-go/pkg/kmsg v1.8.0
github.com/valyala/fasttemplate v1.2.2
github.com/vmihailenco/msgpack/v5 v5.4.1
Expand Down
4 changes: 4 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -190,8 +190,12 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/twmb/franz-go v1.17.0 h1:hawgCx5ejDHkLe6IwAtFWwxi3OU4OztSTl7ZV5rwkYk=
github.com/twmb/franz-go v1.17.0/go.mod h1:NreRdJ2F7dziDY/m6VyspWd6sNxHKXdMZI42UfQ3GXM=
github.com/twmb/franz-go v1.17.1 h1:0LwPsbbJeJ9R91DPUHSEd4su82WJWcTY1Zzbgbg4CeQ=
github.com/twmb/franz-go v1.17.1/go.mod h1:NreRdJ2F7dziDY/m6VyspWd6sNxHKXdMZI42UfQ3GXM=
github.com/twmb/franz-go/pkg/kadm v1.12.0 h1:I8P/gpXFzhl73QcAYmJu+1fOXvrynyH/MAotr2udEg4=
github.com/twmb/franz-go/pkg/kadm v1.12.0/go.mod h1:VMvpfjz/szpH9WB+vGM+rteTzVv0djyHFimci9qm2C0=
github.com/twmb/franz-go/pkg/kadm v1.13.0 h1:bJq4C2ZikUE2jh/wl9MtMTQ/kpmnBgVFh8XMQBEC+60=
github.com/twmb/franz-go/pkg/kadm v1.13.0/go.mod h1:VMvpfjz/szpH9WB+vGM+rteTzVv0djyHFimci9qm2C0=
github.com/twmb/franz-go/pkg/kmsg v1.8.0 h1:lAQB9Z3aMrIP9qF9288XcFf/ccaSxEitNA1CDTEIeTA=
github.com/twmb/franz-go/pkg/kmsg v1.8.0/go.mod h1:HzYEb8G3uu5XevZbtU0dVbkphaKTHk0X68N5ka4q6mU=
github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
Expand Down
2 changes: 1 addition & 1 deletion internal/swaggerui/statik.go

Large diffs are not rendered by default.

17 changes: 6 additions & 11 deletions misc/release/notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,17 @@ For details, go to the [Centrifugo documentation site](https://centrifugal.dev).

## What's changed

Centrifugo v5.4.2 comes with useful improvements and fixes.

### Improvements

* [Raw mode for Nats broker](https://centrifugal.dev/docs/server/engines#nats-raw-mode) – in this mode Centrifugo just consumes core Nats subjects and does not expect any Centrifugo internal wrapping. Clients just get a raw payload from Nats, which may be useful if you have Nats and want to expose subjects to client-side real-time connections with the help of Centrifugo.
* Option to [use wildcard subscriptions](https://centrifugal.dev/docs/server/engines#nats_allow_wildcards) with Nats broker. allows subscribing to [wildcard Nats subjects](https://docs.nats.io/nats-concepts/subjects#wildcards) (containing `*` and `>` symbols). This way client can receive messages from many channels while only having a single subscription.
* Support configuring [client TLS in GRPC proxy](https://centrifugal.dev/docs/server/proxy#proxy_grpc_tls), here we started migration to [unified TLS config object](https://centrifugal.dev/docs/server/tls#unified-tls-config-object) – using it here for configuring GRPC client TLS. See more details about revisiting TLS configuration in [this issue](https://github.com/centrifugal/centrifugo/issues/831). TLS object is also supported for GRPC client in [granular proxy configuration](https://centrifugal.dev/docs/server/proxy#defining-a-list-of-proxies), see `grpc_tls` field.
* Support configuring [client TLS in Nats broker](https://centrifugal.dev/docs/server/engines#nats_tls) (for Nats client). Also uses unified TLS config object.
* [RPC ping extension](https://centrifugal.dev/docs/server/configuration#enable-rpc-ping-extension) to check if connection is alive at any point, measure RTT time.
* New histogram metric [centrifugo_client_ping_pong_duration_seconds](https://centrifugal.dev/docs/server/observability#centrifugo_client_ping_pong_duration_seconds) to track the duration of ping/pong – i.e. time between sending ping to client and receiving pong from client.
* More descriptive JWT check error messages [#838](https://github.com/centrifugal/centrifugo/pull/838).
* Publish Centrifugo Protobuf definitions to [Buf Schema Registry](https://buf.build/product/bsr) [#863](https://github.com/centrifugal/centrifugo/pull/863). This means that to use Centrifugo GRPC APIs it's now possible to depend on pre-generated Protobuf definitions instead of manually generating them from the schema file.
* [apiproto](https://buf.build/centrifugo/apiproto/docs/main:centrifugal.centrifugo.api) - definitions of server GRPC API
* [unistream](https://buf.build/centrifugo/unistream/docs/main:centrifugal.centrifugo.unistream) - definitions of unidirectional GRPC stream
* [proxyproto](https://buf.build/centrifugo/proxyproto/docs/main:centrifugal.centrifugo.proxy) - definitions of proxy GRPC API
* New integer option `grpc_api_max_receive_message_size` (number of bytes). If set to a value > 0 allows setting `grpc.MaxRecvMsgSize` option for GRPC API server. The option controls the max size of message GRPC server can receive. By default, GRPC library uses 4194304 bytes (4MB).

### Fixes

* Fix occasional deadlock leading to memory leak, the deadlock was introduced in Centrifugo v5.3.2, see [#856](https://github.com/centrifugal/centrifugo/issues/856). While fixing an issue we've also found a scenario in which the number of clients and subscribers could be incorrect – subscribers could go away, but the subscriber counter is not decremented. Fixed this alongside the deadlock, both issues do not reproduce with our test load anymore.
* Fix non-working `allow_presence_for_subscriber` option to enable join/leave events when requested by client, see [#849](https://github.com/centrifugal/centrifugo/issues/849)
* Fix occasional `panic: DedicatedClient should not be used after recycled` panic which could happen under load during problems with Redis connection.

### Miscellaneous

Expand Down

0 comments on commit 8c9971d

Please sign in to comment.