| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
cast json values on write to be consistent with reading from the db.
|
| |
| |
| |
| | |
See also commit 5ac2341fab689344991b2a4817bd2bc8b3edac9d
|
| | |
|
| |
| |
| |
| |
| |
| | |
Raising `RuntimeErrors` skips important cleanup code and leads to
a lot of subsequent errors. This clutters the test output with a lot
of noise.
|
|\ \
| |/
|/| |
prevent global timezone state from leaking out of test cases.
|
| | |
|
| |
| |
| |
| |
| |
| | |
This is necessary because as of 5ac2341 `hstore` columns are always stored
as `Hash` with `String` keys. `ActiveRecord::Store` expected the attribute to
be an instance of `HashWithIndifferentAccess`, which led to the bug.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently they are all stored globally in the same `Hash`.
This commit forces the creation of a per-class variable if necessary.
The behavior was exposed through the following test-case:
```
1) Failure:
StoreTest#test_all_stored_attributes_are_returned [/Users/senny/Projects/rails/activerecord/test/cases/store_test.rb:151]:
--- expected
+++ actual
@@ -1 +1 @@
-[:color, :homepage, :favorite_food]
+[:resolution, :color, :homepage, :favorite_food]
```
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| | |
laurocaetano/fix_has_one_association_with_primary_key_set
Save association when primary key is manually set
Conflicts:
activerecord/CHANGELOG.md
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* master: (23 commits)
Escape the parentheses in the default function regexp
Update docs on Tilt::Template in Asset Pipeline guide
Fix loading a sql structure file on postgres when the file's path has whitespace in it
remove trailing whitespace added with b057765 [ci skip].
Allow unscope to work with `where.not`
Raise an exception when model without primary key calls .find_with_ids
Process sub-query relation's binding values
Instrument the generation of Action Mailer messages
Remove extra variable creation and merge.
In Relation#empty? use #exists? instead of #count.
[ci skip] avoid deprecation warning in sample code
Convert Fixnum into String the port number in MySQL
Fix some indentation on autosave association
Make define_non_cyclic_method simpler
Add Sass gobbling info to asset pipeline docs
Ensure the state is clean after one failure
Fix typo in form_helper.rb
add a new local variable to track if digests are being stored, to ensure the cleanup works correctly
[ci skip] Fix number of methods added by association.
update digestor code based on review
...
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Inline bind values for sub-queries generated for Relation in where
Conflicts:
activerecord/CHANGELOG.md
|
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Generated sub-query for Relation as array condition for `where` method
did not take in account its bind values, in result generates invalid SQL query.
Fixed by adding sub-query relation's binding values to base relation
Closes: #12586
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is causing every default value in PostreSQL database to being
handled as default function.
Fixes #12581
|
| | |
| | |
| | |
| | | |
whitespace in it
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Allows you to call #unscope on a relation with negative equality operators,
i.e. Arel::Nodes::NotIn and Arel::Nodes::NotEqual that have been generated
through the use of where.not.
|
| |/ |
|
| | |
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* master:
use the cached arel table
Fix typo in the changelog entry
Don't remove the select values to add they back again
Pluck on NullRelation accepts a list of columns
Conflicts:
activerecord/lib/active_record/relation/finder_methods.rb
|
| |
| |
| |
| |
| |
| | |
`pluck` was updated to accept a list of columns, but the `NullRelation`
was never updated to match that signature. As a result, calling `pluck`
on a `NullRelation` results in an `ArgumentError`.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* master: (44 commits)
grammar fix (reverted in e9a1ecd)
Revert "fixed a doc bug in the CHANGELOG.md s/does no longer depend on/no longer depends on/"
Add missed require making `enable_warnings` available
Prepare generated Gemfile for Capistrano 3
Added --model-name option scaffold_controller_generator.
read the association instead of sending
we should have unique sponsorable ids in the fixtures at least
simplify populating the ordering hash
the preloader for the RHS has all the preloaded records, so ask it
only calculate offset index once. #12537
Remove size alias for length validation
Fix `singleton_class?`
Minor Refactoring to `NumberHelper#number_to_human`
`$SAFE = 4;` has been removed with Ruby 2.1
scope_chain should not be mutated for other reflections
Remove `default_primary_key_type` and extract contains of `native_database_types` to a constant since they aren't conditional now in SQLite3Adapter. Makes it more like other adapters.
cleanup changelog entry format. [ci skip]
Extract a function to determine if the default value is a function
Push default_function to superclass to avoid method check
Dump the default function when the primary key is uuid
...
Conflicts:
activerecord/lib/active_record/relation/finder_methods.rb
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently `scope_chain` uses same array for building different
`scope_chain` for different associations. During processing
these arrays are sometimes mutated and because of in-place
mutation the changed `scope_chain` impacts other reflections.
Fix is to dup the value before adding to the `scope_chain`.
Fixes #3882.
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
dmitry/inverse_instance_should_not_be_reloaded_after_stale_state_change
Inversed instance should not be reloaded after stale state was changed
Conflicts:
activerecord/CHANGELOG.md
|
| | |
| | |
| | | |
check at association reader that record is inverted and should not be reloaded because of stale was changed at target record
|
| |/
| |
| |
| | |
Fixes #12489
|
| |\
| | |
| | | |
`Relation#count` doesn't use options anymore.
|
| | |
| | |
| | |
| | | |
`Relation#maximum`, `Relation#calculate`, `perform_calculation`, `NullRelation#calculate` as they isn't used anymore.
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
jetthoughts/12415_generate_subqueries_for_relation_from_binding_params
Generate subquery for Relation passed as array condition for where
Conflicts:
activerecord/CHANGELOG.md
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Instead of executing 2 queries for fetching records filtered by array condition with Relation,
added generation of subquery to current query.
This behaviour will be consistent when passes Relation as hash condition to where
Closes: #12415
|
| |\ \ \
| | |_|/
| |/| | |
Fixed MRI dependent stuff in AR tests
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Every method from MRI's core classes is written in C. This means
Method#arity always returns -1 for methods with a variable number of
arguments. This is not the case with Rubinius, where, for example
Array#slice! is implemented in Ruby and has arity -2, since is
defined as def slice!(start, length = undefined)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Related to all the other issues regarding message independent assertions
to make Rails compatible with other Ruby implementations other than MRI.
The best way here would be to have a specific error raised when modifying
frozen objects, like FrozenObjectError or something. But since Ruby
doesn't provide such a thing, we must limit the assertion to the lowest
common denominator, which is word "frozen".
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Stubbing ENV[] is not safe outside MRI. At some point after the
stubbing has occurred a backtrace is printed to the ActiveSupport
warning log: there Rubinius accesses ENV['RBX_NOCOLOR'] to determine
if it should print the backtrace with colors or not, causing the
stub to fail. Other implementations might access ENV in a different
way too, we just can't predict it.
The only thing we can do here is to actually set the ENV with what
we want and restore it afterwards.
|
| |\ \ \
| | |_|/
| |/| | |
Includes with persistent select, fixes #11773
|
| | |/
| | |
| | |
| | | |
was overwritten.
|
|/ / |
|
|\ \ |
|
| |/
| |
| |
| | |
instance
|
|/
|
|
|
|
| |
original commit 8998441967a8cfc6e4302c29664ab9d0acd77704
Reverted here ec8ef1e1055c4e1598da13f49d30261f07f4a9b4
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Related issue: #11939, #12084
|
| |
|