| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
IO#close and IO#read across threads don't get along so well:
After T1 enters #read and releases the GVL, T2 can call #close on the
IO, thereby both closing the fd and freeing the buffer while T1 is using
them.
|
| |
| |
| |
| |
| | |
Different parts of concurrent-ruby's documentation make inconsistent
claims about how kill will behave. It doesn't do the thing we want.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before this patch, if you were to make a file edit in your Rails
application and you tried to load up the page, it would hang
indefinitely. The issue is that Active Record is trying to cleanup after
itself and clear all active connection, but Action Cable is still
holding onto a connection from the pool. To resolve this, we are now
shutting down the pubsub adapter before classes are reloaded, to avoid
this altogether (connection is being returned to the pool).
Credits to @skateman for discovering this bug. :)
|
| | |
|
| |
| |
| |
| | |
No deprecation, because it was never documented.
|
|\ \
| | |
| | |
| | |
| | |
| | | |
palkan/fix/actioncable-confirmation-race-condition
Avoid race condition on subscription confirmation
|
| | |
| | |
| | |
| | | |
initializing
|
| | | |
|
| |/
|/|
| |
| |
| | |
Otherwise, they can sometimes block, leading to reduced system
throughput.
|
| |
| |
| |
| | |
AC::Server::Base
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixes #23757.
Before this commit, even if `reject` was called in the `subscribe`
method for an Action Cable channel, all actions on that channel could
still be invoked. This calls a `return` if a rejected connection tries
to invoke any actions on the channel.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inserted spaces in the name of Rails components.
Since I was on it, also used PostgreSQL instead of Postgres
because albeit Postgres is an accepted alias, PostgreSQL is
the official name and the actual name of the adapter.
See
https://wiki.postgresql.org/wiki/ProjectName
with regard to PostgreSQL vs Postgres.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The current code base is not uniform. After some discussion,
we have chosen to go with double quotes by default.
|
| |
|
|\
| |
| |
| | |
Fix race condition in websocket stream write
|
| | |
|
|\ \
| | |
| | | |
Add ActiveSupport::Notifications hook to ActionCable::Server.broadcast
|
| | |
| | |
| | |
| | |
| | | |
This addition of this notification hook will give users better visibility
into the messages being sent over the PubSub adapter.
|
|\ \ \
| | | |
| | | | |
ActionCable, sometimes add_channel is not called.
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
remove needless comments
|
| | | | |
| | | | |
| | | | |
| | | | | |
Follow up to #25240.
|
| |_|_|/
|/| | | |
|
| | | | |
|
|/ / / |
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
Change comments to not exceed 80 characters
|
| | |
| | |
| | |
| | | |
Other generated files do keep to this, but action cable doesn't.
|
| | |
| | |
| | |
| | | |
[ci skip]
|
|\ \ \
| |/ /
|/| | |
Cable: Generate .js or .coffee files while generating channel as per the javascript engine of the application
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
javascript engine of the application
- Now we will detect what javascript engine user is using and based on
that we will generate either `.js` or `.coffee` version of the channel
file.
- This also needs a change in coffee-rails to override the `js_template`
method. Related PR https://github.com/rails/coffee-rails/pull/72.
- Currently coffee-rails gem sets
`config.app_generators.javascript_engine` to `:coffee` and using this
information we override the `js_template` to set the extension as
`.coffee` in coffee-rails gem.
- Using this approach, we can keep the `channel.js` and `channel.coffee`
files in the Rails repository itself.
- Additionally the `js_template` method can act as public interface for
coffee-rails gem to hook into and change the extension to `.coffee`
without maintaining the actual asset files.
[Prathamesh Sonpatki, Matthew Draper]
|
|/ /
| |
| | |
Method description improved to reflect little bit more complicated scenario when names are camel-cased.
|
|\ \
| |/
|/|
| |
| | |
Conflicts:
guides/source/configuring.md
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
| |
This is an engine living in action_cable/engine.rb, convention is to
call these things *::Engine.
Looking at thi git history looks like the current *::Railtie was just
an accident.
|
| |
|
|\
| |
| | |
Actioncable and Actionpack documentation typos [ci skip]
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
| |
* Use separate stream handler builders for easy override and testing.
* Fix worker pool execution that was silently failing since it only
expected connection receivers.
Sparked by code in #24162.
|