Releases: mongodb/mongoid
7.0.7
This patch release in the 7.0 series fixes one issue:
7.1.0
Breaking change: the principal improvement in Mongoid 7.1 is the unified treatment of logical operations when building queries (i.e., operating on Criteria
objects). This makes Mongoid's behavior match that of ActiveRecord, and results in consistent queries being constructed regardless of the mechanism used to construct them. Please carefully review the documentation here, specifically the section on operator combinations, and audit your application for uses of logical operations that changed behavior.
The following improvements have been made since 7.1.0.rc0:
The following changes have been made since 7.1.0.rc0:
- MONGOID-4830 Remove #one method from has_many associations (the #one method was added in 7.1.0.rc0, there should be no impact to applications using Mongoid 7.0 or previous versions)
The following bugs have been fixed:
- MONGOID-4832 Storing false values in fields of Array and Hash types fails but not in an expected way
As of version 7.1, Mongoid supports Ruby 2.3+ and JRuby 9.2. Support for Ruby 2.2 and JRuby 9.1 has been dropped.
7.0.6
This maintenance release in the 7.0.x series fixes the following issues:
- MONGOID-4658 Fix & integration test querying by TimeWithZone via driver
- MONGOID-4770 Mongoid does not automatically require driver ActiveSupport compatibility
- MONGOID-4718 Dynamic attribute readers/writers fail to define when attribute name has special chars
- MONGOID-4803 Criteria#not mutates receiver
- MONGOID-4832 Storing false values in fields of Array and Hash types fails but not in an expected way
7.1.0.rc0
This is a preview release of the next feature release of Mongoid - version 7.1.0.
The principal improvement in Mongoid 7.1 is the unified treatment of logical operations when building queries (i.e., operating on Criteria
objects). This makes Mongoid's behavior match that of ActiveRecord, and results in consistent queries being constructed regardless of the mechanism used to construct them. The following tickets cover individual changes made:
- MONGOID-4697 Implement Arel-style "and", "or" and "not" combination of scopes
- MONGOID-4808 Require that Criteria strategies are explicitly requested, use $and behavior by default for all/in/nin
- MONGOID-4810 Require criteria methods be provided arguments
- MONGOID-4806 Produce the same query shapes with Criteria#where and Criteria#and
- MONGOID-4689 Mongoid::Criteria#find searches globally, does not restrict to criteria
- MONGOID-4813 not does not negate where with string argument
- MONGOID-4805 Criteria#not generates invalid queries when called with keyword arguments
Mongoid 7.1 also includes the following other query-related bug fixes:
- MONGOID-4460 Date.mongoize(String) should not convert string to local time first
- MONGOID-4673 Fix DateTime evolvement to UTC time
- MONGOID-4664 Consistently transform times for queries
- MONGOID-4769 embeds_many mishandles positional projections (foo.$)
- MONGOID-4672 Default order in
embeds_many
association causes association to use/return stale data - MONGOID-2681 Using #only with embedded documents sets omitted fields to default values
The following other assorted improvements and bug fixes have been made:
- MONGOID-4648 HABTM with foreign_key & primary_key set does not create reverse association
- MONGOID-4593 Model.set hash merge behavior does not match $set
- MONGOID-4652 Option to join multiple allow atomic persistence contexts into a single context
- MONGOID-4562 Accept integers for Mongoid::Config.log_level
- MONGOID-4797 Change default log destination to stderr
- MONGOID-4741 Include Mongoid::Timestamps in generated models by default
- MONGOID-4533 Deprecate Symbol field type
5.4.1
This is a bug fix release in the Mongoid 5.x line addressing one issue:
7.0.5
This maintenance release of the 7.0.x series primarily adds support for Rails 6.0. The following tickets have been resolved:
7.0.4
This maintenance release of the 7.0.x series primarily addresses a class loading regression introduced in the 7.0.3 release. The following tickets have been resolved:
- MONGOID-4749 belongs_to :name, class_name: '::SomeClass' raises an exception
- MONGOID-4750 Association definitions can trigger autoloading and cause NameError's
- MONGOID-4742 String#numeric? can return values other than true & false
- MONGOID-4743 String#numeric? incorrectly uses ^ and $ anchors and groups
7.0.3
This maintenance release of the 7.0.x series has the following notable improvements:
- MONGOID-4728 Add Support for $eq operator in Matchable
- MONGOID-4729 Skip eager loading query if all keys are nil
- MONGOID-4524 Combine options when nesting PersistenceContexts on the same object
- MONGOID-4631 Log Mongoid runtime per Rails controller action
- MONGOID-4666 Allow Regexp fields to be set to nil
- MONGOID-4681 Replace BigDecimal.new with BigDecimal()
- MONGOID-4702 Add Symbol#within_box criterion for geo_spacial
The following notable issues have been fixed:
- MONGOID-4679 Can't clone documents with embeds_many and store_as on 7.0.x
- MONGOID-4598 In Mongoid 7.0.1 clone, dup method is not working with embeds_many -> embeds_many relations
- MONGOID-4733 Document#as_json with :compact option returns nil if none of the fields are nil
- MONGOID-4624 scoped text searches wipe all previous criteria
- MONGOID-4626 Querying unscoped associations ignores primary_key/foreign_key depending on association
- MONGOID-4630 without_default_scope suppresses default scopes of other models
- MONGOID-4645 belongs_to in namespaced children fails to detect a non-namespaced association
- MONGOID-4659 Query cache returns narrowed down results when a previous query used #first
- MONGOID-4521 QueryCache ignores getMore requests
6.4.4
This maintenance release in the 6.4.x series contains the following notable improvements:
- MONGOID-4681 Replace BigDecimal.new with BigDecimal()
- MONGOID-4631 Log Mongoid runtime per Rails controller action
- MONGOID-4666 Allow Regexp fields to be set to nil
- MONGOID-4702 Add Symbol#within_box criterion for geo_spacial
The following bugs were aso fixed:
- MONGOID-4624 scoped text searches wipe all previous criteria
- MONGOID-4630 without_default_scope suppresses default scopes of other models
- MONGOID-4733 Document#as_json with :compact option returns nil if none of the fields are nil
6.4.3 release was skipped due to a certificate issue.
6.4.2
This patch release has the following minor changes:
- MONGOID-4539 #create_with attrs should not be used in where query
- MONGOID-4578 Fix Settable: allow setting a nested value to a non-string
- MONGOID-4608 Add Nor matcher
- MONGOID-4612 Map reduce with preference test failure
- MONGOID-4576 drop_dups: mark deprecated