Skip to content

Latest commit

 

History

History
83 lines (54 loc) · 2.6 KB

CHANGELOG.md

File metadata and controls

83 lines (54 loc) · 2.6 KB

Rails 5.0.0 (June 30, 2016)

  • Fix development reloading support: new cable connections are now correctly dispatched to the reloaded channel class, instead of using a cached reference to the originally-loaded version.

    Matthew Draper

  • WebSocket protocol negotiation.

    Introduces an Action Cable protocol version that moves independently of and, hopefully, more slowly than Action Cable itself. Client sockets negotiate a protocol with the Cable server using WebSockets' native subprotocol support:

    If they can't negotiate a compatible protocol (usually due to upgrading the Cable server with a browser still running old JavaScript) then the client knows to disconnect, cease retrying, and tell the app that it hit a protocol mismatch.

    This allows us to evolve the Action Cable message format, handshaking, pings, acknowledgements, and more without breaking older clients' expectations of server behavior.

    Daniel Rhodes

  • Pubsub: automatic stream decoding.

    stream_for @room, coder: ActiveSupport::JSON do |message|
      # `message` is a Ruby hash here instead of a JSON string
    

    The coder must respond to #decode. Defaults to coder: nil which skips decoding entirely.

    Jeremy Daer

  • Add ActiveSupport::Notifications to ActionCable::Channel.

    Matthew Wear

  • Safely support autoloading and class unloading, by preventing concurrent loads, and disconnecting all cables during reload.

    Matthew Draper

  • Ensure ActionCable behaves correctly for non-string queue names.

    Jay Hayes

  • Added em_redis_connector and redis_connector to ActionCable::SubscriptionAdapter::EventedRedis and added redis_connector to ActionCable::SubscriptionAdapter::Redis, so you can overwrite with your own initializers. This is used when you want to use different-than-standard Redis adapters, like for Makara distributed Redis.

    DHH

  • Support PostgreSQL pubsub adapter.

    Jon Moss

  • Remove EventMachine dependency.

    Matthew Draper

  • Remove Celluloid dependency.

    Mike Perham

  • Create notion of an ActionCable::SubscriptionAdapter. Separate out Redis functionality into ActionCable::SubscriptionAdapter::Redis, and add a PostgreSQL adapter as well. Configuration file for ActionCable was changed fromconfig/redis/cable.yml to config/cable.yml.

    Jon Moss

  • Added to Rails!

    DHH