Introduce CollectionChangeStreamOptions which allows to define the changeStreamPreAndPostImages of the createCollection command.
Original Pull Request: #4193
Update Javadoc to mention unit of measure for min/maxDistance depending on usage of geoJson.
Also remove unused imports from tests
See #4004
Original pull request: #4006.
$near and $nearSphere queries are not supported via countDocuments and the used aggregation match stage and need to be rewritten to $geoWithin. The existing logic did not cover usage of geoJson types, which is fixed now. In case of nearSphere it is also required to convert the $maxDistance argument (given in meters for geoJson) to radians which is used by $geoWithin $centerSphere.
Closes#4004
Original pull request: #4006.
Related to #2925
We now make sure to provide an id value that matches the desired target type when no id is set, and the property defines an explicit conversion target.
Previously a new ObjectId would have been generated which leads to type inconsistencies when querying for _id.
Closes#4026
Original pull request: #4057.
We now make sure to convert references in update operations targeting collection like fields when using eg. the push modifier.
Closes#4041
Original pull request: #4045.
We now provide a better worded exception message when trying to derive the collection name for a type that is not considered a user types (such as org.bson.Document).
Update the Javadoc to hint to the error.
Closes#4061
Original pull request: #4062.
We now make sure to apply the token to startAfter method of the driver. Before this change it had been incorrectly applied to resumeAfter.
Closes#4167.
Original pull request: #4168.
As of spring-projects/spring-framework#29125,
`StreamUtils..emptyInput()` is deprecated in favor of
`InputStream.nullInputStream()` from the JDK.
Closes: #4160
The Collation annotation mainly serves as a meta annotation that allows common access to retrieving collation values for annotated queries, aggregations, etc.
Original Pull Request: #4131