aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
Commit message (Collapse)AuthorAgeFilesLines
* defines a private require-hub active_support/railsXavier Noria2012-08-021-0/+1
| | | | | | | | This is a private place to put those AS features that are used by every component. Nowadays we cherry-pick individual files wherever they are used, but that it is not worth the effort for stuff that is going to be loaded for sure sooner or later, like blank?, autoload, concern, etc.
* Do not consider the numeric attribute as changed if the old value isRafael Mendonça França2012-08-022-2/+15
| | | | | | | | | | | | | | | | | | | | | | | zero and the new value is not a string. Before this commit this was the behavior r = Review.find_by_issue(0) r.issue => 0 r.changes => {} r.issue = 0 => 0 r.changed? => true r.changes => {"issue"=>[0,0]} Fixes #7237 Conflicts: activerecord/CHANGELOG.md
* s/scoped/scope/Jon Leighton2012-08-019-27/+33
|
* Add CollectionProxy#scopeJon Leighton2012-08-013-1/+30
| | | | | | | | | | | | | | | | This can be used to get a Relation from an association. Previously we had a #scoped method, but we're deprecating that for AR::Base, so it doesn't make sense to have it here. This was requested by DHH, to facilitate code like this: Project.scope.order('created_at DESC').page(current_page).tagged_with(@tag).limit(5).scoping do @topics = @project.topics.scope @todolists = @project.todolists.scope @attachments = @project.attachments.scope @documents = @project.documents.scope end
* Use explicit delegationsJon Leighton2012-08-011-119/+79
| | | | | | | This makes it easier to see what the documentation refers to. It also means that we are not doing unnecessary work for delegations that have no args / splats / block / etc.
* Refactor a bitJon Leighton2012-08-011-38/+37
| | | | | This doesn't change the exernal behavior, but it moves some code around to where I think it properly belongs.
* Add `Relation#load`Jon Leighton2012-08-013-2/+35
| | | | | | | | | | | | | This method explicitly loads the records and then returns `self`. Rather than deciding between "do I want an array or a relation?", most people are actually asking themselves "do I want to eager load or lazy load?" Therefore, this method provides a way to explicitly eager-load without having to switch from a `Relation` to an array. Example: @posts = Post.where(published: true).load
* Deprecate :finder_sql, :counter_sql, :insert_sql, :delete_sql.Jon Leighton2012-08-019-45/+118
|
* Revert "Remove :finder_sql, :counter_sql, :insert_sql, :delete_sql."Jon Leighton2012-08-0115-84/+339
| | | | | | | | | This reverts commit 3803fcce26b837c0117f7d278b83c366dc4ed370. Conflicts: activerecord/CHANGELOG.md It will be deprecated only in 4.0, and removed properly in 4.1.
* Change AR's CHANGELOG, because it is related to ↵kennyj2012-08-021-1/+1
| | | | e35c67ae0f920011a2440210041e96659a8de985
* Merge pull request #7224 from kennyj/move_to_arJosé Valim2012-08-011-15/+21
|\ | | | | The use_schema_cache_dump configuration moved to ActiveRecord.
| * The use_schema_cache_dump configuration moved to ActiveRecord.kennyj2012-08-021-15/+21
| |
* | Refactor dependency check validationCarlos Antonio da Silva2012-08-014-28/+19
| | | | | | | | | | | | Move the logic for validation check to the same method, and cache dependent option in a variable to reuse inside the dependency configuration methods instead of relying on the options hash.
* | move method for dependent option checkHrvoje Šimić2012-08-014-11/+22
|/
* fix typo in collection proxyAccessd2012-07-311-1/+1
|
* AR::Relation#order: make new order prepend old oneBogdan Gusiev2012-07-317-16/+25
| | | | | | | User.order("name asc").order("created_at desc") # SELECT * FROM users ORDER BY created_at desc, name asc This also affects order defined in `default_scope` or any kind of associations.
* Remove the deprecation of update_column.Rafael Mendonça França2012-07-303-48/+18
| | | | | | update_column was suggested as replacement of update_attribute at the last release of 3-2-stable, so deprecating it now will confuse the users.
* Merge pull request #7196 from ↵Aaron Patterson2012-07-291-1/+5
|\ | | | | | | | | rimidl/fix-incorrect-require-mysql-in-mysql_rake_test Fix incorrect usage `require mysql` in the activerecord/.../mysql_rake_test
| * fix incorrect usage `require mysql` in the ↵Vladimir Strakhov2012-07-291-1/+5
| | | | | | | | activerecord/test/.../mysql_rake_test.rb
* | Merge pull request #7188 from rodrigoflores/masterCarlos Antonio da Silva2012-07-291-1/+2
|\ \ | | | | | | Documentation Fix: Pointing the case when no dependent option is given to a association method
| * | Explaining a bit better about the default behaviour of dependentRodrigo Flores2012-07-281-1/+2
| |/
* / More polite cleanup for sqlite testsBogdan Gusiev2012-07-291-4/+4
|/
* removes the AR session store from eager loaded code [fixes #7160]Xavier Noria2012-07-291-1/+10
| | | | | See the comment in the file activerecord/lib/active_record.rb added by this patch for the rationale.
* Merge pull request #7185 from route/reset_table_name_refactoringRafael Mendonça França2012-07-281-8/+4
|\ | | | | Refactor to reset_table_name
| * Refactor to reset_table_nameDmitry Vorotilin2012-07-281-8/+4
| |
* | missing require: the AR session store depends on the AP abstract storeXavier Noria2012-07-281-0/+2
|/ | | | | | | | This require makes the dependency even more clear. In particular we are eager loading the session store but that does not work if AR is used outside Rails, this patch is preliminary work in fixing #7160.
* Revert "Removing composed_of from ActiveRecord."Rafael Mendonça França2012-07-2719-32/+790
| | | | | | | | | | | This reverts commit 14fc8b34521f8354a17e50cd11fa3f809e423592. Reason: we need to discuss a better path from this removal. Conflicts: activerecord/lib/active_record/reflection.rb activerecord/test/cases/base_test.rb activerecord/test/models/developer.rb
* Modity the :json_data_empty attribute from `:null => false` to `:null => true`Yasuo Honda2012-07-281-1/+1
| | | | | | | to address ORA-01400 errors with Oracle enhanced adapter. The original commit 3c0bf043 requires :json_data_empty attribute has empty string OR null, then setting `:default => ""` is enough.
* Merge pull request #6827 from zephyr-dev/masterJosé Valim2012-07-274-0/+116
|\ | | | | Validates_presence_of associated object marked for destruction
| * AR has a subclass of AM:PresenceValidator.Brent Wheeldon & Nick Monje2012-07-204-0/+116
| | | | | | | | | | | | | | This allows us to mark the parent object as invalid if all associated objects in a presence validated association are marked for destruction. See: https://github.com/rails/rails/issues/6812
* | Changelog and doc updates for the previous changes.Jon Leighton2012-07-272-9/+27
| |
* | Deprecate Relation#all.Jon Leighton2012-07-276-22/+9
| | | | | | | | | | | | It has been moved to active_record_deprecated_finders. Use #to_a instead.
* | Deprecate ActiveRecord::Base.scoped.Jon Leighton2012-07-2742-504/+497
| | | | | | | | | | | | | | It doesn't serve much purpose now that ActiveRecord::Base.all returns a Relation. The code is moved to active_record_deprecated_finders.
* | ActiveRecord::Base.all returns a Relation.Jon Leighton2012-07-2730-323/+328
| | | | | | | | | | | | | | | | | | | | | | Previously it returned an Array. If you want an array, call e.g. `Post.to_a` rather than `Post.all`. This is more explicit. In most cases this should not break existing code, since Relations use method_missing to delegate unknown methods to #to_a anyway.
* | Only require the `:rails_env` task where is needed.Rafael Mendonça França2012-07-271-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | `:rails_env` tasks is not needed in all the tasks that depends of `load_config`, only in the tasks that uses `Rails.env`. Since `:rails_env` task set the `Rails.env` to be "development" if it is not set we don't need the `||` statements too Fix #7175. Conflicts: activerecord/lib/active_record/railties/databases.rake
* | Modify the preference attribute from `:null => false` to `:null => true`Yasuo Honda2012-07-271-1/+1
| | | | | | | | | | | | | | | | to address ORA-01400 errors with Oracle enhanced adapter. Issue #4856 had been fixed and tested with the attribute `:null => false, :default => ""`. Now `:null => false` attribute is not necessary to test this issue.
* | Refactor ActiveRecord::Inheritance.base_class logicbeerlington2012-07-263-30/+45
| | | | | | | | | | | | | | | | | | Moved logic from class_of_active_record_descendant(class) to the base_class method. This method was confusing because it required an argument, but that argument was 'self'. Moved base_class tests to inheritance_test.rb and added some test coverage for some untested cases.
* | Missed extend for eager_autoloadDmitry Vorotilin2012-07-261-0/+1
| |
* | Merge pull request #7166 from ayrton/patch-1Jon Leighton2012-07-261-13/+13
|\ \ | | | | | | Update activerecord/CHANGELOG.md
| * | Update activerecord/CHANGELOG.mdAyrton De Craene2012-07-261-13/+13
| | | | | | | | | Fixed markdown code indenting
* | | Merge pull request #7161 from ↵Jon Leighton2012-07-261-5/+7
|\ \ \ | |/ / |/| | | | | | | | michaelfairley/eager_load_active_record_association_helpers Eager autoload ActiveRecord association helpers
| * | Eager autoload ActiveRecord association helpersMichael Fairley2012-07-251-5/+7
| | |
* | | Switched update_column recommendation in changelog to update_columnsPhilip Arndt2012-07-261-1/+1
| | | | | | | | | | | | | | | Related to #7164 Looks like the last one; thanks!
* | | Merge pull request #6654 from stevecj/postgresql-auto-reconnect-2Aaron Patterson2012-07-253-1/+76
|\ \ \ | | | | | | | | Postgresql auto reconnect 2
| * | | Stop being silly with formatting of method aliasing.Steve Jorgensen2012-07-161-3/+3
| | | |
| * | | Simulated & actual (manual/skipped) PostgreSQL auto-reconnection tests.Steve Jorgensen2012-07-163-0/+75
| | | |
| * | | Don't crash exception translation w/ nil result attribute.Steve Jorgensen2012-07-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Exception.result is nil when attempting a query after PostgreSQL disconnect, resulting in new exception: NoMethodError: undefined method `error_field' for nil:NilClass
* | | | Use string datatype for the setting attributeYasuo Honda2012-07-261-1/+1
| | | | | | | | | | | | | | | | to make store works all database adapters.
* | | | Deprecate update_column in favor of update_columns.Rafael Mendonça França2012-07-2415-47/+85
| | | | | | | | | | | | | | | | Closes #1190
* | | | Use update_columns to implemente the update_columnRafael Mendonça França2012-07-242-19/+54
| | | |