Releases: mongodb/mongo-ruby-driver
2.20.0
Version 2.20.0 of the Ruby driver for MongoDB is released. This adds the following new features:
- Connection strings no longer require a slash between the hosts and the options. E.g., "mongodb://example.com?w=1" and "mongodb://example.com/?w=1" are both valid connection strings now. (https://jira.mongodb.org/browse/RUBY-3329)
- Container runtime and orchestration metadata for the client environment are now sent to the server for analytics purposes. (https://jira.mongodb.org/browse/RUBY-3298)
- When connecting to a CosmosDB (Azure) or DocumentDB (Amazon) instance, a warning message will now be logged. (https://jira.mongodb.org/browse/RUBY-3296)
- When attempting a retry of a read or write operation in a sharded topology, the retry will be attempted on a different mongos instance, if possible. (https://jira.mongodb.org/browse/RUBY-2748)
- Add support for the newly-released Ruby-BSON version 5.0.
- Support for Ruby 2.5 and 2.6 has been discontinued. Support for Ruby 2.7 and JRuby 9.2 has been deprecated, and will be discontinued in a future driver version. Support for JRuby 9.4 has been added.
This release also fixes the following user-facing issues:
- The driver will now raise an error if
start_transaction
is invoked and the server deployment does not support transactions. (https://jira.mongodb.org/browse/RUBY-1791) - Encountering a network error when a session is live will mark the session dirty and discard it, preventing the session from being reused when it is likely to fail. (https://jira.mongodb.org/browse/RUBY-1813)
- Tailable cursors would terminate early, after reading existing documents, instead of waiting for more. (https://jira.mongodb.org/browse/RUBY-3332)
- There was an issue where writes could fail with an exception if no session was active. (https://jira.mongodb.org/browse/RUBY-3358)
2.19.3
This is a patch release that adds support for:
2.19.2
This is a patch release that fixes the following issue:
2.18.3
This is a patch release that fixes the following issue:
2.17.4
This is a patch release that fixes the following issue:
2.16.4
This is a patch release that fixes the following issue:
2.19.1
This patch release in the 2.19 series fixes the following issue:
RUBY-3284 Connection Pool does not open new connections when needed
2.19.0
This feature release of the Ruby driver supports MongoDB version 7.0. It includes the following new features:
- RUBY-3066 Cache AWS Credentials Where Possible
- RUBY-2732 Add native support for AWS IAM Roles for service accounts, EKS in particular
- RUBY-3049 Provide access to raw result document when the server returns an error for a command
- RUBY-2989 Obtain AWS credentials for CSFLE in the same way as for MONGODB-AWS
- RUBY-3088 Support the Azure VM-assigned Managed Identity for Automatic KMS Credentials
- RUBY-3005 Support for Range Indexes
- RUBY-2512 Support AWS authentication with temporary credentials in CSFLE
- RUBY-3062 Add support for GCP attached service accounts when using GCP KMS
The following issues were addressed:
- RUBY-3079 Propagate Original Error for Write Errors Labeled NoWritesPerformed
- RUBY-3104 Collection create method does not support some options
- RUBY-3095 SMC options are not correctly converted to Ruby options
The following minor improvements were made:
- RUBY-3252 Show user friendly error if ffi is not installed
- RUBY-3052 Automatically create Queryable Encryption keys
- RUBY-3185 Remove getNonce command usage for 6.2+
- RUBY-3187 Permit tlsDisableOCSPEndpointCheck in KMS TLS options
- RUBY-2495 Rate limit new connection creations (maxConnecting)
- RUBY-2927 Preemptively cancel in progress operations when SDAM heartbeats timeout
- RUBY-1768 URI serialization to string
- RUBY-2609 Enable TCP_USER_TIMEOUT by default when possible
- RUBY-3105 Swallow SocketError when closing cursor
- RUBY-3068 Expose rich field information in the updateDescription
- RUBY-1595 Improve error reporting when symbol/string is passed as read preference
- RUBY-3081 Do not try to connect to mongocryptd if shared library is available
2.18.2
This patch release in the 2.18 series adds the following new features:
- RUBY-1253 Cursor iteration should complete abnormally when another thread closes the cursor
- RUBY-3187 Permit tlsDisableOCSPEndpointCheck in KMS TLS options
The following issues have also been addressed:
2.18.1
This patch release in the 2.18 series adds the following new feature:
The following issues have also been addressed: