Commit Graph

692 Commits

Author SHA1 Message Date
Mark Paluch
22e25fc9a4 Prepare 4.2 GA (2023.1.0).
See #4532
2023-11-17 14:28:29 +01:00
Mark Paluch
d94aa12363 Polishing.
Adjust grammar. Mention that we use proxies for PropertyValueConverter registration when using method handles.

Original pull request: #4553
See #4536
2023-11-13 15:25:40 +01:00
Christoph Strobl
fcf3143b79 Update documentation on version property handling.
Original pull request: #4553
Closes #4536
2023-11-13 15:25:40 +01:00
John Blum
69666caffd Prepare 4.2 RC1 (2023.1.0).
See #4507
2023-10-13 08:43:55 -07:00
Christoph Strobl
715231e9ef Detect ReadPreference for annotated aggregations and inherited find methods.
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
2023-10-12 15:26:29 +02:00
Jorge Rodríguez Martín
16b97a26cc Add ReadPreference annotation.
The annotation enables a declarative style of defining the ReadPreference to use for individual or all repository queries.

Closes: #2971
Original Pull Request: #4503
2023-10-12 15:25:14 +02:00
Mark Paluch
9c09edd594 Polishing.
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
2023-10-09 15:36:43 +02:00
Christoph Strobl
691fc055ed Add support for mapping document fields with dots in the field name.
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
2023-10-09 15:34:35 +02:00
Julia
d506cd026f Add support for $median aggregation operator.
Closes #4472
Original Pull Request: #4515
2023-09-28 09:06:04 +02:00
Mark Paluch
a5cc27ab17 Release version 4.2 M3 (2023.1.0).
See #4479
2023-09-15 14:44:45 +02:00
Mark Paluch
5e12b23f65 Prepare 4.2 M3 (2023.1.0).
See #4479
2023-09-15 11:29:20 +02:00
Mark Paluch
8844b3031c Remove changelog shipped with the binaries.
Closes #3737
2023-09-14 11:18:47 +02:00
Julia
32bd540f91 Add support for $percentile aggregation operator.
Closes #4473
Original Pull Request: #4496
2023-09-13 11:31:09 +02:00
Mark Paluch
501a1cce39 Polishing.
Consistently use Document instead of record. Reformat code. Tweak documentation wording.

See: #4462
2023-09-11 11:00:42 +02:00
Christoph Strobl
49ff6f1e48 Add fluent & reactive API for replace operation.
...and update the documentation.

See: #4462
Original Pull Request: #4463
2023-09-11 11:00:42 +02:00
Christoph Strobl
66c4a3bd80 Update copyright year in documentation.
See: #4497
2023-09-11 11:00:35 +02:00
Christoph Strobl
34d27ac151 Update readme and documentation navigation.
See: #4497
2023-09-08 12:57:08 +02:00
Mark Paluch
7c50f991ed Restructure documentation.
Move examples into test source root to ensure proper compilation. Remove lingering asciidoc resources.
Merge entity callbacks into lifecycle events. Add links from MongoDB overview.

See: #4497
2023-09-08 12:29:40 +02:00
Christoph Strobl
5acb174837 Migrate Documentation to Antora.
See: #4497
2023-09-08 12:26:27 +02:00
Julia Lee
c14d7bf616 Prepare 4.2 M2 (2023.1.0).
See #4450
2023-08-18 08:49:38 -04:00
Christoph Strobl
0fd1273ed9 Update documentation regarding java.time type conversion.
Closes #3482
Original pull request: #4460
2023-08-17 10:45:04 +02:00
Oliver Christen
c532ec343a Correct misspellings in documentation
Closes: #4461
2023-07-31 14:11:04 -04:00
Mark Paluch
5a48825439 Prepare 4.2 M1 (2023.1.0).
See #4387
2023-07-14 14:52:12 +02:00
Mark Paluch
12c4bf6361 Use snapshot and milestone repositories instead of libs-snapshot and libs-milestone.
Closes #4401
2023-06-06 09:47:04 +02:00
Christoph Strobl
5ffaa79f4e Fix code snippet in change streams reference documentation.
Closes: #4376
2023-05-30 13:01:57 +02:00
Mark Paluch
370b4145d2 Polishing.
Add assertions and missing Override annotations. Avoid recursive self-call on getClassLoader. Extend documentation.

See #1627
Original pull request: #4389
2023-05-26 14:48:08 +02:00
Christoph Strobl
af846a962a Prepare 4.1 GA (2023.0.0).
See #4369
2023-05-12 14:14:05 +02:00
Thom
238d8c5ed0 Fix link to custom conversion section in reference documentation.
Closes: #4287
2023-04-20 15:04:15 +02:00
Christoph Strobl
c096caac7d Provide context configuration hints for Spring Boot.
Closes: #3381
2023-04-20 15:04:04 +02:00
Christoph Strobl
c794acaf61 Cover missing Aggregation Stages in reference documentation.
Closes: #3938
2023-04-20 15:01:49 +02:00
Christoph Strobl
339db9d1b8 Add 2023.0 release to compatibility matrix.
Closes: #3940
2023-04-20 15:01:39 +02:00
Greg L. Turnquist
f4ec21792f Prepare 4.1 RC1 (2023.0.0).
See #4337
2023-04-14 11:53:21 -05:00
Christoph Strobl
3b99fa0fb4 Skip output for void methods using declarative Aggregations having $out stage.
We now set the skipOutput flag if an annotated Aggregation defines an $out stage and when the method is declared to return no result (void / Mono<Void>, kotlin.Unit)

Closes: #4088
Original pull request: #4341
2023-04-14 08:58:42 +02:00
Mark Paluch
89c6099a3c Polishing.
Reformat code. Make getAnnotatedHint non-nullable.

See #3230
Original pull request: #4339
2023-04-13 11:51:16 +02:00
Christoph Strobl
7b44f78133 Add Hint annotation.
This commit introduces the new `@Hint` annotation that allows to override MongoDB's default index selection for repository query, update and aggregate operations.

```
@Hint("lastname-idx")
List<Person> findByLastname(String lastname);

@Query(value = "{ 'firstname' : ?0 }", hint="firstname-idx")
List<Person> findByFirstname(String firstname);
```

Closes: #3230
Original pull request: #4339
2023-04-13 11:51:12 +02:00
Christoph Strobl
dc8e9d2e0f Prepare 4.1 M3 (2023.0.0).
See #4295
2023-03-20 15:01:19 +01:00
Mark Paluch
7d485d732a Add support for scrolling using offset- and keyset-based strategies.
We now support scrolling through large query results using ScrollPosition and Window's of data.

See: #4308
Original Pull Request: #4317
2023-03-17 13:03:53 +01:00
Mark Paluch
67215f1209 Polishing.
Remove caching variant of MongoClientEncryption. Rename types for consistent key alt name scheme. Rename annotation to ExplicitEncrypted.

Add package-info. Improve documentation wording. Reduce visibility of KeyId and KeyAltName to package-private.

Original pull request: #4302
See: #4284
2023-03-15 10:27:37 +01:00
Christoph Strobl
3b33f90e5c Add support for explicit field encryption.
We now support explicit field encryption using mapped entities through the `@ExplicitEncrypted` annotation.

class Person {
  ObjectId id;

  @ExplicitEncrypted(algorithm = AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic, altKeyName = "my-secret-key")
  String socialSecurityNumber;
}

Encryption is applied transparently to all mapped entities leveraging the existing converter infrastructure.

Original pull request: #4302
Closes: #4284
2023-03-15 10:27:37 +01:00
Christoph Strobl
cd63501680 Support hints on Update.
This commit makes sure to read query hints and apply them to the MongoDB UpdateOptions when running an update via Reactive-/MongoTemplate.

Original pull request: #4311
Closes: #3218
2023-03-06 14:37:17 +01:00
Christoph Strobl
7d5372f049 Prepare 4.1 M2 (2023.0.0).
See #4294
2023-02-17 14:22:15 +01:00
Christoph Strobl
fb9a0d8482 Prepare 4.1 M1 (2023.0.0).
See #4235
2023-02-17 13:27:08 +01:00
Christoph Strobl
a5dcbf043a Update links in reference documentation.
We now use the springDocsUrl attribute provided via spring-projects/spring-data-build#1895 to resolve links to framework documentation.

Original Pull Request: #4267
2023-01-18 14:23:22 +01:00
robeatoz
c31203582f Fix parameter and method name in reference documentation.
Closes: #4247
2023-01-16 11:22:29 +01:00
Emre Uygun
f146afecdc Fix typo in reference documentation.
Closes: #4250
2023-01-16 11:19:32 +01:00
Patouche
10447afe0c Fix typo in reference documentation.
Closes: #4268
2023-01-16 10:49:42 +01:00
Christoph Strobl
b7ed099e06 Update broken links in reference documentation.
Original Pull Request: #4267
2023-01-11 13:46:50 +01:00
Maksymilian Babarowski
7e2e546e55 Update links to Spring Framework reference docs.
Closes: #4267
2023-01-11 13:46:38 +01:00
Mark Paluch
02647ad125 Prepare 4.0 GA (2022.0.0).
See #4209
2022-11-18 14:26:12 +01:00
Christoph Strobl
62f3656ebb Replace upgrading section in documentation with links to the release notes.
Closes: #4228
2022-11-15 09:16:48 +01:00