aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel
Commit message (Collapse)AuthorAgeFilesLines
...
* adding some roflscale to the sql visitorAaron Patterson2012-10-121-13/+96
|
* Merge pull request #141 from sunaku/GH-138Aaron Patterson2012-09-241-0/+4
|\ | | | | feature: add Arel::SelectManager#projections method
| * GH-138: add Arel::SelectManager#projections methodSuraj N. Kurapati2012-09-211-0/+4
| |
* | Merge pull request #140 from sunaku/GH-139Aaron Patterson2012-09-241-4/+4
|\ \ | | | | | | bugfix: some aggregations lacked DISTINCT emission
| * | GH-139: some aggregations lacked DISTINCT emissionSuraj N. Kurapati2012-09-211-4/+4
| |/
* / to_sql: add support for emitting SQL subqueriesSuraj N. Kurapati2012-09-221-0/+4
|/
* Add equality to ALL THE THINGS (that matter)Ernie Miller2012-08-1815-2/+187
| | | | | | | | | | | | People are often trying to use ARel nodes inside ActiveRecord, and when they do so, lots of things can break, because ActiveRecord relies on Array#uniq and sometimes hash key equality to handle values that end up in wheres, havings, etc. By implementing equality for all the nodes, we should hopefully be able to prevent any nodes (even nodes containing other nodes) from failing an equality check they should otherwise pass, and alleviate many of these errors. Fixes #130
* Add Nodes::TableAlias#engineJon Leighton2012-07-131-0/+4
| | | | | Eventually #engine should go away, but until that time, this means that Table and Nodes::TableAlias can be used more interchangeably.
* Remove ArgumentError.Jon Leighton2012-07-131-2/+1
| | | | | | | | | | It is untested. There is no `@frame` variable. Presumably it is supposed to be `@framing`, but changing that shows that some of the tests *are* setting frame twice. I don't see why this level of strictness is necessary. If someone disagrees, they should add a test for this behaviour and make the other tests pass.
* Fix in [] to be false, in [] to be trueErnie Miller2012-06-141-2/+10
| | | | This is in response to discussion on 62207fa
* Do not generate NOT IN (NULL) when empty rightSantiago Pastorino2012-06-131-1/+1
|
* Include Predications in GroupingErnie Miller2012-05-194-7/+8
| | | | | | Also, removed unused ordering.rb file, since it is identical to the one being created in unary.rb already, and isn't required anywhere.
* Revert "Revert "Merge pull request #113 from xuanxu/remove_relation""Aaron Patterson2012-03-272-8/+0
| | | | This reverts commit 6e8d1587091e00a84ea24ab92d9e836c3c38bcb8.
* Revert "Merge pull request #113 from xuanxu/remove_relation"Aaron Patterson2012-03-272-0/+8
| | | | | This reverts commit 9978fc40a8a5a262670279129a335845ad647f48, reversing changes made to b45466757424b98e1fe9699042d23550fd5b8751.
* Remove deprecated Relation moduleJuanjo Bazán2012-03-272-8/+0
|
* Adds visit_Arel_Nodes_InfixOperation to Arel::Visitors::DepthFirstBenedikt Deicke2012-03-221-0/+1
|
* Patch Informix Visitor so that it includes joinsJordan2012-02-291-1/+1
|
* Must support aliases for OVER operator.Alexander Staubo2012-02-231-0/+2
|
* Add #extract, which produces ANSI SQL function EXTRACT(<field> from <expr>).Alexander Staubo2012-02-235-0/+38
|
* Support ANSI SQL2003 window functions.Alexander Staubo2012-02-2210-1/+189
|
* added a module for visiting and transforming bind valuesAaron Patterson2012-02-212-2/+26
|
* bind parameters can be differentiated from sql literalsAaron Patterson2012-02-204-0/+6
|
* Oracle limit and offset issue when query is ordered, issue #99 solved.babinho2012-02-171-2/+1
|
* Borked the tests, so I'm reverting for now.Aaron Patterson2012-02-091-0/+10
| | | | | | | Revert "Merge pull request #81 from parndt/master" This reverts commit f3214d9ff0b7a3efb14f7e9cb93c51d3468c16d8, reversing changes made to fc787a42c0febcee41e13d16e06b72492ab00468.
* Merge pull request #81 from parndt/masterAaron Patterson2012-02-091-10/+0
|\ | | | | Removed lib/arel/sql/engine.rb
| * Merge remote-tracking branch 'rails/master'Philip Arndt2011-11-031-1/+1
| |\
| * | Removed lib/arel/sql/engine.rb because it's not required anymore.Philip Arndt2011-09-141-10/+0
| | |
* | | while using activerecord-sqlserver-adapter 3.1.5 with Rails 3.1 with Arel ↵Adam H2012-01-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2.2.1 we encountered the error uninitialized constant Arel::Nodes::Visitors::DepthFirst apparently Arel was trying to call a relative namespace with Visitors::DepthFirst.new(block).accept self we fixed this by making it call an absolute namespace with ::Arel::Visitors::DepthFirst.new(block).accept self
* | | bumping to 3.0.0Aaron Patterson2012-01-124-12/+12
| | |
* | | Ensure @last_column is cleared after visiting objectNorman Clarke2012-01-071-1/+1
| | |
* | | calling cache methods against the connectionAaron Patterson2011-11-192-22/+16
| | |
* | | Add SelectManager#distinct to set/unset the Arel::Nodes::Distinct.new quantifierJon Leighton2011-11-041-0/+8
| |/ |/|
* | Allow using non-table alias as a rhs relation name, fix for #84 and #59JoelJuliano2011-10-301-1/+1
|/
* Proposed fix for issue 79 - https://github.com/rails/arel/issues/79 - Pass ↵jsanders2011-08-291-1/+1
| | | | the connection_pool to the ToSql initializer, rather than the engine itself.
* Support locking by default and disable it only for SQLite.Edgars Beigarts2011-08-265-13/+6
|
* Support locking in OracleEdgars Beigarts2011-08-261-0/+4
|
* Add SelectManager#source method to get the source of the ctxJon Leighton2011-08-111-0/+4
|
* Add SelectManager#projections= method to overwrite projectionsJon Leighton2011-08-111-0/+4
|
* add UpdateManager#key method to access the keyJon Leighton2011-08-111-0/+4
|
* Make it the responsibility of the connection to hold on to a visitor for ↵Jon Leighton2011-08-084-15/+15
| | | | generating SQL, rather than the TreeManager. (There is a related commit coming in Active Record.)
* Support update statements containing joinsJon Leighton2011-08-082-4/+5
|
* Remove short circuit evaluation and leave AST as it isDaniel Cadenas2011-08-032-22/+0
|
* Add nodes for boolean constantsDaniel Cadenas2011-08-036-1/+52
| | | | | | | | | | | | This is useful for dynamically created predicates e.g: expr1 = table.create_false expr2 = table.create_false expr1 = create_a_predicate() if some_condition expr2 = create_another_predicate() if some_other_condition table.where(expr1.and(expr2))
* Merge pull request #69 from thedarkone/oracle-order-by-updateAaron Patterson2011-07-261-0/+12
|\ | | | | Oracle does not allow ORDER BY/LIMIT in UPDATE queries
| * Oracle does not allow ORDER BY/LIMIT in UPDATE queries.thedarkone2011-07-261-0/+12
| |
* | supressing nested parenthesis in multiple unions on mysql. thanks jhtwong. ↵Aaron Patterson2011-07-201-0/+22
| | | | | | | | fixes #58
* | fix depth first visitor to support ascending and descending nodesAaron Patterson2011-06-291-0/+2
| |
* | Merge branch 'master' into Khronos/masterAaron Patterson2011-06-2713-38/+129
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: visitors can define their own cache strategy for dispatch. fixes #57 Break Ordering into Ascending/Descending nodes, allow reversal remove unnecessary guarding agains literal LIMIT and OFFSET support for MS SQL Include Arel::Predicates to Arel::Nodes::Function so you can do table[:id].count.eq(2) updating spec zomg prep release make sure thread runs do not cache sql literal values no longer use this instance variable
| * | visitors can define their own cache strategy for dispatch. fixes #57Aaron Patterson2011-06-271-4/+8
| | |
| * | Merge pull request #60 from arkadiyk/masterAaron Patterson2011-06-241-9/+59
| |\ \ | | | | | | | | Better support for MSSQL