Upgrading from 1.3.x to 1.4.0

This document contains only the changes compared to v1.3.x releases. For the new features see the release notes.

Upgrade process

You can upgrade Ruby gems and Go server in any order. However, if you want to migrate to the new broadcasting architecture, you should follow the steps described below.

New broadcasting architecture

AnyCable-Go v1.4 ships with a new broadcasting architecture aimed to provide better consistency for Action Cable applications.

If you were using the Redis broadcast adapter, you can migrate to the new Redis X adapter by following the steps below:

  • Make sure you use Redis 6.2+.

  • Configure AnyCable-Go to use both redis and redisx adapters as well as redis pubsub (if you have more than one AnyCable-Go instance):

    ANYCABLE_BROADCAST_ADAPTER=redisx,redis \
    ANYCABLE_PUBSUB=redis
    anycable-go
    
    # or
    
    anycable-go --broadcast_adapter=redisx,redis --pubsub=redis
  • Upgrade Rails application to use the redisx adapter.

  • Remove the redis adapter from the AnyCable-Go configuration.

AnyCable-Go

Disconnect mode

We introduce new configuration option, --disconnect_mode, in favor of --disable_disconnect. The new option has three possible values: "auto" (default), "never" and "always". If you used --disable_disconnect, you should either switch to --disconnect_mode=never or remove the option and use the default one depending on your use case.

See documentation for more details.