Commit Graph

3726 Commits

Author SHA1 Message Date
Mark Paluch
cd80c8441f After release cleanups.
See #4479
2023-09-15 14:44:46 +02:00
Mark Paluch
e1570a55c3 Prepare next development iteration.
See #4479
2023-09-15 14:44:46 +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
Christoph Strobl
e139a31dbd Reduce number of build pipeline steps.
Remove stage with MongoDB 6.0/Java 20 in favour of the newly introduced MongoDB 7.0/Java20 stage.

See: #4501
2023-09-13 11:47:53 +02:00
Julia
9058820f6f Add CI stage for MongoDB 7.0.x
Closes #4501
Original Pull Request: #4496
2023-09-13 11:32:16 +02:00
Julia
32bd540f91 Add support for $percentile aggregation operator.
Closes #4473
Original Pull Request: #4496
2023-09-13 11:31:09 +02:00
Christoph Strobl
11b992c449 Test unwrapped.empty instantiation when used as ctor argument.
Original Pull Request: #4492
2023-09-11 12:30:48 +02:00
Mark Paluch
9429cfd9c5 Polishing.
Remove sysout from tests.

See #4491
2023-09-11 12:28:34 +02:00
Mark Paluch
7213b99824 Consistently use the same reading strategies to read associations.
Return the value to set instead of calling the accessor directly. Remove duplicate calls to resolve associations.

See #4491
2023-09-11 12:28:23 +02:00
Mark Paluch
04e80ed635 Correctly read unwrapped properties during constructor creation.
Closes: #4491
Original Pull Request: #4492
2023-09-11 12:28:13 +02:00
Christoph Strobl
b4133c03e2 Reduce method signatures in Reactive-/MongoOperations and add fluent reactive api variant.
Narrow the scope of exposed methods on MongoOperations interface. The broader replace API variant has been moved to a protected method allowing users to hook into the implementation and (if needed) expose it.

See: #4462
Original Pull Request: #4463
2023-09-11 11:00:42 +02:00
Mark Paluch
ea07e83552 Guard against potential NPE.
Original Pull Request: #4463
2023-09-11 11:00:42 +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
Jakub
f7549f739e Add support for replaceOne operation.
Add replace methods to MongoOperations and MongoTemplate that allow to replace the first matching document with a given value.

Closes: #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
Christoph Strobl
492f09fbdf Add isReadable method to UnwrappedMongoPersistentProperty.
Closes: #4489
2023-08-31 09:43:58 +02:00
Julia
e3e73f5351 Fix #self @DocumentReference resolution when used in constructor.
This commit enables document reference lookup to use `DocumentReferenceSource` to properly instantiate an entity containig a @DocumentReference `#self` property.

Closes #4484
Original Pull Request: #4486
2023-08-31 07:57:44 +02:00
Mark Paluch
e5aff2645b Polishing.
Refactor duplicate code into callback.

See #4481
2023-08-24 14:01:28 +02:00
Mark Paluch
b3c0fbb02d Guard command completion listener against unsupported observation context.
We now no longer attempt to complete the Observation if the context is not a MongoDB one. For commands that target the admin database and run within a parent observation, we still might have an Observation but that one points to the parent invocation and not the MongoDB one as we do not record commands for the admin database.

Closes #4481
2023-08-24 14:01:28 +02:00
Julia Lee
51de522e88 After release cleanups.
See #4450
2023-08-18 08:59:39 -04:00
Julia Lee
d2842b246f Prepare next development iteration.
See #4450
2023-08-18 08:59:35 -04:00
Julia Lee
1f954f45b4 Release version 4.2 M2 (2023.1.0).
See #4450
2023-08-18 08:50:31 -04:00
Julia Lee
c14d7bf616 Prepare 4.2 M2 (2023.1.0).
See #4450
2023-08-18 08:49:38 -04:00
Mark Paluch
ec7cfa3b8e Polishing.
Update since tags. Add missing Override annotation.

See #4070
Original pull request: #4242
2023-08-17 14:18:11 +02:00
Christoph Strobl
f1cff3cdaa Introduce AggregationVariable type.
This commit introduces a new AggregationVariable type that is intended to better identify variables within a pipeline to avoid mapping failures caused by invalid field names.

Closes #4070
Original pull request: #4242
2023-08-17 14:18:11 +02: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
Julia Lee
16798cb3c2 Update CI properties.
See #4450
2023-08-14 12:15:21 -04:00
Julia Lee
963072ec0a Upgrade to Maven Wrapper 3.9.4.
See #4470
2023-08-14 08:53:22 -04:00
Julia
7f64c020b4 Polishing for formatting
Original Pull Request: #4455
2023-08-08 08:55:04 -04:00
Julia
a93854fb09 Add integration test to ensure schema validation fails when domain type property values are not encrypted as expected.
Closes #4454
Original Pull Request: #4455
2023-08-08 08:55:04 -04:00
Christoph Strobl
b6cd129c93 Fix schema generation for encrypted fields that are considered domain entities.
This commit makes sure to consider the encrypted annotation on fields that are considered domain type property values, encrypting the entire object if necessary.
2023-08-08 08:55:04 -04:00
Oliver Christen
c532ec343a Correct misspellings in documentation
Closes: #4461
2023-07-31 14:11:04 -04:00
Christoph Strobl
a44e240402 Polishing.
Use previous context instead of root for mapping objects within an Inheriting context. This avoids accidental mapping of fields against the root entity after eg. a projection stage.
Add missing tests for AggregationOperationRenderer to ensure intended context propagation.

Original Pull Request: #4459
2023-07-28 07:20:13 +02:00
Julia Lee
9b82ede047 Fix mapping custom field names in downstream stages in TypedAggregation pipelines.
Use the root AggregationOperationContext in nested ExposedFieldsAggregationOperationContext to properly apply mapping for domain properties that use @Field.

Closes #4443
Original Pull Request: #4459
2023-07-28 07:18:43 +02:00
Julia Lee
e1986373fd Polishing.
Remove duplicate test configuration.

Original Pull Request: #4447
2023-07-17 10:20:59 +02:00
Julia Lee
5407456973 Fix test setup so that temporal conversions use symmetric timezone setting.
Closes: #4446
Original Pull Request: #4447
2023-07-17 10:12:02 +02:00
Mark Paluch
31f0aa348d After release cleanups.
See #4387
2023-07-14 14:57:12 +02:00
Mark Paluch
28abf1c15b Prepare next development iteration.
See #4387
2023-07-14 14:57:10 +02:00
Mark Paluch
2deede7513 Release version 4.2 M1 (2023.1.0).
See #4387
2023-07-14 14:53:18 +02:00
Mark Paluch
5a48825439 Prepare 4.2 M1 (2023.1.0).
See #4387
2023-07-14 14:52:12 +02:00
Mark Paluch
f4a3e293e8 Upgrade to MongoDB driver 4.10.2.
Closes #4445
2023-07-11 15:46:37 +02:00
Mark Paluch
f0697db32b Polishing.
Reformat code, replace known unsupported constructor with UnsupportedOperationException.

See #4432
Original pull request: #4439
2023-07-10 10:48:29 +02:00
Christoph Strobl
2cc5e427bc Delegate Bson conversion to MongoDB Codec.
Instead of reimplementing conversion we now try to delegate to the native MongoDB codec infrastructure using a custom writer that will only capture values without actually pushing values to an output stream.

See #4432
Original pull request: #4439
2023-07-10 10:48:29 +02:00
Christoph Strobl
a8f08bab86 Fix encryption of java.time types.
This commit makes sure to convert java.time types into their BsonValue representation before encrypting.

See #4432
Original pull request: #4439
2023-07-10 10:48:29 +02:00