| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
These lines were lost in https://github.com/rails/rails/pull/26695/files#diff-e79a60dc6b85309ae70a6ea8261eaf95L192.
|
|\
| |
| | |
[ci-skip] Swap method and its alias, format doc
|
| | |
|
|/
|
|
| |
We hit when we skip the PostgreSQL adapter.
|
|\
| |
| | |
Allow the use of listen's 3.1.x branch.
|
|/
|
|
|
|
| |
When the initial evented monitor feature was written, the latest version of listen
was the 3.0.x series. Since then the listen project has moved on to the 3.1.x series.
This patch allows the use of the new versions.
|
|\
| |
| |
| |
| | |
chriscarter90/unmatched-constraint-routing-messages
Show an "unmatched constraints" error when params fail to match constraints
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Currently a misleading "missing required keys" error is thrown when a param
fails to match the constraints of a particular route. This commit ensures that
these params are recognised as unmatching rather than missing.
Note: this means that a different error message will be provided between
optimized and non-optimized path helpers, due to the fact that the former does
not check constraints when matching routes.
Fixes #26470.
|
| |
|
|\
| |
| | |
Fix issue with `cache_key` when the named timestamp column has value nil
|
| |
| |
| |
| |
| |
| |
| | |
- When the named timestamp column is nil, we should just return the
cache_key with model name and id similar to the behavior of implicit
timestamp columns.
- Fixed one of the issue mentioned in https://github.com/rails/rails/issues/26417.
|
| |
| |
| |
| |
| | |
Different parts of concurrent-ruby's documentation make inconsistent
claims about how kill will behave. It doesn't do the thing we want.
|
|\ \
| | |
| | | |
Shutdown pubsub connection before classes are reloaded
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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. :)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In #25880 we tried to cache localtime to fix the performance
regression but that proved to be difficult due to the fact that
localtime/getlocal can take a utc_offset argument. We tried
caching based on the argument but since the argument can be nil
sometimes that meant that if the TZ environment variable changed
then the cached value for nil became invalid. By moving the
caching to DateAndTime#compatibility we don't have to worry about
arguments since it doesn't take any.
There is a possible edge condition where preserve_timezone is set
to false and the system timezone changes then it could result in
a cached value being incorrect but the only way to fix this would
be to remove all caching and live with the performance issue.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
ryandv/fix_performance_regression_in_timewithzone_to_time"
Turns out trying to cache on localtime with arguments is too hard
so we'll do it on DateAndTime::Compatibility#to_time instead.
This reverts commit 3132fa6b7d9585e04eb44b25b55d298391b040b5, reversing
changes made to 6949f8e5e7dc901d4e04ebab6c975afb33ca44c9.
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Turns out trying to cache on localtime with arguments is too hard
so we'll do it on DateAndTime::Compatibility#to_time instead.
This reverts commit 9ce2d1b1a43fc4ef3db59849b7412d30583a4074, reversing
changes made to 53ede1aff2025d4391d0e05ba471fdaf3110a99c.
|
|\ \
| | |
| | | |
add `cached` key to `sql.active_record` event [ci skip]
|
| | |
| | |
| | |
| | | |
Follow up to #26584
|
|\ \ \
| | | |
| | | | |
Avoid compiling ruby keywords into template locals
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
this lets you pass ruby keywords to templates:
<%= render 'example', class: "cool" %>
<%= render 'example', "spaces are" => "a-ok" %>
<%= render 'example', Foo: "bar" %>
Previously you'd see confusing syntax errors like this:
SyntaxError (.../_example.html.erb:1: syntax error, unexpected '='
Now you can reference invalid identifiers through local_assigns.
If you try to use an invalid keyword (e.g. class) in your template, you
get a syntax error on the line where you use it.
|
|\ \ \
| | | |
| | | | |
Use websocket-client-simple instead of Faye in tests
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Mostly, this is just to avoid EventMachine. But there's also an argument
to be made that we're better off using a different protocol library for
our test suite than the one we use to implement the server.
|
| | | | |
|
|\ \ \ \
| |/ / /
|/| | | |
Fix `ActiveSupport::TimeWithZone#localtime`
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Previously memoization in `localtime` wasn't taking the `utc_offset`
parameter into account when returning a cached value. It now caches the
computed value depending on the `utc_offset` parameter, e.g:
Time.zone = "US/Eastern"
t = Time.zone.local(2016,5,2,11)
# => Mon, 02 May 2016 11:00:00 EDT -04:00
t.localtime(-7200)
# => 2016-05-02 13:00:00 -0200
t.localtime(-3600)
# => 2016-05-02 14:00:00 -0100
|
|\ \ \ \
| | | | |
| | | | | |
Add missing require for zlib in ActiveRecord::Migrator
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Zlib is used to generate the advisory lock since commit 2c2a8755460 .
Using the Migrator fails since then, when it is called without the rails context:
NameError: uninitialized constant ActiveRecord::Migrator::Zlib
This patch fixes the above error.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The class-level respond_to was extracted in ee77770 to responders gem
[ci skip]
|
|\ \ \ \
| | | | |
| | | | | |
Remove Faye mode
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
No deprecation, because it was never documented.
|
|/ / / /
| | | |
| | | |
| | | |
| | | | |
We've seen occasional Travis failures mentioning deadlocks. I think
they're escaping from this test.
|
|\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | |
| | | | |
palkan/fix/actioncable-confirmation-race-condition
Avoid race condition on subscription confirmation
|
| | | |
| | | |
| | | |
| | | | |
initializing
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Remove dup distinct from AR query list doc [ci skip]
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Preserve cached queries name in AS notifications
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Buffer writes to the cable sockets
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Otherwise, they can sometimes block, leading to reduced system
throughput.
|
|\ \ \ \ \ \
| |_|_|_|/ /
|/| | | | | |
Callbacks: leave less lines in the backtrace
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Callbacks are everywhere, so it's better if we can avoid making a mess
of the backtrace just because we've passed through a callback hook.
I'm making no effort to the before/after invocations: those only affect
backtraces while they're running. The calls that matter are the ones
that remain on the call stack after run_callbacks yields: around
callbacks, and internal book-keeping around the before/afters.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This was caused by 6d0d83a33f59d9415685852cf77818c41e2e2700. While the
bug it's trying to fix is handled if the association is loaded in an
after_(create|save) callback, it doesn't handle any cases that load the
association before the persistence takes place (validation, or before_*
filters). Instead of caring about the timing of persistence, we can just
ensure that we're not double adding the record instead.
The test from that commit actually broke, but it was not because the bug
has been re-introduced. It was because `Bulb` in our test suite is doing
funky things that look like STI but isn't STI, so equality comparison
didn't happen as the loaded model was of a different class.
Fixes #26661.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix typo in 5_0_release_notes.md doc [ci skip]
|
|/ / / / / |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
remove `mongrel` once again
|