Bug fixes
Fix quoting LIMIT values on Oracle visitor.
Bug fixes
Fix file permission problem on the gem package
Bug fixes
Stop quoting LIMIT values.
Enhancements
Remove deprecated `Arel::Expression`
Remove deprecated `Arel::SqlLiteral`
Remove deprecated `SelectManager#joins`
Remove deprecated `SelectManager#to_a`
Remove deprecated `Arel::Sql::Engine`
Remove deprecated `Arel::InnerJoin` constant
Remove deprecated `Arel::OuterJoin` constant
Enhancements
Remove deprecated code
Bug Fixes
Fix serializing a relation when calling `to_yaml`
* Bug Fixes * Fix `SqlLiteral` YAML serialization * PostgreSQL bugfix for invalid SQL in subqueries
Enhancements
Cache visitor dispatch on a per-visitor basis
Improve performance of uniq across a large number of nodes
Bug Fixes
Make visitors threadsafe by removing @last_column
Support `columns_for_distinct` with Oracle adapter
Enhancements
Support ANSI 2003 window functions
Bug Fixes
Fix joins in Informix
Enhancements
Added a module for visiting and transforming bind values
Fix in [] to be false, not in [] to be true
Bug Fixes
Revert fix for LIMIT / OFFSET when query is ordered in Oracle
Bug Fixes
Fixed LIMIT / OFFSET when query is ordered in Oracle
Enhancements
Support connection pool and schema cache
Bug Fixes
Conditions with no column can be followed by other conditions in Postgres
Enhancements
Added a module for visiting and transforming bind values
Enhancements
Support LOCK
Allow using non-table alias as a right-hand relation name
Added SelectManager#distinct
Enhancements
Added UpdateManager#key to access the key value
Added SelectManager#projections= to override any existing projections
Added SelectManager#source to get the source of the last select core in the AST
Bug Fixes
The database connection caches visitors for generating SQL.
FALSE and TRUE nodes can be constructed.
Fixed ORDER BY / LIMIT clauses for UPDATE statements in Oracle.
Bug Fixes
Fix depth-first traversal to understand ascending / descending nodes.
Parenthesis are suppressed with nested unions in MySQL. Thanks jhtwong!
Bug Fixes
Fixed broken gem build.
Bug Fixes
Visitors can define their own cache strategy so caches are not shared. Fixes #57
Informix support fixed. Thanks Khronos.
Ordering nodes broken to subclasses. Thanks Ernie Miller!
Reversal supported in ordering nodes. Thanks Ernie Miller!
Bug fixes
Fixed thread safety bug in ToSql visitor. Thanks Damon McCormick and Cameron Walters!
Enhancements
AST is now Enumerable
AND nodes are now n-ary nodes
SQL Literals may be used as Attribute names
Added Arel::Nodes::NamedFunction for representing generic SQL functions
Added Arel::Crud#create_insert for building an insert manager.
SQL Literals are allowed for values in INSERT statements.
Math operations have been added to attributes, thanks to Vladimir Meremyanin.
Bug fixes
MSSQL adds TOP to sub selects
Assigning nil to take() removes LIMIT from statement.
Assigning nil to offset() removes OFFSET from statement.
TableAlias leg ordering fixed
Deprecations
Calls to `insert` are deprecated. Please use `compile_insert` then call
`to_sql` on the resulting object and execute that SQL.
Calls to `update` are deprecated. Please use `compile_update` then call
`to_sql` on the resulting object and execute that SQL.
Calls to `delete` are deprecated. Please use `compile_delete` then call
`to_sql` on the resulting object and execute that SQL.
Arel::Table#joins is deprecated and will be removed in 3.0.0 with no
replacement.
Arel::Table#columns is deprecated and will be removed in 3.0.0 with no
replacement.
Arel::Table.table_cache is deprecated and will be removed in 3.0.0 with no
replacement.
Arel::Nodes::And.new takes a single list instead of left and right.
Arel::Table#primary_key is deprecated and will be removed in 3.0.0 with no
replacement.
Arel::SelectManager#where_clauses is deprecated and will be removed in
3.0.0 with no replacement.
Arel::SelectManager#wheres is deprecated and will be removed in
3.0.0 with no replacement.
Bug Fixes
Custom LOCK strings are allowed. Fixes LH # 6399 rails.lighthouseapp.com/projects/8994/tickets/6399-allow-database-specific-locking-clauses-to-be-used
Strings passed to StringManager#on will be automatically tagged as SQL literals. Fixes Rails LH #6384 rails.lighthouseapp.com/projects/8994/tickets/6384-activerecord-303-and-3-0-stable-generate-invalid-sql-for-has_many-through-association-with-conditions
Bug Fixes
Added set operation support
Fixed problems with *_any / *_all methods.
Bug Fixes
Limit members are visited
Fixing MSSQL TOP support
Bug Fixes
Rails 3.0.x does not like that Node is Enumerable, so removing for now.
Enhancements
Arel::Visitors::DepthFirst can walk your AST depth first
Arel::Nodes::Node is enumerable, depth first
Bug fixes
lock will lock SELECT statements “FOR UPDATE” on mysql
Nodes::Node#not factory method added for creating Nodes::Not nodes
Added an As node
Deprecations
Support for Subclasses of core classes will be removed in Arel version 2.2.0
Bug fixes
Speed improvements for Range queries. Thanks Rolf Timmermans!
Bug fixes
Fixing Oracle support
Added a visitor for “Class” objects
Bug fixes
MySQL selects from DUAL on empty FROM
Visitor translates nil to NULL
Visitor translates Bignum properly
Bug fixes
Enhancements
Recreate library using the Visitor pattern. en.wikipedia.org/wiki/Visitor_pattern
Enhancements
Introduced “SQL compilers” for query generation.
Added support for Oracle (Raimonds Simanovskis) and IBM/DB (Praveen Devarao).
Improvements to give better support to Active Record.
Enhancements
Bump dependency version of activesupport to 3.0.0.beta
* Ruby 1.9 compatibility * Many improvements to support the Arel integration into Active Record (see `git log v0.1.0..v0.2.0`) * Thanks to Emilio Tagua and Pratik Naik for many significant contributions!
1 major enhancement
Birthday!