Releases: mongodb/mongo-ruby-driver
2.13.0.beta1
This is a preview release of the next feature release of the Ruby MongoDB driver which will support MongoDB server 4.4.
This release includes the following new features:
- RUBY-1999 MONGODB-AWS authentication mechanism
- RUBY-1994 Shorter SCRAM conversations, RUBY-2168 Speculative authentication support
- RUBY-2126 Unified replica set discovery behavior
- Hint support RUBY-2097, RUBY-2148, RUBY-1972, RUBY-2001
- RUBY-2000 Support for allowDiskUse on find operations
- RUBY-2184 Driver support for server Hedged Reads
- RUBY-2221 'CommitQuorum' option support for 'createIndexes’ command on MongoDB 4.4
- RUBY-2181 Ensure that the WriteConcernError "errInfo" object is propagated
The following minor improvements were made:
- RUBY-2261 Reduce default keepalive time to align with Azure defaults
- RUBY-2137 Include JRuby version in app metadata
- RUBY-2230 Rescue write errors in GridFS for cleanup purposes in addition to read errors
- RUBY-1997 Handle absence of 'ns' field in index specifications returned from listIndexes
- RUBY-2041 Ensure server proof has been validated during SCRAM conversation
- RUBY-2272 Exceptions raised during address resolution are not mapped to Mongo::Error
2.12.1
This feature release of the Ruby driver for MongoDB adds two major features:
- Client-side encryption
- Extended JSON parsing
The following notable changes and bug fixes have been made since 2.12.0.rc0:
- RUBY-2219 Force read preference primaryPreferred in Single topology
- RUBY-2176 Provide a descriptive error message in CSE when AWS key or secret are empty strings
- RUBY-2189 Restart SRV monitor in Cluster#reconnect!
This release of the driver includes all bug fixes that are part of the 2.10-stable and 2.11-stable branches.
This release replaces version 2.12.0, which was erroneously created from the master tree and has been removed.
2.12.rc0
This feature release of the Ruby driver for MongoDB adds two major features:
- Client-side encryption
- Extended JSON parsing
The following notable improvements have been made:
- RUBY-1564 Support Client-side Field Level Encryption / FLE
- RUBY-1203 Implement Extended JSON functionality required for FLE
- RUBY-2142 Add filter option to Ruby list_collections method
- RUBY-1213 Cache SCRAM credentials
- RUBY-2091 Provide stack trace for ismaster failures in monitor
- RUBY-2162 Close sockets when connections fail
- RUBY-2172 Improve error reporting when nil and empty string are given to URI#get
- RUBY-1889 Auth exceptions now include server information
- RUBY-1151 Commands should have a limit of maxBsonObjectSize + 16K
- RUBY-2140 Socket liveness checks now time out
This release of the driver includes all bug fixes that are part of the 2.10-stable and 2.11-stable branches.
2.11.4
This patch release in the 2.11 driver series improves performance of the driver by not creating redundant sockets during address resolution.
2.10.4
This patch release in the 2.10 driver series adds Ruby 2.7 compatibility and addresses issues discovered since the 2.10.3 release. The following tickets have been closed:
- RUBY-2030 Client/Cluster construction fails when duplicate seed addresses are provided
- RUBY-2054 upsert option is not sent to legacy servers with w:0 due to string/symbol key mismatch
- RUBY-2059 Dependency on bson 4.6 forces driver 2.10.3 to require Ruby 2.3+/JRuby 9.2+
- RUBY-2055 Driver sends null pwd field in createUser when password is not specified
2.11.3
This patch release in the 2.11 driver series adds Ruby 2.7 compatibility and addresses issues discovered since the 2.11.2 release. The following tickets have been closed:
- RUBY-2091 Provide stack trace for ismaster failures in monitor
- RUBY-2030 Client/Cluster construction fails when duplicate seed addresses are provided
- RUBY-2054 upsert option is not sent to legacy servers with w:0 due to string/symbol key mismatch
- RUBY-2059 Dependency on bson 4.6 forces driver 2.10.3 to require Ruby 2.3+/JRuby 9.2+
- RUBY-2055 Driver sends null pwd field in createUser when password is not specified
2.11.2
This patch release in the 2.11 driver addresses an issue where the driver would stop monitoring the deployment when the nodes in the deployment changed their addresses. The full list of notable changes is below:
- RUBY-1601 Change server description server type method implementations to match SDAM spec
- RUBY-1888 Direct connection to RS primary with driver/node address mismatch follows SDAM specification regarding server type
- RUBY-1970 Allow authentication to all server types except arbiters
- RUBY-1889 Auth exceptions should include server information
2.11.1
This patch release in the 2.11 series fixes the following issue:
2.10.3
This patch release in 2.10 series fixes the following issues in the driver:
- RUBY-1986 Retry reads in legacy mode on OperationFailure errors that modern mode retries on
- RUBY-1980 Ensure cursor IDs are always encoded as 64-bit integers in BSON for getMore
- RUBY-1988 Ensure cursor IDs are always encoded as 64-bit integers in BSON when using killCursors
- RUBY-2004 Indicated attempt not always correct
2.11.0
This feature release of the Ruby driver for MongoDB adds two major features:
- A background thread in server connection pools to eagerly establish connections up to the minimum pool size
- SRV polling for sharded deployments
This release of the Ruby driver bumps the minimum required Ruby version to 2.3, as well as minimum supported JRuby version to 9.2.
The following notable changes have been made since 2.11.0.rc0:
- RUBY-1955 Log connection ids in command logger
- RUBY-1986 Retry reads in legacy mode on OperationFailure errors that modern mode retries on
- RUBY-1980 Ensure cursor IDs are always encoded as 64-bit integers in BSON for getMore
- RUBY-1988 Ensure cursor IDs are always encoded as 64-bit integers in BSON when using killCursors
- RUBY-1944 Fix background threads such as the Monitor unable to restart once stopped
- RUBY-1344 Accept write concern option in user management helpers
- RUBY-1777 Ensure that getMore right after a resume is retried in changestreams
- RUBY-1913 Fix X509 authentication not working
- RUBY-1945 Prohibit distinct(nil) call as server 4.4 rejects it