Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump github.com/centrifugal/centrifuge from 0.25.0 to 0.28.0 #233

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Jan 23, 2023

Bumps github.com/centrifugal/centrifuge from 0.25.0 to 0.28.0.

Release notes

Sourced from github.com/centrifugal/centrifuge's releases.

v0.28.0

  • Centrifuge v0.28.0 comes with an updated Redis Engine implementation based on rueian/rueidis library. Allocation efficiency and throughput of Redis Broker and PresenceManager were improved in both standalone and Cluster Redis setups. See #262 and blog post Improving Centrifugo Redis Engine throughput and allocation efficiency with Rueidis Go library for the reasoning and numbers behind.
  • Work on a better observability and possibility to protect client protocol from misusing: Centrifuge now has CommandReadHandler and CommandProcessedHandler. These handlers are only available for client protocol v2, client protocol v1 will be removed soon. While it's not removed DisableProtocolVersion1 global var may be used to disable possibility for clients to connect to server with ProtocolVersion1.
  • Client now can't send infinite number of pongs to the server, only one pong after receiving ping is allowed
  • Client now can't send any command to the server after getting error in Connect command
  • Disconnect client if it sends async message (using Send method) to the server while MessageHandler not set
  • Possibility to dramatically reduce server CPU usage in case of sending many messages towards individual connections (it may be up to 5x reduction depending on message rate). This is possible with new options of ConnectReply: WriteDelay, ReplyWithoutQueue, MaxMessagesInFrame, QueueInitialCap which allow tweaking Centrifuge message write loop. See #270 for more details.
  • Several internal optimizations in client protocol to reduce memory allocations a bit.
  • More human-readable tracing logging output (especially in Protobuf protocol case). On the other hand, tracing log level is much more expensive now. We never assumed it will be used in production – so seems an acceptable trade-off.
  • Update centrifuge-js version in all examples
gorelease -base v0.27.2 -version v0.28.0

github.com/centrifugal/centrifuge

incompatible changes

(*Client).Handle: removed (*Client).HandleCommand: changed from func(*github.com/centrifugal/protocol.Command) bool to func(*github.com/centrifugal/protocol.Command, int) bool CommandReadHandler: changed from func(*Client, CommandReadEvent) to func(*Client, CommandReadEvent) error DefaultRedisBrokerPrefix: removed DefaultRedisConnectTimeout: removed DefaultRedisPresenceManagerPrefix: removed DefaultRedisPresenceTTL: removed DefaultRedisReadTimeout: removed DefaultRedisWriteTimeout: removed RedisBrokerConfig.PubSubNumWorkers: removed RedisShardConfig.IdleTimeout: removed RedisShardConfig.ReadTimeout: removed RedisShardConfig.TLSSkipVerify: removed RedisShardConfig.UseTLS: removed RedisShardConfig.WriteTimeout: removed

compatible changes

(*Node).OnCommandProcessed: added CommandProcessedEvent: added CommandProcessedHandler: added CommandReadEvent.CommandSize: added ConnectReply.MaxMessagesInFrame: added ConnectReply.QueueInitialCap: added ConnectReply.ReplyWithoutQueue: added ConnectReply.WriteDelay: added DisableProtocolVersion1: added DisconnectNotAvailable: added DisconnectPermissionDenied: added DisconnectTooManyErrors: added DisconnectTooManyRequests: added HandleReadFrame: added RedisShardConfig.ClientName: added RedisShardConfig.IOTimeout: added RedisShardConfig.SentinelClientName: added RedisShardConfig.SentinelTLSConfig: added </tr></table>

... (truncated)

Changelog

Sourced from github.com/centrifugal/centrifuge's changelog.

v0.28.0

  • Centrifuge v0.28.0 comes with an updated Redis Engine implementation based on rueian/rueidis library. Allocation efficiency and throughput of Redis Broker and PresenceManager were improved in both standalone and Cluster Redis setups. See #262 and blog post Improving Centrifugo Redis Engine throughput and allocation efficiency with Rueidis Go library for the reasoning and numbers behind.
  • Work on a better observability and possibility to protect client protocol from misusing: Centrifuge now has CommandReadHandler and CommandProcessedHandler. These handlers are only available for client protocol v2, client protocol v1 will be removed soon. While it's not removed DisableProtocolVersion1 global var may be used to disable possibility for clients to connect to server with ProtocolVersion1.
  • Client now can't send infinite number of pongs to the server, only one pong after receiving ping is allowed
  • Client now can't send any command to the server after getting error in Connect command
  • Disconnect client if it sends async message (using Send method) to the server while MessageHandler not set
  • Possibility to dramatically reduce server CPU usage in case of sending many messages towards individual connections (it may be up to 5x reduction depending on message rate). This is possible with new options of ConnectReply: WriteDelay, ReplyWithoutQueue, MaxMessagesInFrame, QueueInitialCap which allow tweaking Centrifuge message write loop. See #270 for more details.
  • Several internal optimizations in client protocol to reduce memory allocations a bit.
  • More human-readable tracing logging output (especially in Protobuf protocol case). On the other hand, tracing log level is much more expensive now. We never assumed it will be used in production – so seems an acceptable trade-off.
  • Update centrifuge-js version in all examples
gorelease -base v0.27.2 -version v0.28.0

github.com/centrifugal/centrifuge

incompatible changes

(*Client).Handle: removed (*Client).HandleCommand: changed from func(*github.com/centrifugal/protocol.Command) bool to func(*github.com/centrifugal/protocol.Command, int) bool CommandReadHandler: changed from func(*Client, CommandReadEvent) to func(*Client, CommandReadEvent) error DefaultRedisBrokerPrefix: removed DefaultRedisConnectTimeout: removed DefaultRedisPresenceManagerPrefix: removed DefaultRedisPresenceTTL: removed DefaultRedisReadTimeout: removed DefaultRedisWriteTimeout: removed RedisBrokerConfig.PubSubNumWorkers: removed RedisShardConfig.IdleTimeout: removed RedisShardConfig.ReadTimeout: removed RedisShardConfig.TLSSkipVerify: removed RedisShardConfig.UseTLS: removed RedisShardConfig.WriteTimeout: removed

compatible changes

(*Node).OnCommandProcessed: added CommandProcessedEvent: added CommandProcessedHandler: added CommandReadEvent.CommandSize: added ConnectReply.MaxMessagesInFrame: added ConnectReply.QueueInitialCap: added ConnectReply.ReplyWithoutQueue: added ConnectReply.WriteDelay: added DisableProtocolVersion1: added DisconnectNotAvailable: added DisconnectPermissionDenied: added DisconnectTooManyErrors: added DisconnectTooManyRequests: added HandleReadFrame: added RedisShardConfig.ClientName: added RedisShardConfig.IOTimeout: added </tr></table>

... (truncated)

Commits
  • 748bec8 update centrifuge-js version
  • ac44fd4 chnage disconnect for unusable conn, fix logging level
  • 5dd8d1b simplify redis example a bit
  • 40de54d fix benchmark panics due to changed writer behaviour
  • fbf0145 update protocol: fix decoding of large protocol messages
  • 363aca1 fix lint: remove non-actual test
  • 3ec7839 update changelog
  • 37cb154 changelog, use global var to disable protocol version 1
  • ec89833 Configure write delay and max messages in frame (#270)
  • 1ffb385 rename Config field to EnabledProtocolVersions, add test
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Jan 23, 2023
@dependabot dependabot bot force-pushed the dependabot/go_modules/github.com/centrifugal/centrifuge-0.28.0 branch from d5f8c7e to b91a7f3 Compare January 24, 2023 02:57
Bumps [github.com/centrifugal/centrifuge](https://github.com/centrifugal/centrifuge) from 0.25.0 to 0.28.0.
- [Release notes](https://github.com/centrifugal/centrifuge/releases)
- [Changelog](https://github.com/centrifugal/centrifuge/blob/master/changelog.md)
- [Commits](centrifugal/centrifuge@v0.25.0...v0.28.0)

---
updated-dependencies:
- dependency-name: github.com/centrifugal/centrifuge
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/go_modules/github.com/centrifugal/centrifuge-0.28.0 branch from b91a7f3 to b6d4133 Compare February 1, 2023 02:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file go Pull requests that update Go code
Projects
None yet
0 participants