fix(NODE-6638): throw if all atomic updates are undefined #4519
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
Will throw on any update where all the atomic operations in the update are undefined and
ignoreUndefined
is true.What is changing?
hasAtomicUpdates
to throw when all updates are undefined andignoreUndefined
is true.Is there new documentation needed for these changes?
None
What is the motivation for this change?
NODE-6638
Release Highlight
Update operations will now throw if
ignoreUndefined
is true and all operations are undefined.When using any of the following operations they will now throw if all atomic operations in the update are undefined and the
ignoreUndefined
option istrue
. This is to avoid accidental replacement of the entire document with an empty document. Examples of this scenario:Double check the following
npm run check:lint
scripttype(NODE-xxxx)[!]: description
feat(NODE-1234)!: rewriting everything in coffeescript