Action Cable CHANGELOG(v7.1.0.rc1)
Delegate StubConnection#pubsub
and StubConnection#config
to ActionCable.server
by julianfssen · Pull Request #48706 · rails/rails
ActionCable.server
シングルトンを参照する@server
インスタンス変数をActionCable::Channel::ConnectionStub
に追加。これにより、
pubsub
メソッドとconfig
のメソッドの呼び出しをサーバーに委譲できるようになる。これにより、pubsub
(stop_stream_for
など)を呼び出すチャネルロジックのテスト時に発生するNoMethodError
エラーが修正される。Julian Foo
同Changelogより
参考: Rails API ActionCable::Channel::ConnectionStub
Add health check on standalone Action Cable by JoeDupuis · Pull Request #48222 · rails/rails
指定のヘルスチェックRackアプリを指定のパスにマウントする
health_check_path
とhealth_check_application
の設定を追加。
Action Cableをスタンドアロンでマウントするときに有用。Joé Dupuis
同CHANGELOGより
参考: 週刊Railsウォッチ20230621: Action Cableに単独のヘルスチェックが追加された
Introduce capture_emails
and capture_broadcasts
by ghiculescu · Pull Request #48798 · rails/rails
capture_broadcasts
テストヘルパーを導入。ブロック内の全メッセージブロードキャストを返す。
messages = capture_broadcasts("test") do ActionCable.server.broadcast "test", { message: "one" } ActionCable.server.broadcast "test", { message: "two" } end assert_equal 2, messages.length assert_equal({ "message" => "one" }, messages.first) assert_equal({ "message" => "two" }, messages.last)
Alex Ghiculescu
同CHANGELOGより
参考: 週刊Railsウォッチ20230809: 副作用のないcapture_emailsとcapture_broadcastsテストヘルパーを追加
feat: improve assert_broadcast_on
error message by StephaneRob · Pull Request #47204 · rails/rails
assert_broadcast_on
を使っているときのエラーメッセージにブロードキャストメッセージを表示するようになった。Stéphane Robino
同CHANGELOGより
参考: Rails API assert_broadcast_on
-- ActionCable::TestHelper
Allows passing sub protocols with ActionCable by zedtux · Pull Request #41415 · rails/rails
Action Cableクライアントで、サーバーに任意のデータを渡すサブプロトコルをサポートするようになった。
const consumer = ActionCable.createConsumer() consumer.addSubProtocol('custom-protocol') consumer.connect()
以下も参照。
Guillaume Hain
同CHANGELOGより
Restore Action Cable Redis pub/sub listener on connection failure by palkan · Pull Request #46562 · rails/rails
Redisのコネクションが喪失したときにRedisのpub/subアダプタが自動的に再接続されるようになった。
Vladimir Dementyev
同CHANGELOGより
参考: この修正はRails 7.0.5でリリース済みです。
Add ability to handle reconnects with the connected()
callback by mansakondo · Pull Request #45738 · rails/rails
connected()
コールバックに、再接続からの接続を区別するための{reconnected}
パラメーターを渡せるようになった。import consumer from "./consumer" consumer.subscriptions.create("ExampleChannel", { connected({reconnected}) { if (reconnected) { ... } else { ... } } })
Mansa Keïta
同CHANGELOGより
参考: 週刊Railsウォッチ20221011: Action Cableのconnected()
コールバックに再接続の制御を追加
Redis 5.0.0 compatibility by casperisfine · Pull Request #45856 · rails/rails
Redisアダプタがredis-rb 5.0互換になった。
redis-rb 3.xとの互換性は廃止された。
Jean Boussier
同CHANGELOGより
参考: この修正はRails 7.0.4でリリース済みです。
Anchor the Action Cable server's route by ghiculescu · Pull Request #45490 · rails/rails
Action Cableサーバーが
anchor: true
でマウントされるようになった。これにより、
/cable
で始まるルーティングもAction Cableと衝突しなくなる。Alex Ghiculescu
同CHANGELOGより
参考: この修正はRails 7.0.4でリリース済みです。
参考: 週刊Railsウォッチ20220704: Action Cableサーバーをanchor: true
でマウントするようになった
Send disconnect message during remote disconnect by palkan · Pull Request #45072 · rails/rails
再接続戦略が指定されている場合に、
ActionCable.server.remote_connections.where(...).disconnect
がコネクション切断前にdisconnect
メッセージを送信するようになった(デフォルトはtrue
)。Vladimir Dementyev
同CHANGELOGより
Add Action Cable command callbacks at the connection level by palkan · Pull Request #44696 · rails/rails
ActionCable::Connection::Base
.にコマンドコールバックが追加された。クライアントが受信した任意のコマンドの実行前、実行後、または実行前後に呼び出される
before_command
、after_command
、around_command
を定義可能になる。Vladimir Dementyev
同CHANGELOGより
以前の変更については7-0-stableのCHANGELOGを参照。
関連記事
Rails 7.1に入る主要な機能まとめ(2)error_highlight対応、routes --grepほか(翻訳)
The post Rails 7.1.0 Action Cable CHANGELOG(翻訳) first appeared on TechRacho.
概要
MITライセンスに基づいて翻訳・公開いたします。
7.1.0リリーズ後に更新があれば反映します。
参考: Action Cable の概要 - Railsガイド