-
Aliased
order
toorder_by
for compatibility with AR query methods. -
Added
reorder
to queryables to have a way to completely overwrite existing ordering instead of always having to merge. This takes the same syntax asorder
.
-
Origin 2 now only supports MongoDB 2.4.0 and higher.
-
#60 Array evolution no longer modifies in place.
-
Legacy geo selection has been removed, use geo_spacial now.
-
#48
not
negation no longer ignores parameters without expressions which follow them, but not negates them with$ne
instead.Previously: selection = query.not.where(field: 1) selection.selector # { "field" => 1 } Now: selection = query.not.where(field: 1) selection.selector # { "field" => { "$ne" => 1 }}
-
#82 Added support for $geoIntersects and $geoWithin queries via the geo_spacial method. Examples:
query.geo_spacial(:location.intersects_line => [[ 1, 10 ], [ 2, 10 ]]) query.geo_spacial(:location.intersects_point => [[ 1, 10 ]]) query.geo_spacial(:location.intersects_polygon => [[ 1, 10 ], [ 2, 10 ], [ 1, 10 ]]) query.geo_spacial(:location.within_polygon => [[ 1, 10 ], [ 2, 10 ], [ 1, 10 ]])
-
#83 Internal smart hashes (Smashes) now can get directly by key or alias. (Gosha Arinich)
-
#66 Array evolution now properly coerces non arrays into arrays. (Jared Wyatt)
-
#61
only
andwithout
can now be used together. It is up to the user to determine when this is valid or not. (Rodrigo Saito)
-
#77 Arrays can now be expanded when complex keys are preset. (Timersha Ziganshin)
-
#76 Hashes with nested values multiple levels are now expanded properly. (Timersha Ziganshin)
-
#75 Merging strategies now expand nested criteria properly. (Timersha Ziganshin)
-
#73 Negation now properly works for $gt/$lt etc queries. (Arthur Neves)
-
#62 Fixed time with zone require. (Julien Boyer)
-
#58 Retain milliseconds precision when evolving times. (Steve Valaitis)
-
#56 Selector values are no longer modified in place.
-
#55 Allow #only and #without to take array arguments. (Egor Lynko)
-
#51 hash equality works corectly with
Origin::Key
s (Gerad Suyderhoud){ :foo.all => [1, 2] } == { :foo.all => [1, 2] } #=> true
- #45 Fixed $not query negation with regular expressions. (Andrew Bennett)
- #44 Fixed serialization on deeply nested $and and $or queries. (Egor Lynko)
- #40 Allow $elemMatch queries to be expanded in where clauses, not just elem_match method calls.
- #40 Allow $elemMatch queries to be expanded.
- #39 Fixed errors when using forwarding when active support is not present.
- mongoid/mongoid#2170 Multi selection ($and/$or) now properly concats when merging two criteria.
- mongoid/mongoid#2165 Multi selection ($and/$or) now takes into account field aliases.
-
#38 Fixed issues around UTC time conversion of dates and date times:
DateTimes
already in UTC are not converted to UTC again.Dates
properly convert directly to UTC from numeric values.