| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* railstest:
do not blow away the test database on every run
just check pending migrations in the current environment
check pending migrations against the test db
only match the default task
test no longer makes sense after requiring all test files
switch the testing tests to use rake
a test file can be provided to rake, e.g.:
switch to Rails::TestTask
default task should also be in the test env
ensure the schema checking is done in the dev connection
Revert "Update Rake tasks to call `rails test` instead"
Revert "Warning removed unused variable task_name"
apps that depend on active record should load fixtures
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* master: (44 commits)
Improve the changelog entry [ci skip]
Fix explicit names on multiple file fields
Correctly parse bigint defaults in PostgreSQL
Move changelog to the top [ci skip]
Fix indent and remove extra white spaces
Fix scope chaining + STI
failing test for #9869
Improve `belongs_to touch: true` timestamp test
Sort modules in alphabetical order.
Avoid an attempt to fetch old record when id was not present in touch callback
Use the correct pk field from the reflected class to find the old record
Refactor mail_to to not generate intermediate hashes when adding href
Ensure mail_to helper does not modify the given html options hash
Use inspect when writing the foreign key from the reflection
Use a space after the comment sign when showing the result of commands
Exclude template files for rdoc API [ci skip]
template should have generic name
use | to have more intent revealing code
Revert "Merge pull request #10034 from benofsky/fix_skipping_object_callback_filters"
stop depending on callbacks
...
Conflicts:
railties/test/application/rake_test.rb
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |/
|/| |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Correctly parse bigint defaults in PostgreSQL
Conflicts:
activerecord/CHANGELOG.md
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
Association with inverse_of does not set the parent in association building block
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes inconsistency when building children of association
which has inverse_of set properly.
When creating new association object with a block:
parent.association.build do |child|
child.parent.equal?(parent) # false
end
So the block the `child.parent` did not point to the same object.
But when the object is created it points to same instance:
child = parent.association.build
child.parent.equal?(parent) # true
|
|\ \ \ \
| | | | |
| | | | | |
Avoid calling define_method in CollectionProxy#scope
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
See #9869 and #9929.
The problem arises from the following example:
class Project < ActiveRecord::Base
scope :completed, -> { where completed: true }
end
class MajorProject < Project
end
When calling:
MajorProject.where(tasks_count: 10).completed
This expands to:
MajorProject.where(tasks_count: 10).scoping {
MajorProject.completed
}
However the lambda for the `completed` scope is defined on Project. This
means that when it is called, `self` is Project rather than
MajorProject. So it expands to:
MajorProject.where(tasks_count: 10).scoping {
Project.where(completed: true)
}
Since the scoping was applied on MajorProject, and not Project, this
fails to apply the tasks_count condition.
The solution is to make scoping apply across STI classes. I am slightly
concerned about the possible side-effects of this, but no tests fail and
it seems ok. I guess we'll see.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Sort modules in active_record.rb
|
| | |_|/ /
| |/| | | |
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | | |
Round off time to a whole second value to compensate for databases
that don't support fractional timestamps. Also add a assertion to
check that the old record is touched when the association is cleared.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The implementation was using the source class foreign key field instead
of the reflected primary key one to find the old record.
For instance, for this scenario
class Bulb < ActiveRecord::Base
belongs_to :car, :touch => true
end
class Car < ActiveRecord::Base
has_many :bulbs
end
the current implementation was trying to do this query:
Car.where(car_id: X).first
where we should be doing this query:
Car.where(id: X).first
This should hopefully fix the build.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If we don't use inspect inside the class_eval block then the foreign key
is written without quotes causing us to fetch the foreign key value and
not the column name.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
http://guides.rubyonrails.org/api_documentation_guidelines.html#example-code
[ci skip]
|
|\ \ \ \
| | | | |
| | | | | |
Collection of small fixes. Check individual commits for background.
|
| | | | |
| | | | |
| | | | |
| | | | | |
thanks to @egilburg for suggestion
|
| | | | | |
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
has_many through obeys order on through association
|
| | | | |
| | | | |
| | | | |
| | | | | |
fixes #10016
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
minor fixes including variable name change and expanded rdoc
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| |_|_|_|/
|/| | | | |
belongs_to :touch should touch old record when transitioning.
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
optimize some code around merge
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Per #9999 revert blank? to empty?
|
| | |_|_|/ /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
as opposed to blank?
This is both faster and more correct, added tests to make sure this is not reverted again.
|
|/ / / / / |
|
| |_|/ /
|/| | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
mmangino/raise_when_attributes_cant_be_unserialized
Unserializing YAML attributes can silently fail in development mode
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
Firebird/Sqlserver/Oracle database tasks.
|