| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |/ / /
| |/| | |
| | | | |
| | | | | |
- Followup of https://github.com/rails/rails/pull/20190/.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
make sure to load_config for db:abort_if_pending_migrations
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This used to raise a `IrreversibleMigration` error (since #10437).
However since `remove_index :table, :column` is probably the most basic
use-case we should make it reversible again.
Conflicts:
activerecord/CHANGELOG.md
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Add RDoc about add_reference to ActiveRecord::Migration
[ci skip]
|
| | |_|_|/ /
| |/| | | |
| | | | | |
| | | | | | |
[ci skip]
|
| | | | | | |
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | | |
My impression of the code sample is that the intent is to assign guy_1, guy_2, etc. The code as it stood would have assigned guy_1, guy_1, etc.
This simply replaces the 1 with the iterator variable i.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The examples now take in consideration when Active Record finds inverse
associations automatically.
|
| | | | | |
|
| | | | |
| | | | |
| | | | | |
the test case for this commit is in cd3f5db
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
If a getter has side effects on the DB, `changes_applied` will be called
twice. The second time will try and remove the changed attributes cache,
and will crash because it's already been unset. This also demonstrates
that we shouldn't assume that calling getters won't change the value of
`changed_attributes`, and we need to clear the cache if an attribute is
modified.
Fixes #20531.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
use our own runner for Rails framework components `bin/test`
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Make remove_foreign_key reversible
Conflicts:
activerecord/CHANGELOG.md
|
| | | | | | | |
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | | |
Fixes #17511 and #17415
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
`serialize` makes the contract that if it is given a class name, it will
never return something other than an instance of that class. This means
that it must cast `nil` to the empty form of that object. As such, we
should then persist empty forms of that object as `nil`. While this is
techincally under the contract of
```
model.attribute = value
assert_equal model.attribute, model.tap(&:save).reload.attribute
```
which we can't actually test universally without property based testing,
it has come up more than once and is worth calling out specifically
since we aren't looking to change it.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
[Sean Griffin & jmondo]
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
If the subtype provides custom schema dumping behavior, we need to defer
to it. We purposely choose not to handle any values other than an array
(which technically should only ever be `nil`, but I'd rather code
defensively here).
Fixes #20515.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
change AR clear order in ActionDisplatch::Reloader hook
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
refactor ActiveRecord's #become by removing not needed code
|
| | | | | | |
|
|/ / / / / |
|
|\ \ \ \ \
| |_|_|_|/
|/| | | | |
Fix crash when loading fixture with belongs_to association defined in abstract base class
|
| | | | |
| | | | |
| | | | |
| | | | | |
abstract base class.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Stop `to_s(:db)` for fixture's timestamp
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Time instance will be casted so we don't have to do `to_s(:db)`.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Return a `Point` object from the PG Point type
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This introduces a deprecation cycle to change the behavior of the
default point type in the PostgreSQL adapter. The old behavior will
continue to be available for the immediate future as `:legacy_point`.
The current behavior of returning an `Array` causes several problems,
the most significant of which is that we cannot differentiate between an
array of points, and a point itself in the case of a column with the
`point[]` type.
The attributes API gives us a reasonable way to have a proper
deprecation cycle for this change, so let's take advantage of it. If we
like this change, we can also add proper support for the other geometric
types (line, lseg, box, path, polygon, and circle), all of which are
just aliases for string today.
Fixes #20441
|
| |/ / / /
|/| | | |
| | | | |
| | | | | |
[Robin Dupret & Shunsuke Aida]
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
See commit 890da514, this is not intended.
So fix indent.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
It was not being applied to creates and updates attempted through the
non-bang save methods. This means that, for example, creation of
records for singular associations through the `create_*` methods was
not appropriately ignored in .suppress blocks.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Improve the guide about `has_many` `collection.clear` to indicate
the behavior for each dependent strategy according to
`collection.delete_all`.
Based on #17179, I changed the `collection.delete` docs to also
clarify the default strategy for each `hm` and `hm:t` associations.
Fixes #20170.
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fixed typos in rails guide
|
| | | | | | |
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Allow Enumerable#pluck to take a splat.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This allows easier integration with ActiveRecord, such that
AR#pluck will now use Enumerable#pluck if the relation is loaded,
without needing to hit the database.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Fix circular import warning on build
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
since NUMBER(8) is not enough to store the maximum number of bigint.
Oracle NUMBER(p,0) as handled as integer
because there is no dedicated integer sql data type exist in Oracle database.
Also NUMBER(p,s) precision can take up to 38. p means the number of digits, not the byte length.
bigint type needs 19 digits as follows.
$ irb
2.2.2 :001 > limit = 8
=> 8
2.2.2 :002 > maxvalue_of_bigint = 1 << ( limit * 8 - 1)
=> 9223372036854775808
2.2.2 :003 > puts maxvalue_of_bigint.to_s.length
19
=> nil
2.2.2 :004 >
|
|/ / / / / / |
|