Releases: mongodb/mongo-csharp-driver
.NET Driver Version 2.19.1 Release Notes
.NET Driver Version 2.19.1 Release Notes
This is a patch release that addresses some issues reported since 2.19.0 was released.
An online version of these release notes is available here.
The list of JIRA tickets resolved in this release is available at CSHARP JIRA project.
Documentation on the .NET driver can be found here.
Upgrading
There are no known backwards breaking changes in this release.
NET Driver Version 2.19.0 Release Notes
.NET Driver Version 2.19.0 Release Notes
This is the general availability release for the 2.19.0 version of the driver.
The main new features in 2.19.0 include:
- Atlas Search builders
- Default LinqProvider changed to LINQ3
- ObjectSerializer allowed types configuration
- Bucket and BucketAuto stages support in LINQ3
- Support Azure VM-assigned Managed Identity for Automatic KMS Credentials
- Native support for AWS IAM Roles
This version addresses CVE-2022-48282.
ObjectSerializer allowed types configuration
The ObjectSerializer
has been changed to only allow deserialization of types that are considered safe.
What types are considered safe is determined by a new configurable AllowedTypes
function (of type Func<Type, bool>
).
The default AllowedTypes
function is ObjectSerializer.DefaultAllowedTypes
which returns true for a number of well-known framework types that we have deemed safe.
A typical example might be to allow all the default allowed types as well as your own types. This could be accomplished as follows:
var objectSerializer = new ObjectSerializer(type => ObjectSerializer.DefaultAllowedTypes(type) || type.FullName.StartsWith("MyNamespace"));
BsonSerializer.RegisterSerializer(objectSerializer);
More information about the ObjectSerializer
is available in our FAQ.
Default LinqProvider changed to LINQ3
Default LinqProvider has been changed to LINQ3.
LinqProvider can be changed back to LINQ2 in the following way:
var connectionString = "mongodb://localhost";
var clientSettings = MongoClientSettings.FromConnectionString(connectionString);
clientSettings.LinqProvider = LinqProvider.V2;
var client = new MongoClient(clientSettings);
If you encounter a bug in LINQ3 provider, please report it in CSHARP JIRA project.
An online version of these release notes is available here.
The full list of issues resolved in this release is available at CSHARP JIRA project.
Documentation on the .NET driver can be found here.
.NET Driver Version 2.18.0 Release Notes
.NET Driver Version 2.18.0 Release Notes
This is the general availability release for the 2.18.0 version of the driver.
The main new features in 2.18.0 include:
- Snappy compression now uses a managed implementation
- ZStandard compression now uses a managed implementation
- Cache AWS credentials when possible
- New cross driver standard logging support
- Support for $documents aggregation pipeline stage
An online version of these release notes is available at:
The full list of JIRA issues resolved in this release is available at:
Documentation on the .NET driver can be found at:
.NET Driver Version 2.17.1 Release Notes
.NET Driver Version 2.17.1 Release Notes
This is a patch release that fixes a potential data corruption bug in RewrapManyDataKey
when rotating encrypted data encryption keys backed by GCP or Azure key services.
The following conditions will trigger this bug:
- A GCP-backed or Azure-backed data encryption key being rewrapped requires fetching an access token for decryption of the data encryption key.
The result of this bug is that the key material for all data encryption keys being rewrapped is replaced by new randomly generated material, destroying the original key material.
To mitigate potential data corruption, upgrade to this version or higher before using RewrapManyDataKey
to rotate Azure-backed or GCP-backed data encryption keys. A backup of the key vault collection should always be taken before key rotation.
An online version of these release notes is available at:
The list of JIRA tickets resolved in this release is available at:
Documentation on the .NET driver can be found at:
http://mongodb.github.io/mongo-csharp-driver/
Upgrading
There are no known backwards breaking changes in this release.
.NET Driver Version 2.17.0 Release Notes
.NET Driver Version 2.17.0 Release Notes
This is the general availability release for the 2.17.0 version of the driver.
The main new features in 2.17.0 include:
- Support for MongoDB server version 6.0.0 GA
- [BETA] Support for Queryable Encryption
- LINQ3 bug fixes and improvements
- Add arbitrary aggregation stages to LINQ queries using
IMongoQueryable.AppendStage()
method (LINQ3) - Support for
$topN
and related accumulators in$group
aggregation stage
EstimatedDocumentCount and Stable API
EstimatedDocumentCount
is implemented using the count
server command. Due to an oversight in versions
5.0.0-5.0.8 of MongoDB, the count
command, which EstimatedDocumentCount
uses in its implementation,
was not included in v1 of the Stable API. If you are using the Stable API with EstimatedDocumentCount
,
you must upgrade to server version 5.0.9+ or set strict: false
when configuring ServerApi
to avoid
encountering errors.
For more information about the Stable API see:
https://mongodb.github.io/mongo-csharp-driver/2.16/reference/driver/stable_api/
An online version of these release notes is available at:
The full list of JIRA issues resolved in this release is available at:
Documentation on the .NET driver can be found at:
.NET Driver Version 2.16.1 Release Notes
.NET Driver Version 2.16.1 Release Notes
This is a patch release that addresses some issues reported since 2.16.0 was released.
An online version of these release notes is available at:
The list of JIRA tickets resolved in this release is available at:
Documentation on the .NET driver can be found at:
http://mongodb.github.io/mongo-csharp-driver/
Upgrading
There are no known backwards breaking changes in this release.
.NET Driver Version 2.16.0 Release Notes
This is the general availability release for the 2.16.0 version of the driver.
The main new features in 2.16.0 include:
Support for MongoDB server version 6.0.0
[BETA] Support for Queryable Encryption
Support for creating collections with clustered indexes
Use count command for estimatedDocumentCount
LINQ3 bug fixes and improvements
Support for carry forward ($locf) and numerical/date densification ($densify)
Support for limit in $filter expressions
Support point-in-time pre-/post-images in change streams
Preemptively cancel in-progress operations when SDAM heartbeats timeout
EstimatedDocumentCount and Stable API
EstimatedDocumentCount is implemented using the count server command. Due to an oversight in versions 5.0.0-5.0.8 of MongoDB, the count command, which EstimatedDocumentCount uses in its implementation, was not included in v1 of the Stable API. If you are using the Stable API with EstimatedDocumentCount, you must upgrade to server version 5.0.9+ or set strict: false when configuring ServerApi to avoid encountering errors.
For more information about the Stable API see:
https://mongodb.github.io/mongo-csharp-driver/2.16/reference/driver/stable_api/
An online version of these release notes is available at:
The full list of JIRA issues resolved in this release is available at:
Documentation on the .NET driver can be found at:
.NET Driver Version 2.15.1 Release Notes
This is a patch release that addresses some issues reported since 2.15.0 was released.
An online version of these release notes is available at:
The list of JIRA tickets resolved in this release is available at:
Documentation on the .NET driver can be found at:
http://mongodb.github.io/mongo-csharp-driver/
Upgrading
There are no known backwards breaking changes in this release.
.NET Driver Version 2.15.0 Release Notes
This is the general availability release for the 2.15.0 version of the driver.
The main new features in 2.15.0 include:
- Reimplement CMAP Maintance and SDAM threads to use dedicated threads
- Support for Window Functions using $setWindowFields
- Support $merge and $out executing on secondaries
- Publish symbols to NuGet.org Symbol Server and add Source Link support for improved debugging experience
- Switch to using maxWireVersion rather than buildInfo to determine feature support
- Support 'let' option for multiple CRUD commands
- Support authorizedCollections option for listCollections helpers
- Add support for 'comment' field in multiple commands for profiling
- Upgrade DnsClient.NET up to 1.6.0. This should address problems that some users have had in containerized environments like Kubernetes.
An online version of these release notes is available at:
The full list of JIRA issues resolved in this release is available at:
Documentation on the .NET driver can be found at:
.NET Driver Version 2.14.1 Release Notes
.NET Driver Version 2.14.1 Release Notes
This is a patch release that addresses some issues reported since 2.14.0 was released.
An online version of these release notes is available at:
The list of JIRA tickets resolved in this release is available at:
Documentation on the .NET driver can be found at:
http://mongodb.github.io/mongo-csharp-driver/
Upgrading
There are no known backwards breaking changes in this release.