Gid rid of rspec deprecation warnings
Fix _destroy check on nested attributes.

When passed an array, only on a 1-n situation with nested attributes,
the attributes were not properly getting converted to a hash with
indifferent access.

[ fix #2911 ]
[ close #2912 ]
Fix deprecations in sessions spec
Don't memoize collection_name and database_name.

[ fix #2893 ]
[ fix #2857 ]
Enable public-facing dirty attribute methods to cope with field aliases

Changeable uses db field names internally but should also be able to handle
aliases given to its public-facing methods.
(cherry picked from commit 9b67b050b3c7265d4d055a0d68029a6f4059ebc9)
Update changelog
scope with a proc which return nil should still be chainable

just like activerecord, the scope should always be chainable, so we can write
scope :before_date, ->(date) { where(:date.lt => date) if date}
instead of
scope :before_date, ->(date) { date ? where(:date.lt => date) : all}
Update changelog
Only add _type to IdentityMap if using inherited class

#2697 was forcing _type on all classe when pushing to identityMap. We must use the _type on the selector
only when using subclasses.
[Fixes #2916]
many builder to use selector with type when needed

[Related #2916]
Update changelog
Allow cyclic relations to be mixed.

[ fix #2883 ]
Fix rspec deprecation
add count(true) option, to use limit on count

[Fixes #2927]
Refactor count
Bump version
Added case insensitive uniqueness validation for localized fields
Update changelog
Loading new configuration clears old sessions.

[ fix #2961 ]
dup the query so the existing query is not modified