| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is a developer quality of life improvement, to ensure that unknown
formats aren't assigned (which it would previously accept, but wouldn't
work 100% correctly due to caching).
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Having a format listed twice had no effect. This is mostly helpful to
avoid an extra format when assigning [:html, "*/*"]
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This also removes the mutation we were performing on the values being
passed in.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
bogdanvlviv/mention-process_middleware.action_dispatch-in-the-guide
Add mention about `process_middleware.action_dispatch` in the guide [ci skip]
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | | |
We added ActiveSupport::Notifications instrumentation of the processing of each middleware in the stack,
See 04ae0b0b5e594e0bb99c5cd608921745977bcdcd.
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Make aliases of `database` option in generators work
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Thor automatically adds `-` if aliases do not start with `-`.
https://github.com/erikhuda/thor/blob/0879c1773d188902d54f95174f33961ac33111f8/lib/thor/parser/options.rb#L53
But Thor follows a convention of one-dash-one-letter options.
So, even if `-` is added to `db`, it does not work.
https://github.com/erikhuda/thor/blob/0879c1773d188902d54f95174f33961ac33111f8/lib/thor/parser/options.rb#L4
Follow up #34021.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Don't override @set_cookies on CookieJar#update_cookies_from_jar'
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When building the cookie_jar for the current test request.
It was possible for this method to override keys currently being set on the test itself.
In situations such as when making two requests mixing creating the cookie on the test and the controller.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
shioyama/generated_attribute_methods_namespaced_constant
Give GeneratedAttributeMethods module a name
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Currently GeneratedAttributeMethods is a module builder class, an
instance of which is included in every AR class. OTOH,
GeneratedAssociatedMethods is assigned to a constant under the model
namespace. This is inconsistent and looks strange in the list of
ancestors.
There is no particular reason *not* to assign a constant for this (very
important) module under the model namespace, so that's what this commit
does.
Previous to this change, ancestors for an AR class looked like this:
```
=> [User (call 'User.connection' to establish a connection),
User::GeneratedAssociationMethods,
#<ActiveRecord::AttributeMethods::GeneratedAttributeMethods:0x000055ace0f05b08>,
ApplicationRecord(abstract),
ApplicationRecord::GeneratedAssociationMethods,
#<ActiveRecord::AttributeMethods::GeneratedAttributeMethods:0x000055ace093c460>,
ActiveRecord::Base,
...
```
With this change, they look like this:
```
=> [User (call 'User.connection' to establish a connection),
User::GeneratedAssociationMethods,
User::GeneratedAttributeMethods,
ApplicationRecord(abstract),
ApplicationRecord::GeneratedAssociationMethods,
ApplicationRecord::GeneratedAttributeMethods,
ActiveRecord::Base,
...
```
The previously named `GeneratedAttributeMethods` module builder class is
renamed `GeneratedAttributeMethodsBuilder` to emphasize that this is not
a module but a class.
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
larouxn/revert-35656-revert-34277-remove-javascripts-javascripts_engine-options-for-generators
Revert "Revert "Remove `javascripts` and `javascript_engine` options for generators""
|
|/ / / / / / /
| | | | | | |
| | | | | | |
| | | | | | | |
generators""
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This test was trying to set the exception_app in the wrapper proxy
instead in the middleware itself.
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Re-add Template#updated_at as deprecated
|
|/ / / / / / / |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
larouxn/revert-34277-remove-javascripts-javascripts_engine-options-for-generators
Revert "Remove `javascripts` and `javascript_engine` options for generators"
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Remove roflscaling
|
| | | | | | | | | |
|
| | |_|_|/ / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
roflscaling (using frozen string constants instead of literal
strings) was added in 2012, before frozen string literals were
added in Ruby 2.3. Now that Rails no longer supports Ruby <2.3,
and all of these files use frozen string literals, there is
no reason to keep the roflscaling.
This does not delete or deprecate the related constants. Such
a change can be made in a later commit.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Remove virtual_path from fallback templates
|
| |/ / / / / / / |
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Extract `sanitize_as_sql_comment` from SQL visitor into connection
|
| |/ / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Probably that is useful for any other feature as well.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Update regular expression for checking valid MIME type
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
MIME Type validation regular expression does not allow for MIME types initialized with strings that contain parameters after the MIME type name.
|
|/ / / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Adds ActiveSupport::Notifications instrumentation of the processing of
each middleware in the stack.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Add documentation for the resource(s) :param option
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* update_at/on note for ActiveRecord::Relation.update_all
* Verbatim updated_at/on
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Raise exception when building invalid mime type
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This allows mime types in the form text/html, text/*, or */*
This required a few minor test/code changes where previously nil was
used as a mime string.
|
|\ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |
| | | | | | | | | | | |
Fix for migration active_storage migration
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
44/5000
Checking for the existence of only one table
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
*ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "active_storage_attachments" does not exist*
Updating to rails 6.0.0.beta3 if the command rake app:update is used a new migration file is generated:
```ruby
# db/migrate/add_foreign_key_constraint_to_active_storage_attachments_for_blob_id.active_storage.rb
class AddForeignKeyConstraintToActiveStorageAttachmentsForBlobId < ActiveRecord::Migration[6.0]
def up
unless foreign_key_exists?(:active_storage_attachments, column: :blob_id)
add_foreign_key :active_storage_attachments, :active_storage_blobs, column: :blob_id
end
end
end
```
**If the project does not have previously installed active storage** this mgiration causes an error:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "active_storage_attachments" does not exist
**Error output:**
PG::UndefinedTable: ERROR: relation "active_storage_attachments" does not exist
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `async_exec'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `block (2 levels) in execute'
activesupport-6.0.0.beta3/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
activesupport-6.0.0.beta3/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
activesupport-6.0.0.beta3/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:89:in `block in execute'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract_adapter.rb:643:in `block (2 levels) in log'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract_adapter.rb:642:in `block in log'
activesupport-6.0.0.beta3/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract_adapter.rb:633:in `log'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:88:in `execute'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/schema_statements.rb:977:in `add_foreign_key'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:875:in `block in method_missing'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:843:in `block in say_with_time'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:843:in `say_with_time'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:864:in `method_missing'
/db/migrate/20190315102607_add_foreign_key_constraint_to_active_storage_attachments_for_blob_id.active_storage.rb:5:in `up'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:816:in `exec_migration'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:797:in `block (2 levels) in migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:796:in `block in migrate'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in `with_connection'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:795:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:985:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1293:in `block in execute_migration_in_transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1344:in `block in ddl_transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/database_statements.rb:265:in `block in transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/transaction.rb:272:in `block in within_new_transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/transaction.rb:270:in `within_new_transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/database_statements.rb:265:in `transaction'
activerecord-6.0.0.beta3/lib/active_record/transactions.rb:212:in `transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1344:in `ddl_transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1292:in `execute_migration_in_transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1264:in `block in migrate_without_lock'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1263:in `each'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1263:in `migrate_without_lock'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1211:in `block in migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1364:in `with_advisory_lock'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1211:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1044:in `up'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1019:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/tasks/database_tasks.rb:191:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/railties/databases.rake:78:in `block (3 levels) in <main>'
activerecord-6.0.0.beta3/lib/active_record/railties/databases.rake:76:in `each'
activerecord-6.0.0.beta3/lib/active_record/railties/databases.rake:76:in `block (2 levels) in <main>'
railties-6.0.0.beta3/lib/rails/commands/rake/rake_command.rb:23:in `block in perform'
railties-6.0.0.beta3/lib/rails/commands/rake/rake_command.rb:20:in `perform'
railties-6.0.0.beta3/lib/rails/command.rb:48:in `invoke'
railties-6.0.0.beta3/lib/rails/commands.rb:18:in `<main>'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `block in require_with_bootsnap_lfi'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/loaded_features_index.rb:83:in `register'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:20:in `require_with_bootsnap_lfi'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:29:in `require'
activesupport-6.0.0.beta3/lib/active_support/dependencies.rb:297:in `block in require'
activesupport-6.0.0.beta3/lib/active_support/dependencies.rb:263:in `load_dependency'
activesupport-6.0.0.beta3/lib/active_support/dependencies.rb:297:in `require'
bin/rails:4:in `<main>'
|
|\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |
| | | | | | | | | | | | |
Fix a ContentNegotiation test description
|
| | | | | | | | | | | | |
|
| | | | | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \ \ \ \
| |/ / / / / / / / / / /
|/| | | | | | | | | | | |
Fix Time#advance to work with dates before 1001-03-07
|
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | | |
In #10634 the behavior of Time#advance was changed to maintain a
proleptic gregorian calendar for dates before calendar reform. However
it didn't full address dates a long time before calendar reform and
they gradually drift away from the proleptic calendar the further you
go back in time. Fix this by always converting the date to gregorian
before calling advance which sets the reform date to -infinity.
|
|\ \ \ \ \ \ \ \ \ \ \ \
| |_|_|_|_|_|/ / / / / /
|/| | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | | |
eileencodes/fix-database-configuration-when-not-actually-a-three-tier
Fix database configuration when adding another config level
|
| | |_|_|_|/ / / / / /
| |/| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
This is kind of hard to explain but if you have a database config with
another level like this:
```
development:
primary:
database: "my db"
variables:
statement_timeout: 1000
```
the database configurations code would chooke on the `variables` level
because it didn't know what to do with it.
We'd see the following error:
```
lib/active_record/database_configurations.rb:72:in
`block in find_db_config': undefined method `env_name' for [nil]:Array
(NoMethodError)
```
The problem here is that Rails does correctly identify this as not a
real configuration but returns `[nil]` along with the others. We need to
make sure to flatten the array and remove all the `nil`'s before
returning the `configurations` objects.
Fixes #35646
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
This also prevents insert_all from leaking its attributes checks.
|
|/ / / / / / / / / /
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
`values_list` is quite long and does far too many things. This also
eagerly extract the keys in initialize instead of having to worry about
calling them multiple times.
|