Remove unused imports.
Simplify if & switch statements.
Use Set.of, List.of for unmodifiable collections.
Remove redundant usage of semicolon.
Fix broken references in Javadoc.
Fix Typos.
Extend value caching for MongoPersistentProperties.
See: #4555
Original pull request: #4556
We now use Flux.flatMapSequential(…) instead of concatMap as concatMap reduces the request size to 1. The change in backpressure/request size reduces parallelism and impacts the batch size by fetching 2 documents instead of considering the actual backpressure.
flatMapSequential doesn't tamper the requested amount while retaining the sequence order.
Closes: #4543
Original Pull Request: #4550
This commit makes sure to fail early if an annotated string based annotation does not contain a syntactically valid pipeline.
Original pull request: #4547Closes#4546
This commit ensures to pass on a potentially set FullDocumentBeforeChange option to the change stream iterable/publisher.
It also corrects false optional behavior within the change stream task which did some defaulting though the actual value is an optional one that must not be present.
Original pull request: #4541Closes#4495
This change publishes a build scan to ge.spring.io for every local build from an authenticated Spring committer and for CI where appropriate access tokens are available. The build will not fail if publishing fails.
This change also allows the build to benefit from local and remote build caching, providing faster builds for all contributors.
Additionally, the project will have access to all features of Gradle Enterprise such as:
- Dashboards to view all historical build scans, along with performance trends over time
- Build failure analytics for enhanced investigation and diagnosis of build failures
- Test failure analytics to better understand trends and causes around slow, failing, and flaky tests
See #4528
Limit exposure of API methods to package visibility.
Also remove fields and methods not directly required to support current feature scope.
Finally add missing since tags and provide additional tests.
See: #2971
This commit reduces the API surface of the ReadPreference annotation leaving fine grained control such as Tags to the Template API.
Next to supporting read preference for annotated queries we now also make sure to apply read preferences for annotated aggregation methods as well as predefined finder methods running queries.
See: #2971
Original Pull Request: #4503
The annotation enables a declarative style of defining the ReadPreference to use for individual or all repository queries.
Closes: #2971
Original Pull Request: #4503
Contextual information required for converting values are now passed on correctly when projecting id properties.
Closes: #4524
Original pull request: #4525
Replace duplicate occurrences of _id with FieldName.ID.name(). Shorten property names to avoid repetative "field" wording. Add Javadoc
to MongoField builder.
See #4464
Original pull request: #4512
This commit introduces support for mapping (read/write) fields that contain dots in their name, preserving the name as is instead of considering the dot being a separator within a path of nested objects.
Query and Update functionality remains unaffected which means no automatic rewrite for field names containing paths will NOT take place. It's in the users responsibility to pick the appropriate query/update operator (eg. $expr) to interact with the field.
Closes#4464
Original pull request: #4512