From dc4abf490f73aca20093d6451da6ce2b84a80eab Mon Sep 17 00:00:00 2001 From: BorisDog Date: Thu, 26 Jan 2023 12:18:08 -0800 Subject: [PATCH 1/7] Release notes for 2.19.0. --- Release Notes/Release Notes v2.19.0.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 Release Notes/Release Notes v2.19.0.md diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md new file mode 100644 index 00000000000..6de92aadfe4 --- /dev/null +++ b/Release Notes/Release Notes v2.19.0.md @@ -0,0 +1,25 @@ +# .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 +* Support for Range Indexes preview +* 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 + +An online version of these release notes is available at: + +https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.19.0.md + +The full list of JIRA issues resolved in this release is available at: + +https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.19.0%20ORDER%20BY%20key%20ASC + +Documentation on the .NET driver can be found at: + +https://mongodb.github.io/mongo-csharp-driver/ From 357c44251b9622491ea1f03f02ae674a1a40c1e7 Mon Sep 17 00:00:00 2001 From: BorisDog Date: Thu, 26 Jan 2023 14:17:39 -0800 Subject: [PATCH 2/7] - Docs link update --- Release Notes/Release Notes v2.19.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md index 6de92aadfe4..8dd08e4f9c1 100644 --- a/Release Notes/Release Notes v2.19.0.md +++ b/Release Notes/Release Notes v2.19.0.md @@ -22,4 +22,4 @@ https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%2 Documentation on the .NET driver can be found at: -https://mongodb.github.io/mongo-csharp-driver/ +https://www.mongodb.com/docs/drivers/csharp/ From e9cd0f1e91e89f8ba973ba4d32a4ba3b4bb07fb7 Mon Sep 17 00:00:00 2001 From: BorisDog Date: Thu, 26 Jan 2023 14:38:55 -0800 Subject: [PATCH 3/7] - Docs link update --- Release Notes/Release Notes v2.19.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md index 8dd08e4f9c1..01ae2af03a2 100644 --- a/Release Notes/Release Notes v2.19.0.md +++ b/Release Notes/Release Notes v2.19.0.md @@ -22,4 +22,4 @@ https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%2 Documentation on the .NET driver can be found at: -https://www.mongodb.com/docs/drivers/csharp/ +https://www.mongodb.com/docs/drivers/csharp/v2.19/ From dcb25cdf2a39678b7c5a550e2a7a95b1a80c8c00 Mon Sep 17 00:00:00 2001 From: BorisDog Date: Fri, 27 Jan 2023 08:03:13 -0800 Subject: [PATCH 4/7] - Breaking changes info --- Release Notes/Release Notes v2.19.0.md | 31 ++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md index 01ae2af03a2..ef2ab152096 100644 --- a/Release Notes/Release Notes v2.19.0.md +++ b/Release Notes/Release Notes v2.19.0.md @@ -12,6 +12,37 @@ The main new features in 2.19.0 include: * Support Azure VM-assigned Managed Identity for Automatic KMS Credentials * Native support for AWS IAM Roles +### 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). +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 at FAQ page at: + +https://www.mongodb.com/docs/drivers/csharp/v2.19/ + + +### 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 at: + +https://jira.mongodb.org/projects/CSHARP/issues + An online version of these release notes is available at: https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.19.0.md From c31b0154081b681525d56f7974e54b91b0b0964c Mon Sep 17 00:00:00 2001 From: BorisDog Date: Fri, 27 Jan 2023 08:04:23 -0800 Subject: [PATCH 5/7] - Styling --- Release Notes/Release Notes v2.19.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md index ef2ab152096..24726b2c71a 100644 --- a/Release Notes/Release Notes v2.19.0.md +++ b/Release Notes/Release Notes v2.19.0.md @@ -15,8 +15,8 @@ The main new features in 2.19.0 include: ### 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). -The default AllowedTypes function is ObjectSerializer.DefaultAllowedTypes which returns true for a number of well-known framework types that we have deemed safe. +What types are considered safe is determined by a new configurable `AllowedTypes` function (of type `Func`). +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: ``` From 360bb91928d6e52fa546982f68d4775a21a1b851 Mon Sep 17 00:00:00 2001 From: BorisDog Date: Fri, 27 Jan 2023 09:29:18 -0800 Subject: [PATCH 6/7] - PR feedback --- Release Notes/Release Notes v2.19.0.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md index 24726b2c71a..846a4dcbbd8 100644 --- a/Release Notes/Release Notes v2.19.0.md +++ b/Release Notes/Release Notes v2.19.0.md @@ -24,9 +24,7 @@ var objectSerializer = new ObjectSerializer(type => ObjectSerializer.DefaultAllo BsonSerializer.RegisterSerializer(objectSerializer); ``` -More information about the ObjectSerializer is available at FAQ page at: - -https://www.mongodb.com/docs/drivers/csharp/v2.19/ +More information about the `ObjectSerializer` is available in [our FAQ](https://www.mongodb.com/docs/drivers/csharp/v2.19/faq). ### Default LinqProvider changed to LINQ3 @@ -39,9 +37,8 @@ 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 at: +If you encounter a bug in LINQ3 provider, please report it in [CSHARP JIRA project](https://jira.mongodb.org/projects/CSHARP/issues). -https://jira.mongodb.org/projects/CSHARP/issues An online version of these release notes is available at: From a6801274d20741464ca535c87e1495c8f721dcab Mon Sep 17 00:00:00 2001 From: BorisDog Date: Fri, 27 Jan 2023 09:36:40 -0800 Subject: [PATCH 7/7] - Links update --- Release Notes/Release Notes v2.19.0.md | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/Release Notes/Release Notes v2.19.0.md b/Release Notes/Release Notes v2.19.0.md index 846a4dcbbd8..107be22d3c1 100644 --- a/Release Notes/Release Notes v2.19.0.md +++ b/Release Notes/Release Notes v2.19.0.md @@ -26,7 +26,6 @@ BsonSerializer.RegisterSerializer(objectSerializer); More information about the `ObjectSerializer` is available in [our FAQ](https://www.mongodb.com/docs/drivers/csharp/v2.19/faq). - ### Default LinqProvider changed to LINQ3 Default LinqProvider has been changed to LINQ3. LinqProvider can be changed back to LINQ2 in the following way: @@ -39,15 +38,8 @@ var client = new MongoClient(clientSettings); ``` If you encounter a bug in LINQ3 provider, please report it in [CSHARP JIRA project](https://jira.mongodb.org/projects/CSHARP/issues). +An online version of these release notes is available [here](https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.19.0.md). -An online version of these release notes is available at: - -https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Release%20Notes%20v2.19.0.md - -The full list of JIRA issues resolved in this release is available at: - -https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.19.0%20ORDER%20BY%20key%20ASC - -Documentation on the .NET driver can be found at: +The full list of issues resolved in this release is available at [CSHARP JIRA project](https://jira.mongodb.org/issues/?jql=project%20%3D%20CSHARP%20AND%20fixVersion%20%3D%202.19.0%20ORDER%20BY%20key%20ASC). -https://www.mongodb.com/docs/drivers/csharp/v2.19/ +Documentation on the .NET driver can be found [here](https://www.mongodb.com/docs/drivers/csharp/v2.19/).