aboutsummaryrefslogtreecommitdiffstats
path: root/actioncable/lib/action_cable/channel
Commit message (Collapse)AuthorAgeFilesLines
* Cable message encodingJeremy Daer2016-03-312-14/+24
| | | | | | | | | | | | | | | | | | | * Introduce a connection coder responsible for encoding Cable messages as WebSocket messages, defaulting to `ActiveSupport::JSON` and duck- typing to any object responding to `#encode` and `#decode`. * Consolidate encoding responsibility to the connection. No longer explicitly JSON-encode from channels or other sources. Pass Cable messages as Hashes to `#transmit` and rely on it to encode. * Introduce stream encoders responsible for decoding pubsub messages. Preserve the currently raw encoding, but make it easy to use JSON. Same duck type as the connection encoder. * Revert recent data normalization/quoting (#23649) which treated `identifier` and `data` values as nested JSON objects rather than as opaque JSON-encoded strings. That dealt us an awkward hand where we'd decode JSON strings… or not, but always encode as JSON. Embedding JSON object values directly is preferably, no extra JSON encoding, but that should be a purposeful protocol version change rather than ambiguously, inadvertently supporting multiple message formats.
* Keep logging in the ActionCable::Channel::BaseRafael Mendonça França2016-03-302-41/+6
| | | | | | To move Action Cable logging to a LoggingSubscriber we need to pass the log tags in the notification payload since Action Cable logging use the Channel instance to tag the logs.
* Add AS::Notifications and LogSubscriber to ActionCable::ChannelMatthew Wear2016-03-042-8/+56
| | | | | This commit adds ActiveSupport::Notifications instrumentation hooks and a LogSuscriber to ActionCable::Channel::Base.
* Support faye-websocket + EventMachine as an optionMatthew Draper2016-03-022-2/+2
|
* Merge pull request #23811 from iamvery/string-channelDavid Heinemeier Hansson2016-02-281-0/+1
|\ | | | | Ensure actioncable behaves as expected with non-string queues
| * Convert stream broadcasting to a stringJay Hayes2016-02-241-0/+1
| | | | | | | | | | | | | | ActionCable does some things behind the scenes that expects these "broadcasting"s or "channel"s to be strings. However it's not immediately obvious that the value must be a string. So adding this conversion ensures things work as expected.
* | Add small Action Cable documentation fixesHayley Anderson2016-02-272-2/+2
|/ | | | | * Fix typos/grammar errors * Make capitalization/naming consistent
* Merge pull request #23668 from maclover7/cable-docsRafael França2016-02-222-17/+17
|\ | | | | Full Action Cable documentation read through
| * Full Action Cable documentation read throughJon Moss2016-02-172-17/+17
| | | | | | | | | | | | | | | | | | This PR checks all active Action Cable documentation for typos and other fixes. It aims to make sure that when Rails 5 is released, that the Action Cable docs are up to snuff with the other documentation included with Rails. [ci skip]
* | Fixed typoChashmeet Singh2016-02-211-1/+1
| |
* | Truncate ActionCable broadcast message to 300 charsJankees van Woezik2016-02-181-1/+1
|/ | | | | | When running the ActionCable server in development I get a lot of output in my logs, this commit sets a maximum length of 300 characters for a broadcast log message.
* [ci skip] Several ActionCable documentation updates:Nick Quaranto2016-02-022-24/+35
| | | | | | | | * Properly indent code sample in ActionCable::Channel::Streams * Add a doc comment for #stop_all_streams * Reformat + add <tt> blocks around code references in ActionCable::Base docs * Clarify and a little better grammar on ActionCable::RemoteConnections * Correct indentation and clean up ActionCable::Server::Broadcasting code sample
* Revert "Revert "Eliminate the EventMachine dependency""Matthew Draper2016-01-302-3/+3
|
* Revert "Eliminate the EventMachine dependency"David Heinemeier Hansson2016-01-272-3/+3
|
* Using a hacked faye-websocket, drop EventMachineMatthew Draper2016-01-242-3/+3
|
* Normalize on no arguments for the success callbackMatthew Draper2016-01-241-1/+1
|
* Fix code review commentsJon Moss2016-01-181-3/+3
| | | | | | | - adapter -> pubsub (re)rename internally - Change variable names to match method names - Add EventMachine `~> 1.0` as a runtime dependency of ActionCable - Refactor dependency loading for adapters
* Pull the action methods directly onto the adapterMatthew Draper2016-01-181-4/+4
|
* Adapterize ActionCable storage and extract behaviorJon Moss2016-01-181-2/+2
|
* Revert "Merge pull request #22977 from rails/revert-22934-master"David Heinemeier Hansson2016-01-161-1/+1
| | | | | This reverts commit d0393fccffc118a5de37654aa222774b66123393, reversing changes made to 3b7ccadfc1c8dfec61af898167e1300b17f5cf25.
* Revert "Move async execution from celluloid to concurrent-ruby"David Heinemeier Hansson2016-01-081-1/+1
|
* Move async execution from celluloid to concurrent-rubyMike Perham2016-01-051-1/+1
| | | | | | | | | | | | | | This removes 8 runtime gem dependencies from Rails: ``` Using hitimes 1.2.3 Using timers 4.1.1 Using celluloid-essentials 0.20.5 Using celluloid-extras 0.20.5 Using celluloid-fsm 0.20.5 Using celluloid-pool 0.20.5 Using celluloid-supervision 0.20.5 Using celluloid 0.17.2 ```
* [ci skip] Fix typoAkshay Vishnoi2015-12-181-1/+1
|
* Remove warnings from actioncableArun Agrawal2015-12-171-0/+3
| | | | Warnings coming from code and test are removed
* Get ready to merge into RailsDavid Heinemeier Hansson2015-12-146-0/+515