For instructions on upgrading to newer versions, visit mongoid.org.
-
#1109 Fixed validations not loading one to ones into memory.
-
#1107 Mongoid no longer wants required mongoid/railtie in application.rb
-
#1102 Fixed nested attributes deletion.
-
#1097 Reload now runs after_initialize callbacks.
-
#1079 Embeds many no longer duplicates documents.
-
#1078 Fixed array criteria matching on embedded documents.
-
#1028 Implement scoped on one-to-many and many-to-many relations.
-
#988 Many-to-many clear no longer deletes the child documents.
-
#977 Autosaving relations works also through nested attributes.
-
#972 Recursive embedding now handles namespacing on generated names.
-
#943 Don’t override Document#attributes.
-
#893 Verify count is not caching on many to many relations.
-
#815 Verify after_initialize is run in the correct place.
-
#793 Verify any_of scopes chain properly with any other scope.
-
#776 Fixed mongoid case quality when dealing with subclasses.
-
#747 Fixed complex criteria using its keys to render its string value.
-
#721 safely now properly raises validation errors when they occur.
-
#1082 Alias size and length to count on criteria. (Adam Greene)
-
#1044 When multiple relations are defined for the same class, always return the default inverse first if inverse_of is not defined.
-
#710 Nested attributes accept both id and _id in hashes or arrays.
-
#1047 Ignore nil values passed to embeds_man pushes and substitution. (Derick Bailey)
-
#1021, #719 Many to many relations dont trigger extra database queries when pushing new documents.
-
#607 Calling create on large associations does not load the entire relation.
-
#1064 Mongoid::Paranoia should respect unscoped and scoped.
-
#1026 model#update_attribute now can update booleans to false.
-
#618 Crack XML library breaks Mongoid by adding #attributes method to the String class. (Stephen McGinty)
-
Mongoid now requires MongoDB 1.8.x in order to properly support the #bit and #rename atomic operations.
-
Traditional slave support has been removed from Mongoid. Replica sets should be used in place of traditional master and slave setups.
-
Custom field serialization has changed. Please see serializable for changes.
-
The dirty attribute tracking has been switched to use ActiveModel, this brings many bug fixes and changes:
-
#756 After callbacks and observers see what was changed instead of changes just made being in previous_changes
-
#434 Documents now are flagged as dirty when brand new or the state on instantiation differs from the database state. This is consistent with ActiveRecord.
-
#323 Mongoid now supports [field]_will_change! from ActiveModel::Dirty
-
-
Mongoid model preloading in development mode now defaults to false.
-
:autosave => true on relational associations now saves on update as well as create.
-
Mongoid now has an identity map for simple find by id queries. See the website for documentation.
-
#1067 Fields now accept a :versioned attribute to be able to disable what fields are versioned with Mongoid::Versioning. (Jim Benton)
-
#587 Added order preference to many and many to many associations (Gregory Man)
-
Added ability to chain order_by statements (Gregory Man)
-
#961 Allow arbitrary Mongo::Connection options to pass through Mongoid::Config::Database object. (Morgan Nelson)
-
Enable autosave for many to many references. (Dave Krupinski)
-
The following explicit atomic operations have been added: Model#bit, Model#pop, Model#pull, Model#push_all, Model#rename, Model#unset.
-
Added exception translations for Hindi. (Sukeerthi Adiga)
-
#974 Fix attribute_present? to work correctly then attribute value is false, thanks to @nickhoffman (Gregory Man)
-
#960 create indexes rake task is not recognizing a lot of mongoid models because it has problems guessing their model names from filenames (Tobias Schlottke)
-
#874 Deleting from a M-M reference is one-sided (nickhoffman, davekrupinski)
-
Replace deprecated class_inheritable_hash dropped in Rails 3.1+ (Konstantin Shabanov)
-
Fix inconsistent state when replacing an entire many to many relation
-
Don’t clobber inheritable attributes when adding subclass field inheritance (Dave Krupinski)
-
#914 Querying embedded documents with ‘$or’ selector (Max Golovnia)
-
#514 Fix marshaling of documents with relation extensions (Chris Griego)
Metadata#extension now returns a Module, instead of a Proc, when an extension is defined.
-
#837 When allow_dynamic_fields is set to false and loading an embedded document with an unrecognized field, an exception is raised.
-
#963 Initializing array of embedded documents via hash regressed (Chris Griego, Morgan Nelson)
-
Mongoid::Config.reset resets the options to their default values.
-
Mongoid::Fields.defaults is memoized for faster instantiation of models.