Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | | | use drop and avoid a range object | Aaron Patterson | 2013-08-01 | 1 | -1/+1 | |
| | | | | ||||||
* | | | | remove intermediate assignments | Aaron Patterson | 2013-08-01 | 2 | -7/+4 | |
| | | | | ||||||
* | | | | push option handling "chrome" outside `initialize` | Aaron Patterson | 2013-08-01 | 1 | -8/+7 | |
| | | | | ||||||
* | | | | remove `valid_options` class method | Aaron Patterson | 2013-08-01 | 1 | -4/+3 | |
| | | | | ||||||
* | | | | association builder classes no longer need the model | Aaron Patterson | 2013-08-01 | 2 | -7/+6 | |
| | | | | | | | | | | | | | | | | | | | | decouple the builder classes from the model. Builder objects should be easier to reuse now. | |||||
* | | | | remove more mutations from the `build` method | Aaron Patterson | 2013-08-01 | 1 | -7/+2 | |
| | | | | ||||||
* | | | | make mutation method apis more consistent | Aaron Patterson | 2013-08-01 | 2 | -4/+5 | |
| | | | | ||||||
* | | | | push more mutations outside the factory method | Aaron Patterson | 2013-08-01 | 2 | -8/+6 | |
| | | | | ||||||
* | | | | push module building to the constructor | Aaron Patterson | 2013-08-01 | 1 | -14/+20 | |
| | | | | ||||||
* | | | | users should be warned if clobbering constants | Aaron Patterson | 2013-08-01 | 1 | -3/+1 | |
| | | | | ||||||
* | | | | defning extensions happens once, no need to cache | Aaron Patterson | 2013-08-01 | 1 | -5/+3 | |
| | | | | ||||||
* | | | | assert that constants have been set rather than the names | Aaron Patterson | 2013-08-01 | 1 | -3/+3 | |
| | | | | ||||||
* | | | | remove dead code | Aaron Patterson | 2013-08-01 | 1 | -4/+0 | |
| | | | | ||||||
* | | | | pushing out more callback definitions | Aaron Patterson | 2013-08-01 | 1 | -2/+6 | |
| | | | | ||||||
* | | | | push more mutations out of the builder | Aaron Patterson | 2013-08-01 | 2 | -12/+15 | |
| | | | | | | | | | | | | | | | | | | | | `configure_dependency` actually defined callbacks, so rename the method and move it to the appropriate method. | |||||
* | | | | remove dependency on @model when defining callbacks | Aaron Patterson | 2013-08-01 | 2 | -8/+8 | |
| | | | | ||||||
* | | | | extract more mutations to the caller | Aaron Patterson | 2013-08-01 | 2 | -13/+16 | |
| | | | | ||||||
* | | | | separate some mutations from reflection construction | Aaron Patterson | 2013-08-01 | 2 | -6/+6 | |
| |/ / |/| | | ||||||
* | | | oops! :bomb: | Aaron Patterson | 2013-07-31 | 1 | -1/+1 | |
| | | | ||||||
* | | | do is_a? tests on assignment so runtime is faster | Aaron Patterson | 2013-07-31 | 2 | -9/+12 | |
| | | | ||||||
* | | | Revert "all `scope_chain` methods allocate new arrays, no need to dup" | Aaron Patterson | 2013-07-31 | 1 | -1/+1 | |
| | | | | | | | | | | | | This reverts commit 1468a4b89aa4bca99160bfa03572b2c0ab348db5. | |||||
* | | | callback should always have a value | Aaron Patterson | 2013-07-31 | 1 | -1/+1 | |
| | | | ||||||
* | | | no need to to_sym | Aaron Patterson | 2013-07-31 | 2 | -2/+2 | |
| | | | ||||||
* | | | pass the mixin in to the code generation methods | Aaron Patterson | 2013-07-31 | 3 | -11/+11 | |
| | | | ||||||
* | | | we should not allow invalid objects to be constructed | Aaron Patterson | 2013-07-31 | 1 | -1/+2 | |
| | | | ||||||
* | | | push some validation up to the factory method | Aaron Patterson | 2013-07-31 | 1 | -4/+5 | |
| | | | ||||||
* | | | use bind values for model types | Aaron Patterson | 2013-07-31 | 1 | -2/+3 | |
| | | | ||||||
* | | | Merge pull request #11606 from vipulnsward/refactor_array_parser | Rafael Mendonça França | 2013-07-30 | 1 | -15/+22 | |
|\ \ \ | | | | | | | | | Refactor `ArrayParser` | |||||
| * | | | Refactor `ArrayParser` | Vipul A M | 2013-07-26 | 1 | -15/+22 | |
| | | | | | | | | | | | | | | | | | | | | * Constantize parse token * Remove extra param passed to `parse_data` | |||||
* | | | | all `scope_chain` methods allocate new arrays, no need to dup | Aaron Patterson | 2013-07-30 | 1 | -1/+1 | |
| | | | | ||||||
* | | | | Merge branch 'revert-order-prepending' | Rafael Mendonça França | 2013-07-30 | 1 | -2/+2 | |
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | Conflicts: activerecord/CHANGELOG.md | |||||
| * | | | | Revert change on ActiveRecord::Relation#order method that prepends new | Rafael Mendonça França | 2013-07-29 | 1 | -2/+2 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | order on the old ones The previous behavior added a major backward incompatibility since it impossible to have a upgrade path without major changes on the application code. We are taking the most conservative path to be consistent with the idea of having a smoother upgrade on Rails 4. We are reverting the behavior for what was in Rails 3.x and, if needed, we will implement a new API to prepend the order clauses in Rails 4.1. | |||||
* | | | | | Merge pull request #10673 from sgrif/master | Rafael Mendonça França | 2013-07-29 | 3 | -35/+74 | |
|\ \ \ \ \ | |/ / / / |/| | | | | Add ability to specify how a class is converted to Arel predicate when passed to where | |||||
| * | | | | Add ability to specify how a class is converted to Arel predicate | sgrif | 2013-07-28 | 3 | -35/+74 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the ability for rails apps or gems to have granular control over how a domain object is converted to sql. One simple use case would be to add support for Regexp. Another simple case would be something like the following: class DateRange < Struct.new(:start, :end) def include?(date) (start..end).cover?(date) end end class DateRangePredicate def call(attribute, range) attribute.in(range.start..range.end) end end ActiveRecord::PredicateBuilder.register_handler(DateRange, DateRangePredicate.new) More complex cases might include taking a currency object and converting it from EUR to USD before performing the query. By moving the existing handlers to this format, we were also able to nicely refactor a rather nasty method in PredicateBuilder. | |||||
* | | | | | only calculate the klass once | Aaron Patterson | 2013-07-29 | 1 | -1/+2 | |
|/ / / / | ||||||
* | | | | Avoid "uninitialized constant ActiveRecord::PendingMigrationError::Rails" | Akira Matsuda | 2013-07-29 | 1 | -1/+1 | |
| | | | | ||||||
* | | | | rake -> bin/rake | Steve Klabnik | 2013-07-24 | 1 | -1/+1 | |
|/ / / | ||||||
* | | | Fix indentation. | kennyj | 2013-07-24 | 1 | -8/+8 | |
| | | | ||||||
* | | | Simplify select_one method. | kennyj | 2013-07-24 | 1 | -2/+1 | |
| | | | | | | | | | | | | | | | | | | The select_all method always returns ActiveRecord::Result instance, and the ActiveRecord::Result includes Enumerable mixin. If #empty?, #first method returns nil. Thus we can simplify this method. | |||||
* | | | Refactor to use flat_map | Carlos Antonio da Silva | 2013-07-23 | 1 | -3/+3 | |
| | | | ||||||
* | | | oops! | Aaron Patterson | 2013-07-23 | 1 | -1/+1 | |
| | | | ||||||
* | | | eliminate conditional in JoinHelper | Aaron Patterson | 2013-07-23 | 2 | -2/+2 | |
| | | | ||||||
* | | | acually get the actual source reflection :cry::gun: | Aaron Patterson | 2013-07-23 | 1 | -7/+14 | |
| | | | ||||||
* | | | stop relying on side effects of const_missing | Aaron Patterson | 2013-07-23 | 1 | -7/+7 | |
| | | | ||||||
* | | | add a specific factory method rather than using new | Aaron Patterson | 2013-07-23 | 9 | -13/+11 | |
| | | | ||||||
* | | | factory methods should not have side effects. | Aaron Patterson | 2013-07-23 | 3 | -8/+11 | |
| | | | | | | | | | | | | Move model mutation to the methods that are called on the model. | |||||
* | | | extract mutation from generation method | Aaron Patterson | 2013-07-23 | 2 | -4/+6 | |
| | | | ||||||
* | | | habtm can only ever be an association reflection | Aaron Patterson | 2013-07-22 | 1 | -2/+4 | |
| | | | ||||||
* | | | use the predicate method | Aaron Patterson | 2013-07-22 | 1 | -1/+1 | |
| | | | ||||||
* | | | AR::Base does not need to know how to create reflection objects | Aaron Patterson | 2013-07-22 | 3 | -21/+21 | |
| | | |