Skip to content

Releases: mongodb/mongo-csharp-driver

.NET Driver Version 3.11.2 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 10 Sep 19:38

Important

This is a security patch release. It addresses two CVEs reported against the driver, along with a small number of related fixes. There are no public API changes and no application code changes are required to upgrade. Note that the shape of some queries generated by the LINQ provider and by GridFS has changed — see the individual tickets below.

This is a patch release that contains fixes and stability improvements:

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 3.11.1 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 27 Aug 21:48

Important

This is a security patch release. It addresses a number of CVEs reported against the driver and does not include any functional changes or API modifications. Upgrading is recommended for all users; no code changes are required on the application side.

This is a patch release that contains fixes and stability improvements:

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 3.11.0 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 12 Aug 14:16
d9c3c29

This is the general availability release for the 3.11.0 version of the driver.

The main new features in 3.11.0 include:

Fixes:

  • CSHARP-6125: Reject non-collection inner sequences in LINQ Join/LeftJoin

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 3.10.0 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 08 Jul 01:54
3e1d126

This is the general availability release for the 3.10.0 version of the driver.

Important

In-Use Encryption String (renamed from Text) API GA

The GA API requires mongodb server version 9.0. The preview API can continue to be used with pre-9.0 server versions.

The main new features in 3.10.0 include:

  • CSHARP-6017: Support LINQ LeftJoin for joins and includes
  • CSHARP-3791: Allow hint for unacknowledged writes using OP_MSG when supported by the server
  • CSHARP-5826: Add $top, $bottom, $topN and $bottomN expression operators
  • CSHARP-6024: Support ReadOnlySet Serialization
  • CSHARP-6020: Add builders for the doesNotAffect field for in, range, equals and compound Atlas Search operators
  • CSHARP-4216: Support $topN and similar accumulators in $setWindowFields
  • CSHARP-5750: Add support for new QE prefix/substring/suffix aggregation expression operators
  • CSHARP-5495: Support $concatArrays and $setUnion aggregation accumulators
  • CSHARP-6041: Add $setWindowFields support for the $minMaxScaler window operator
  • CSHARP-6091: Support checked arithmetic operators in LINQ translation
  • CSHARP-5984: Add QE prefix+suffix GA and rename API to string
  • CSHARP-6105: Add QE substring GA
  • CSHARP-5693: Allow Instantiated MongoClients to Send Client Metadata On-Demand

Improvements:

  • CSHARP-6094: Use minimum supported wire version for CompatibilityLevel when null
  • CSHARP-5964: Investigate a way to read into BsonBinaryData property if it's missed in the stored document
  • CSHARP-6093: Compile one-shot LINQ eval lambdas with preferInterpretation
  • CSHARP-6096: Optimize AsyncCursor<> disposal to consume less resources

Fixes:

  • CSHARP-5816: Insonsistent behavior of EnsureNoMemberMapConflicts for discriminator convention
  • CSHARP-5740: Remove duplicate read concern for operations in snapshot sessions
  • CSHARP-5846: Global GuidSerializer settings ignored for object-typed properties
  • CSHARP-5658: Queries using Equals with different types throw
  • CSHARP-6066: FilteredMongoCollectionBase.FindOneAndUpdate throws NullReferenceException when options is null
  • CSHARP-6080: Pool clear with closeInUseConnections leaks raw ObjectDisposedException to the application instead of a retryable connection error

Maintenance:

  • CSHARP-5746: Update $lookup prose test for MONGOCRYPT-793
  • CSHARP-6062: Add empty permissions section to PR workflow
  • CSHARP-6007: Mark Server version 4.2 as EOL from driver's PoV (Min server version as 4.4, minWireVersion as 9)
  • CSHARP-5992: Add LINQ translation benchmark suite
  • CSHARP-6030: Add case and diacritic sensitivity prose tests for text explicit encryption
  • CSHARP-5943: Add per-area AGENTS.md files and reviewer sub-agents
  • CSHARP-6071: Script to create a local Docker container with a single replica set
  • CSHARP-6100: Clarify status and semver treatment for shipped IWM driver APIs

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 3.9.0 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 27 May 20:52
8297e62

This is the general availability release for the 3.9.0 version of the driver.

Important

Next minor release will raise the minimum supported MongoDB Server version from 4.2 to 4.4. This is in accordance with MongoDB Software Lifecycle Schedules. Support for MongoDB Server 4.2 will be dropped in a future release!

The main new features in 3.9.0 include:

  • CSHARP-5567: Add a LINQ equivalent for $toHashedIndexKey
  • CSHARP-4901: Add support for SearchMeta facet without operator
  • CSHARP-5930: Allow registering the same encryption provider multiple times
  • CSHARP-5899: Add support for "flat" indexing method in vector search index builders
  • CSHARP-5931: Add builder support for $scoreFusion stage

Improvements:

  • CSHARP-3556: Use EndPointServerSelector in SingleServerBinding instead of busy wait
  • CSHARP-5611: Support ReadOnlySpan in ObjectId and eliminate the temporary byte array allocations

Fixes:

  • CSHARP-5967: Ensure SerializerFinder proper support of Parse method
  • CSHARP-5966: Add support of string.TrimStart and TrimEnd methods to SerializerFinder
  • CSHARP-5942: Fix serializer resolution for dictionary paths with numeric string keys
  • CSHARP-2868: Allow maxIdleTimeMS=0 and treat it as no idle time limit
  • CSHARP-5762: Avoid changing "filter" to "parentFilter" in previously supported case
  • CSHARP-5629: Respect BsonElement attribute in NamedIdMemberConvention
  • CSHARP-6029: Execute endSessions on ServerSessionPool close
  • CSHARP-6043: NullReferenceException in IEnumerableSerializerBase.Serialize when projecting nullable array with conditional Select
  • CSHARP-6040: Fix StackOverflowException in convention CouldApply on self-referencing IEnumerable<T> types

Maintenance:

  • CSHARP-6055: Update SharpCompress to remedy vulnerability
  • CSHARP-6023: Update libmongocrypt URLs for 1.18.0+
  • CSHARP-5943: Initial small AGENTS.md file for the C# driver
  • CSHARP-5671: Replace Artifactory with ECR for container image pulls

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 3.8.1 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 11 May 23:28
67b17d3

This is a patch release that addresses a security issue:

Known warning when restoring: SharpCompress NU1902

When restoring a project that references this driver with the .NET 8 SDK or newer, NuGet may emit the NU1902 audit warning for the transitive SharpCompress 0.30.1 dependency (GHSA-6c8g-7p36-r338 — directory traversal via IArchive.WriteToDirectory()). The driver does not use that API; SharpCompress is only used for in-memory ZLib stream compression of MongoDB wire-protocol messages, so the driver's usage does not expose consumers to this advisory. This issue will be addressed in an upcoming release (CSHARP-6037).

Documentation on the .NET driver can be found here.

.NET Driver Version 3.8.0 Release Notes

Choose a tag to compare

@sanych-sun sanych-sun released this 20 Apr 23:40
ae7cef9

This is the general availability release for the 3.8.0 version of the driver.

The main new features in 3.8.0 include:

Important

Added support for MongoDB ’s Intelligent Workload Management (IWM) and ingress connection rate limiting features. The driver now gracefully handles write-blocking scenarios and optimizes connection establishment during high-load conditions to maintain application availability. These features will be functional with MongoDB Server Version 9.0 and above. More details in CSHARP-5802: Client Backpressure Support

  • CSHARP-5882: Support storedSource in vector search indexes and returnStoredSource in $vectorSearch queries
  • CSHARP-5769: Implement hasAncestor, hasRoot, and returnScope for Atlas Search
  • CSHARP-5646: Implement vector similarity match expressions
  • CSHARP-5762: MongoDB Vector Search now supports vector search against nested embeddings and arrays of embeddings.
  • CSHARP-5884: Add new fields for Auto embedding in Atlas Vector search indexes

MongoDB v8.3 Compatible Features:

  • CSHARP-5852: Expression to determine the subtype of BinData field
  • CSHARP-5713: Allow native conversion from string to BSON object
  • CSHARP-5949: $convert should allow any type to be converted to string
  • CSHARP-5818: Allow users to generate a hash from a UTF-8 string or binary data
  • CSHARP-5950: Support base conversion in $convert
  • CSHARP-5847: Support Select/SelectMany/Where index overloads in LINQ provider
  • CSHARP-5828: Add Rerank stage builder
  • CSHARP-5656: Support Aggregation Operator to generate random object ids
  • CSHARP-5973: Support SkipWhile/TakeWhile index overloads in LINQ provider
  • CSHARP-5825: Support (de)serialization between BSON and EJSON
  • CSHARP-5655: Support regular expressions in $replaceAll search string and $split delimiter

Improvements:

  • CSHARP-5887: Simplify retryable read and writes
  • CSHARP-2593: Add numeric error code to default error message in NativeMethods.CreateException
  • CSHARP-2150: Add check that the serializer's ValueType matches the type when registering the serializer

Fixes:

  • CSHARP-5947: Increase SingleServerReadBinding timeout
  • CSHARP-2862: Check that max pool size is never less than min pool size in connection string
  • CSHARP-5935: Command activities may be skipped when using pooled connection
  • CSHARP-5952: SerializerFinder resolve wrong serializer for BsonDocument members

Maintenance:

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 3.7.1 Release Notes

Choose a tag to compare