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.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/extent-framework/extentreports-csharp/network/alerts).
Bumps MongoDB.Driver from 2.12.0 to 2.19.0.
Release notes
Sourced from MongoDB.Driver's releases.
... (truncated)
Commits
3db6a36
Release notes for 2.19.0. (#1013)790f123
CSHARP-4475: Add an AllowedTypes filter to ObjectSerializer.8993daa
CSHARP-4453: Support Bucket and BucketAuto stages in LINQ3.ec46c34
CSHARP-4490: Fix tests related to asserting wildcardProjection output. (#1011)9ee046b
CSHARP-4182: Support for Range Indexes. (#988)9189a58
CSHARP-4440: Incorporate MongoDB.Labs.Search library (#989)0bb42fa
CSHARP-4255: Fix bug and some tests. (#993)c0c521e
CSHARP-4449: Implement Find projections in LINQ3.396830c
CSHARP-4468: LINQ V3 SelectMany + GroupBy results with redundant $push within...70ed174
CSHARP-4463: Add aws auth connectivity examples. (#1004)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show