| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
Revise 'sqlite3:' URL handling for smoother upgrades
Conflicts:
activerecord/CHANGELOG.md
|
| |
| |
| |
| | |
That which was now relative is now absolute.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Restore the 4.0 behaviour for 'sqlite3:///', but deprecate it. We'll
change to the absolute-path interpretation in 4.2.
The current "correct" spellings for in-memory, relative, and absolute
URLs, respectively, are:
sqlite3::memory:
sqlite3:relative/path
sqlite3:/full/path
Substantially reverses/defers fbb79b517f3127ba620fedd01849f9628b78d6ce.
Uncovered by @guilleiguaran while investigating #14495, though that
sounds like a different issue.
|
|\ \
| | |
| | | |
Avoid a spurious deprecation warning for database URLs
|
| | |
| | |
| | |
| | |
| | | |
The keys are quite sufficient; we shouldn't be throwing passwords
around.
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is all about the case where we have a `DATABASE_URL`, and we have a
`database.yml` present, but the latter doesn't contain the key we're
looking for.
If the key is a symbol, we'll always connect to `DATABASE_URL`, per the
new behaviour in 283a2edec2f8ccdf90fb58025608f02a63948fa0.
If the key is a string, on the other hand, it should always be a URL:
the ability to specify a name not present in `database.yml` is new in
this version of Rails, and that ability does not stretch to the
deprecated use of a string in place of a symbol.
Uncovered by @guilleiguaran while investigating #14495 -- this actually
may be related to the original report, but we don't have enough info to
confirm.
|
|\ \
| | |
| | | |
Add ConnectionHelper to refactor tests.
|
| | | |
|
|\ \ \ |
|
| |/ / |
|
|\ \ \
| |/ /
|/| | |
Change order of scope subsections in Active Record Querying guide [ci skip]
|
|/ /
| |
| |
| |
| |
| | |
a concept of default scope in its example before it is introduced in the following section titled `Applying a default scope`.
It makes more sense to switch the ordering to introduce default scopes (`Applying a default scope`) first and then go into `Merging of scopes` section where it is used.
|
|\ \
| | |
| | | |
Fix default_url_options example in i18n guide
|
| | | |
|
| | |
| | |
| | |
| | | |
The option actually needs to be set on action_dispatch. [ci skip]
|
| | |
| | |
| | |
| | |
| | | |
Change to require all active_support/deprecation since that's the actual
entry point for the deprecation methods.
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | | |
ActiveSupport::SafeBuffer#prepend inconsistency
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Make `#prepend` method modify instance in-place and return self
instead of just returning modified value. That is exactly what
`#prepend!` method was doing previously, so it's deprecated from
now on.
|
|\ \ \ \
| |_|_|/
|/| | | |
Fixed upgrade guide typo
|
|/ / /
| | |
| | | |
Using `Rails.application.config.cookies_serializer :hybrid` throws an exception, fixed to `=`.
|
|\ \ \
| |_|/
|/| | |
We can conditional define the tests depending on the adapter or connection.
|
|/ /
| |
| |
| | |
connection.
|
| |
| |
| |
| |
| | |
Expand the query used in #table_exists? to include materialized views in the
kinds of relations it searches.
|
| |
| |
| |
| |
| | |
Also do not use transactional fixtures. We drop the type and the
table after every run, so there is nothing for the transaction to clean up.
|
|\ \
| | |
| | | |
Allow postgresql enum_test to be run in random order.
|
| | |
| | |
| | |
| | | |
Creating and dropping similar tables within the same connection causes postgresql to look up old values in the cache of tables which have already been dropped.
|
|\ \ \
| |/ /
|/| | |
Changed 'so' to 'see'
|
|/ / |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* rmc:
push move_string in to `move`
combine move_regexp and move_string so we only loop over states once
do not create memo objects since we'll just throw them away
only ask if `t` is empty once.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Clarify what the situation is and what to do.
* Advise loading schema using `rake db:setup` instead of migrating.
* Use a rescue in the initializer rather than extending the error
message in-place.
* Preserve the original backtrace of other errors by using `raise`
rather than raising again with `raise error`.
References 0ec45cd15d0a2f5aebc75e23d841b6c12f3ba763
|
| | |
| | |
| | |
| | |
| | | |
This is a follow-up fix to f7a6b115fea9f675190a79b701c7034214678f19 and
06082f66d541e581110406bbac3bc395bace3f86
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This patch registers custom domains in our OID-type_map.
They will behave exactly as the type specified by `pg_type.typbasetype`.
/cc @matthewd
|
|\ \ \
| | | |
| | | | |
PostgreSQL determine `Column#type` through corresponding OID. #7814
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I ran the whole test suite and compared the old to the new types.
Following is the list of types that did change with this patch:
```
DIFFERENT TYPE FOR mood: NEW: enum, BEFORE:
DIFFERENT TYPE FOR floatrange: NEW: floatrange, BEFORE: float
```
The `floatrange` is a custom type. The old type `float` was simply a coincidence
form the name `floatrange` and our type-guessing.
|
|\ \ \ \
| | | | |
| | | | | |
refactor assert_sql query to reuse capture_sql
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
set assert_sql to reuse the capture_sql method from above
instead of repeating the code
in response to comments on issue #14546
|
|\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | | |
eileencodes/fix_delete_all_to_not_use_IN_statement
Fix delete all to not produce sql in statement
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When delete_all is run on a CollectionProxy and has a
dependency of delete_all the SQL that is produced has an IN
statement. (DELETE FROM `associated_model` where `associated_model`
.`parent_id` = 1 AND `associated_model`.`id` IN (1, 2, 3...)).
This only happens if the association is not loaded (both loaded
and non-loaded delete_all should behave the same. This is a huge
problem when it comes to deleting many records because the query
becomes very slow. Instead the SQL produced should be (DELETE FROM
`assoicated_model` where `associated_model`.`parent_model_id`=1).
I fixed this by making sure the check for loaded and destroy also
makes sure that the dependent is not delete_all, so the conditional
goes to the else and deletes the records directly without the IN
statement.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
delete_all sql if an association is not loaded should behave
the same as if the association is loaded. This test ensures
the SQL statements are exactly the same.
|
| |/ /
| | |
| | |
| | |
| | | |
Other methods compare specific patterns, this method outputs
the actual sql query that is generated.
|
|\ \ \
| | | |
| | | | |
Do not overwrite selected and disabled attributes
|
| | | | |
|
| | | | |
|