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

chore(deps): bump github.com/centrifugal/centrifuge from 0.33.6 to 0.34.0 in the go_modules group across 1 directory #118

Merged
merged 1 commit into from
Jan 25, 2025

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 20, 2025

Bumps the go_modules group with 1 update in the / directory: github.com/centrifugal/centrifuge.

Updates github.com/centrifugal/centrifuge from 0.33.6 to 0.34.0

Release notes

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

v0.34.0 💻✨🔮✨💻

Centrifuge v0.34.0 aimed to be the base for Centrifugo v6 which was recently released. That's why a new release of Centrifuge contains notable improvements, new features and some breaking changes (nothing dramatic, should be super-simple to adopt, marked with ⚠️ below).

Support for sharded PUB/SUB in Redis Cluster

Support for sharded PUB/SUB in Redis Cluster. Please carefully read a comment for RedisBrokerConfig.NumShardedPubSubPartitions – the feature, while can be a great performance booster in Redis Cluster, may be really niche at the same time since it does not come for free and requires careful consideration before enabling.

The thing is that it reduces the number of shards in Redis Cluster to NumShardedPubSubPartitions number, and maintains a separate connection with each partition for effective PUB/SUB and guarantee that Centrifuge properly works with Redis Cluster shards.

See also addition discussion in issues/228 and information in Centrifugo release post.

Leverage Redis replicas

It's now possible to utilize Redis replicas in Redis cluster and Redis Sentinel setups to delegate channel subscriptions to them and delegate reading presence to them. To enable use RedisShardConfig.ReplicaClientEnabled and RedisBrokerConfig.SubscribeOnReplica/RedisPresenceManagerConfig.ReadFromReplica options.

Using replicas may help you staying on lower resources if you already have HA Redis setup!

Any Redis setup via address string

Possibility to use Redis address with special schemes redis+cluster:// and redis+sentinel:// so that it's now possible to fully configure any Redis configuration by using a single string.

Examples for single Redis, Redis Cluster, Redis Sentinel:

redis://user:[email protected]:6379/0
redis+cluster://127.0.0.1:7000
redis+sentinel://localhost:26379?sentinel_master_name=mymaster

Channel namespace resolution for metrics

Now channel namespace resolution of metrics (achievable using GetChannelNamespaceLabel func) works for all metrics related to channels. Internally we added Centrifuge-level cache to speed up getting the channel namespace label, but still please keep GetChannelNamespaceLabel fast since Centrifuge cache expires from time to time.

⚠️ Options ChannelNamespaceLabelForTransportMessagesReceived and ChannelNamespaceLabelForTransportMessagesSent were removed to simplify channel namespace resolution configuration – it will just work for all metrics once GetChannelNamespaceLabel func provided in the configuration.

Redis benchmark tool

New Redis benchmark tool allows to put Centrifuge specific load on Redis setup.

Headers emulation

Centrifuge now has headers emulation support. See ConnectEvent.Headers.

In Centrifugo v6 this field is used to transfer headers natively in proxy requests to the backend, but when using Centrifuge library it's up to developer to decide how to use the headers map.

New metrics

Added a bunch of new useful metrics. Like client connections inflight and client subscriptions inflight. Those may give you great observability insights previously missing.

⚠️ Centrifuge now moved metrics related metrics to MetricsConfig struct, it may require developer to update how Centrifuge config is created.

... (truncated)

Commits

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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the go_modules group with 1 update in the / directory: [github.com/centrifugal/centrifuge](https://github.com/centrifugal/centrifuge).


Updates `github.com/centrifugal/centrifuge` from 0.33.6 to 0.34.0
- [Release notes](https://github.com/centrifugal/centrifuge/releases)
- [Changelog](https://github.com/centrifugal/centrifuge/blob/master/changelog.md)
- [Commits](centrifugal/centrifuge@v0.33.6...v0.34.0)

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

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot requested a review from a team as a code owner January 20, 2025 06:42
@dependabot dependabot bot added the dependencies Dependency updates label Jan 20, 2025
Copy link
Contributor

Manual Tests

ℹ️ Remember to ask team members to perform manual tests and to assign tested label after testing.

Copy link
Contributor

github-actions bot commented Jan 20, 2025

Manual Tests

💚 Manual testing by @wregulski resulted in success.

@wregulski wregulski added the tested PR was tested by a team member label Jan 25, 2025
@wregulski wregulski merged commit e6d9ef6 into main Jan 25, 2025
7 of 9 checks passed
@wregulski wregulski deleted the dependabot/go_modules/main/go_modules-8d298d5203 branch January 25, 2025 19:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Dependency updates tested PR was tested by a team member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant