fix(NODE-5790): type error with $addToSet in bulkWrite #3956
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Backporting #3953 to 5x.
What is changing?
We update types to fix the error with $addToSet in bulkWrite.
Is there new documentation needed for these changes?
None
What is the motivation for this change?
NODE-5647
NODE-4664
Release Highlight
The type error with
$addToSet
inbulkWrite
was fixedPreviously the following code sample would show a type error:
It happened because the driver's
Document
type falls back toany
, and internally we could not distinguish whether or not this assignment was intentional and should be allowed.After this change, users can extend their types from
Document
/any
, or use properties ofany
type and we skip the$addToSet
validation in those cases.Double check the following
npm run check:lint
scripttype(NODE-xxxx)[!]: description
feat(NODE-1234)!: rewriting everything in coffeescript