aboutsummaryrefslogtreecommitdiffstats
path: root/actioncable/lib/action_cable/connection/base.rb
Commit message (Collapse)AuthorAgeFilesLines
* Cable message encodingJeremy Daer2016-03-311-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.
* Merge pull request #23992 from matthewd/em-optionMatthew Draper2016-03-041-2/+2
|\ | | | | Support faye-websocket + EventMachine as an option
| * Support faye-websocket + EventMachine as an optionMatthew Draper2016-03-021-2/+2
| |
* | Merge pull request #23976 from danielrhodes/enhancement/ac-ping-to-message-typeMatthew Draper2016-03-021-5/+5
|\ \ | |/ |/| | | ActionCable: Add a "welcome" and "ping" message type
| * Make ping into a message typeDaniel Rhodes2016-03-011-1/+1
| | | | | | | | | | | | | | | | This change makes ping into a message type, which makes the whole protocol a lot more consistent. Also fixes hacks on the client side to make this all work.
| * Added welcome message type and fix test hacksDaniel Rhodes2016-03-011-4/+4
| |
* | Use AS::Executor / AS::Reloader to support reloading in ActionCableMatthew Draper2016-03-021-2/+3
|/
* Merge pull request #23813 from lifo/faye-websocketDavid Heinemeier Hansson2016-02-231-1/+8
|\ | | | | Improve Action Cable reconnection reliability
| * Confirm connection monitor subscription on openPratik Naik2016-02-231-1/+8
| |
* | Full Action Cable documentation read throughJon Moss2016-02-171-9/+9
|/ | | | | | | | | 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]
* Fix grammar `a` to `an` [ci skip]Ryuta Kamizono2016-02-131-1/+1
|
* Merge remote-tracking branch 'origin/master' into actioncable_loggingkp2016-02-101-1/+1
|\
| * Fix arguments to on_closeMatthew Draper2016-01-301-1/+1
| |
| * Revert "Revert "Eliminate the EventMachine dependency""Matthew Draper2016-01-301-12/+20
| |
| * Revert "Eliminate the EventMachine dependency"David Heinemeier Hansson2016-01-271-20/+12
| |
* | Logs successful and invalid connections separatelykp2016-02-101-8/+12
| |
* | adds debug logging to actioncable connectkp2016-01-261-2/+12
|/
* Import the relevant portions of faye-websocketMatthew Draper2016-01-241-12/+20
| | | | (as adapted to use concurrent-ruby / nio4r instead of eventmachine)
* Fix code review commentsJon Moss2016-01-181-1/+1
| | | | | | | - 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-1/+1
|
* Adapterize ActionCable storage and extract behaviorJon Moss2016-01-181-1/+1
|
* 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 ```
* [ActionCable] remove not needed protected call and newlinesJan Habermann2015-12-251-8/+1
|
* Remove warnings from actioncableArun Agrawal2015-12-171-1/+3
| | | | Warnings coming from code and test are removed
* Get ready to merge into RailsDavid Heinemeier Hansson2015-12-141-0/+219