aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | keep preloaded records in a list rather than extract from a hashAaron Patterson2013-09-253-16/+21
| | | | | | |
* | | | | | | push slice loading to it's own method so we can remove the type castingAaron Patterson2013-09-242-24/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | code
* | | | | | | guarantee that `klass` is not nil inside the preloader objectsAaron Patterson2013-09-242-5/+12
| | | | | | |
* | | | | | | eliminate unused ivarAaron Patterson2013-09-241-1/+0
| | | | | | |
* | | | | | | all records have a preloaded, so eliminate that conditionalAaron Patterson2013-09-241-11/+7
| | | | | | |
* | | | | | | eliminate the `loaded?` conditionalAaron Patterson2013-09-243-12/+7
| | | | | | |
* | | | | | | push preloaded test up to the factory method so we can eliminateAaron Patterson2013-09-243-8/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | conditionals from the individual preloaded classes
* | | | | | | we can't sort by lhs since the middle records have difference classesAaron Patterson2013-09-231-19/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | and possibly different rules for finding those objects
* | | | | | | pass the preloader down so we only have to construct oneAaron Patterson2013-09-237-21/+21
| | | | | | |
* | | | | | | reuse the same preloader object for each associationAaron Patterson2013-09-231-2/+2
| | | | | | |
* | | | | | | remove state from the preloaderAaron Patterson2013-09-233-28/+18
| | | | | | |
* | | | | | | pass the scope all the way down to the constructorsAaron Patterson2013-09-231-10/+10
| | | | | | |
* | | | | | | only do the should_reset test onceAaron Patterson2013-09-231-6/+6
| | | | | | |
* | | | | | | fix variable names and speed up relation orderingAaron Patterson2013-09-232-16/+12
| | | | | | |
* | | | | | | hm:t preloading will respect order set on the RHS associationAaron Patterson2013-09-235-8/+53
| | | | | | |
* | | | | | | cache associated target records hashAaron Patterson2013-09-201-17/+11
| | | | | | |
* | | | | | | combine methods so we can reuse preloadersAaron Patterson2013-09-201-19/+18
| | | | | | |
* | | | | | | return a list rather than hashAaron Patterson2013-09-201-7/+13
| | | | | | |
* | | | | | | preserve order on the RHS queryAaron Patterson2013-09-201-0/+8
| | | | | | |
* | | | | | | split up construction and mutationAaron Patterson2013-09-201-1/+4
| | | | | | |
* | | | | | | fix method nameAaron Patterson2013-09-201-3/+5
| | | | | | |
* | | | | | | access preloaders independently of model mutationsAaron Patterson2013-09-201-12/+12
| | | | | | |
* | | | | | | push running the preloaders upAaron Patterson2013-09-201-19/+7
| | | | | | |
* | | | | | | push `run` up to preloadAaron Patterson2013-09-203-14/+41
| | | | | | |
* | | | | | | the hash should only ever be length one, so decompose itAaron Patterson2013-09-201-4/+5
| | | | | | |
* | | | | | | stop depending on preloader interals so we can create fewer preloaderAaron Patterson2013-09-201-19/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | objects
* | | | | | | lhs preload is always a single preload, so just preload oneAaron Patterson2013-09-201-3/+3
| | | | | | |
* | | | | | | just read the attribute rather than `send`ingAaron Patterson2013-09-201-1/+1
| | | | | | |
* | | | | | | extract exception raising, clean up group_by statementAaron Patterson2013-09-201-6/+7
| | | | | | |
* | | | | | | generate fewer objects when groupingAaron Patterson2013-09-201-5/+7
| | | | | | |
* | | | | | | do not access internal data structuresAaron Patterson2013-09-201-1/+1
| | | | | | |
* | | | | | | exposing target records on the preloaderAaron Patterson2013-09-202-16/+29
|/ / / / / /
* | | | | | support objects with blank string primary keysAaron Patterson2013-09-181-1/+1
| | | | | |
* | | | | | ActiveRecord::Base#<=> has been removed. Primary keys may not be in order,Aaron Patterson2013-09-181-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | or even be numbers, so sorting by id doesn't make sense. Please use `sort_by` and specify the attribute you wish to sort with. For example, change: Post.all.to_a.sort to: Post.all.to_a.sort_by(&:id)
* | | | | | do what the superclass does in the case that objects do not matchAaron Patterson2013-09-181-0/+2
| | | | | |
* | | | | | Merge pull request #12011 from jetthoughts/11963_fix_join_with_association_scopeRafael Mendonça França2013-09-161-6/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collapse where constraints to the Arel::Nodes::And node Conflicts: activerecord/CHANGELOG.md
| * | | | | | Collapse where constraints to one where constraintPaul Nikitochkin2013-09-131-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to remove duplication with joining arel where constraints with `AND`, all constraints on `build_arel` are collapsed into one head node: `Arel::Nodes::And` Closes: #11963
* | | | | | | Removes unused code related to DatabaseTasks.kennyj2013-09-161-4/+0
| | | | | | |
* | | | | | | Merge pull request #12129 from Empact/deprecate-array-bang-delegationRafael Mendonça França2013-09-121-3/+14
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Deprecate the delegation of Array bang methods in ActiveRecord::Delegation Conflicts: activerecord/CHANGELOG.md activerecord/test/cases/relation_test.rb
| * | | | | | | Deprecate the delegation of Array bang methods in ActiveRecord::DelegationBen Woosley2013-09-041-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The primary means of returning results for Array bang methods is to modify the array in-place. When you call these methods on a relation, that array is created, modified, and then thrown away. Only the secondary return value is exposed to the caller. Removing this delegation is a straight-forward way to reduce user error by forcing callers to first explicitly call #to_a in order to expose the array to be acted on by the bang method.
* | | | | | | | Merge pull request #12137 from lann/fix_association_first_lastRafael Mendonça França2013-09-121-3/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make CollectionAssociation first/last with integer fetch with query Conflicts: activerecord/CHANGELOG.md
| * | | | | | | | Make CollectionAssociation first/last with integer fetch with queryLann Martin2013-09-091-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When first or last is called with an integer on an unloaded association, the entire collection is loaded. This differs surprisingly from the behavior of Relation#first/last, which translate the call into a limit query. For large collections this can make a big difference in performance. Change CollectionAssociation#fetch_first_or_last_using_find? to make this kind of call delegate to Relation.
* | | | | | | | | Merge pull request #11698 from dmathieu/sqlite_tasks_without_railsRafael Mendonça França2013-09-123-2/+4
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let the SQLite rake tasks run without rails
| * | | | | | | | | let the sqlite task run without railsDamien Mathieu2013-08-073-2/+4
| | | | | | | | | |
* | | | | | | | | | Merge pull request #12156 from rywall/from-copy-bindsRafael Mendonça França2013-09-121-0/+1
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow Relation#from to accept other relations with bind values. Conflicts: activerecord/CHANGELOG.md
| * | | | | | | | | Allow Relation#from to accept other relations with bind values.Ryan Wallace2013-09-081-0/+1
| | | | | | | | | |
* | | | | | | | | | Disable prepared statements in the unprepared_statement blockRafael Mendonça França2013-09-121-2/+3
| | | | | | | | | |
* | | | | | | | | | Fix typo on instance variable get callCarlos Antonio da Silva2013-09-121-1/+1
| | | | | | | | | |
* | | | | | | | | | Remove conditional adding a new methodRafael Mendonça França2013-09-112-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At the point we want to add the reflection we already know the reflection is of the AggregateReflection type so we can call a specific method
* | | | | | | | | | Fix inverted conditionalRafael Mendonça França2013-09-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Oops, I should had run the tests