| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| | |
eileencodes/refactor-reflections-from-sub-classes-to-delegates
Refactor reflections from sub classes to delegates
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows us to decouple AssociationReflection and
ThroughReflection making ThroughReflection it's own Reflection
bucket in a way. The benefit of this is to be able to remove
checks against the macro's symbol for exmaple `macro == :belongs_to`.
Get all tests passing again
Some of the methods that used to be inherited from MacroReflection
through AssociationReflection were no longer getting passed through.
They needed to be duplicated into the ThroughReflection. I will
extract these out into a separate class.
Refactor shared methods into strategy object
Now that we've separated ThroughReflection and AssociationReflection
we can combine shared methods into one class to avoid duplication.
Break out class for each type of reflection
This creates a class for each reflection type (has_many, has_one,
belongs_to and habtm). We then can remove the need to set the macro
symbol in each initialization.
Tests were updated to reflect these changes because creation of
these reflections is now different.
Remove need for @collection instance var
We now define `collection?` as `false` by default and set it to
`true` in `has_and_belongs_to_many` and `has_many` reflections.
This removes the need for the `@collection` instance variable.
Raise exception on unknown macro types
We shouldn't accept just any macro when creating reflections. An
unrecongnized AssociationReflection raises an error. Tests in
`reflection_test` were updated to reflect these new changes.
`:has_and_belongs_to_many` macro tests were removed because we no
longer internally return HABTM.
|
|\ \
| | |
| | | |
Stash original path in `ShowExceptions` middleware
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`ActionDispatch::ShowExceptions` overwrites `PATH_INFO` with the status code
for the exception defined in `ExceptionWrapper`, so the path the user was
visiting when an exception occurred was not previously available to any custom
exceptions_app.
The original `PATH_INFO` is now stashed in
`env["action_dispatch.original_path"]`.
|
|\ \ \
| | | |
| | | | |
Address ORA-00972: identifier is too long when tested with Oracle
|
|/ / /
| | |
| | |
| | | |
by using shorter attribute names.
|
|\ \ \
| | | |
| | | | |
Dump PostgreSQL primary key with custom function as a default.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
For example, if use pgcrypto extension in PostgreSQL 9.4 beta 1, where
uuid-ossp extension isn't available for moment of writing, and thus to
use a gen_random_uuid() method as a primary key default.
In this case schema dumper wasn't able to correctly reconstruct
create_table statement and lost primary key constraint on schema load.
Fixes #16111.
|
|\ \ \ \
| | | | |
| | | | | |
[ci skip] Improve documentation consistency for ActiveModel::Errors
|
| | |/ /
| |/| | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Leave two blank lines between sections/packages for readibility.
* Always indent bullet points with four spaces. This allows multi-paragraph
points to align properly (see #16103), and it is the same as the format we
already use in CHANGELOGs. Doing this consistently sets an easy precedent
for future contributors to follow.
* Always put the PR/commit link on its own line in the source. If the bullet
point spans multiple paragraphs, put it on its own paragraph at the end.
[Godfrey Chan & Juanito Fatas]
|
|\ \ \ \
| |/ / /
|/| | | |
[ci skip] Fix typos like `a html` to `an html` and 'an mail' to 'an email'.
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Fix tests broken in #16149
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Refactor Hash#transform_values and Hash#transform_values!
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
[Bug report templates] Added rack master to the Gemfile [ci skip]
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Conflicts:
activerecord/lib/active_record/base.rb
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This reverts commit 0f6b101e09d210cea2494c5d4225760f1951ea67.
Reason: It's better to let `unscope` be documented. We can add a
separate section for `except`.
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
The example showed is `except`, however the method "documented" is `unstop`. Fix to align the docs to the example.
|
| | | |
| | | |
| | | |
| | | | |
Also use appropriate mailer syntax in the `find_each` block.
|
| | | |
| | | |
| | | |
| | | | |
Put all options for overloading `find` in one section
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add docs on what happens when a numerical argument is provided to last.
Since `last!` behaves exactly the same way but can raise an argument we can consolidate it in the `last` section.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add docs on what happens when a numerical argument is provided to take.
Since `take!` behaves exactly the same way but can raise an argument we can consolidate it in the `take` section.
|
| | | |
| | | |
| | | |
| | | | |
Since `find_by!` behaves exactly the same way but can raise an argument we can consolidate it in the `find_by` section.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add docs for `first` when provided a numerical argument.
Since `first!` behaves exactly the same way but can raise an argument we can consolidate it in the `first` section.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Just so it's clearer what's going on in the following assertion.
/cc #11993 @robin850
|
|\ \ \ \
| | | | |
| | | | | |
Silence Downloader's output
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This output isn't used anywhere for assertions so we can simply remove
it. The introducing commit was f238d495.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fixing typo in comment
|
|/ / / / / |
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Use NameError#name to assert raised error.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This makes the test compatible with other Ruby implementations, which
may implement error messages differently.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Don't rely on the column SQL type for bit string quoting
|
| | | | | | |
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Use a type object for type casting behavior on SQLite3
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
[Guides] Sentence break for clarity [ci-skip]
|
|/ / / / / / |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Fix incorrect unsubscription.
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Use `#bytesize` instead of `#size` when checking for cookie overflow
|