This PR contains the following updates:
| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [com.oracle.coherence.ce:coherence-bom](https://coherence.community/)
([source](https://redirect.github.com/oracle/coherence)) | `24.09` →
`24.09.3` |

|

|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/2069) for more information.
---
### Release Notes
<details>
<summary>oracle/coherence
(com.oracle.coherence.ce:coherence-bom)</summary>
###
[`v24.09.3`](https://redirect.github.com/oracle/coherence/releases/tag/24.09.3):
Coherence CE v24.09.3
[Compare
Source](https://redirect.github.com/oracle/coherence/compare/24.09.2...24.09.3)
This is patch 3 of the [Coherence CE 24.09
release](https://redirect.github.com/oracle/coherence/releases/tag/24.09).
##### NOTE: The main purpose of this patch is to include Coherence AI
related interfaces to the API Reference documentation.
##### New features in Coherence CE 24.09.3
`COH-31101` Updated the metrics format to conform to the
OpenObservability spec.
##### Bugs fixed since [Coherence CE
24.09.2](https://redirect.github.com/oracle/coherence/releases/tag/24.09.2)
`COH-31723` Fixed an issue where a topics subscriber may return an
incorrect channel count if it is disconnected
`COH-31712` Fixed a configuration issue that prevented processing xml
elements from a foreign namespace within cachestore-scheme when the
federated-loading element was also present.
`COH-31674` Fixed an issue where a topics subscriber may fail to be
properly unsubscribed if the senior cluster member dies.
`COH-31664` Fixed exceptions thrown during fail-over or shutdown of gRPC
client connections.
`COH-31497` Fixed an issue where taking snapshots without suspending the
service could result in thread starvation due to concurrent requests.
`COH-31373` Fixed an issue where doing a rolling upgrade could result in
an IllegalStateException and prevent distributed caches services from
starting.
###
[`v24.09.2`](https://redirect.github.com/oracle/coherence/releases/tag/24.09.2):
Coherence CE v24.09.2
[Compare
Source](https://redirect.github.com/oracle/coherence/compare/24.09.1...24.09.2)
This is patch 2 of the [Coherence CE 24.09
release](https://redirect.github.com/oracle/coherence/releases/tag/24.09).
##### CAUTION: Coherence CE 24.09.1 release had to be corrected and
released as <ins>24.09.2</ins>. Do not pickup ~~24.09.1~~ release.
##### New features in Coherence CE 24.09.2
1. `COH-31646` General refactoring and hardening of the Coherence gRPC
APIs
2. `COH-31464` Fixed timing related issues in the NamedTopic subscriber
API and generally hardened the code base.
3. `COH-31276` Added a size MBean attribute and metric for view caches.
4. `COH-31087` Enhanced proxy log message to include the serializer name
when an exception thrown due to mismatch in serializer type between the
server and client.
5. `COH-31079` Added the ability to run pre-defined reports using
Management over REST API.
6. `COH-30057` Added support for system property
coherence.guardian.log.threaddump.interval which can be set to a time
duration to reduce the frequency that guardian service thread dumps
appear in the server log.
7. `COH-29675` Added a warning message to the Name Service lookup
utility, NSLookup, when lookup of "-name <service>" fails and the
provided service does not match any of the predefined services.
8. `COH-27121` Added a Management MBean operation and a REST endpoint to
reset statistics for MBeans specified by a query string.
##### Bugs fixed since [Coherence CE
24.09](https://redirect.github.com/oracle/coherence/releases/tag/24.09)
1. `COH-31614` Fixed an issue where an IllegalArgumentException could be
thrown when a cache persistence activity due to cache creation or
deletion runs concurrently with taking a snapshot.
2. `COH-31608` Bumped optional dependency, OpenTelemetry, from 1.29.0 to
1.46.0.
3. `COH-31596` Fixed an issue that could prevent OpenTelemetry spans
from being properly linked.
4. `COH-31480` Fixed an issue where RemoveCount on the StorageManager
MBean was not being reset when calling resetStatistics().
5. `COH-31399` Update Helidon Version to 4.1.5, Netty version to
4.1.115.Final, gRPC version to 1.65.1
6. `COH-31385` Fixed an issue in federation where a NullPointerException
may be thrown when a partition is moved while processing journal events
for that partition.
7. `COH-31325` Fixed an issue where the ContinuousQueryCache constructor
did not honor the request for no local cache values when a map listener
was provided. Note: this fix results in a behavior change as the CQC
constructor now infers that the provided listener is a lite listener.
8. `COH-31253` Fixed an issue where internal CacheStore operations can
result in unsolicited commit events.
9. `COH-31210` Fixed an issue where a NullPointerException could be
thrown when using the coherence-mp-config module.
10. `COH-31209` Fixed an issue where overriding the backing map for a
caching scheme using a cache config override throws an exception because
the merging of two scheme elements results in invalid XML.
11. `COH-31208` Fixed an issue where using a cache configuration
override containing cache-mapping for the same cache-name as the parent
cache configuration file results in java.lang.IllegalArgumentException.
12. `COH-31179` Fixed an issue where an IllegalArgumentException could
be thrown when a cache persistence activity runs concurrently with
taking a snapshot.
13. `COH-31178` Fixed an issue where cache map listeners were not
unregistered when a gRPC proxy service was shutdown.
14. `COH-31164` Fixed an issue where using the SimilaritySearch
aggregator from gRPC clients did not work.
15. `COH-31125` Fixed an issue where using the NullFirst argument set to
true in a SafeComparator would not be honored when running queries.
16. `COH-31109` Fixed an issue during a rolling upgrade where a
corrupted message type 87 can occur in a Coherence storage enabled
server running version 12.2.1.4/14.1.1.0 while other storage-enabled
cluster members are version 14.1.1.2206 or higher.
17. `COH-31092` Fixed the issue where SimilaritySearch aggregator
couldn't be executed asynchronously.
18. `COH-31022` Fixed an issue where persistence snapshots could produce
a NullPointerException in some rare circumstances if a rolling upgrade
to remove cache mappings was not correctly done.
19. `COH-30999` Fixed an issue where the getOrDefault() call on a cache
that uses RWBM with cache store does not propagate the call through to
the cache store when the entry does not exist.
20. `COH-30900` Fixed an issue where recovering multiple large caches
with indices from persistence could result in invalid index contents.
21. `COH-30772` Fixed an issue where a write-behind remove might get
stuck when there are outstanding pending write-behind operations on the
entry.
22. `COH-29982` Added backwards and forward compatibility support for
system properties with prefix "com.oracle.common" and
"com.oracle.coherence.common", if system property lookup fails beginning
with one prefix, retry lookup with alternative prefix. This change
accommodates moving package com.oracle.common to
com.oracle.coherence.common in Coherence version 14.1.1.0.
23. `COH-29800` Fixed an issue where backing map manager wasn't
correctly set and initialized when using View Scheme.
###
[`v24.09.1`](https://redirect.github.com/oracle/coherence/compare/24.09...24.09.1)
[Compare
Source](https://redirect.github.com/oracle/coherence/compare/24.09...24.09.1)
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/langchain4j/langchain4j).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNzMuNiIsInVwZGF0ZWRJblZlciI6IjQzLjE3My42IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
## Issue
Cleanup repeating dependencies in pom.xml. Better test assertions and
apidocs/javadoc generation.
## Change
Refactor project structure and remove unused test dependencies.
- Repeating test dependencies like `tinylog`, `awaitility` and others
were removed from various modules and consolidated in the parent module.
This reduction in clutter helps to streamline the testing process.
- A separate `kotlin` profile was created to manage Kotlin-related
configurations and dependencies.
- Upgraded versions of dependencies like `ai-mocks` and `wiremock` were
implemented. Moved to wiremock-standalone (shaded jar) to avoid
potential version conflicts with runtime classes.
- The test changes in `ChatRequestExtensionsTest.kt` partially migrated
from AssertJ to Kotest assertions.
- Updated Dokka plugin configuration
## General checklist
<!-- Please double-check the following points and mark them like this:
[X] -->
- [x] There are no breaking changes
- [ ] I have added unit and/or integration tests for my change
- [ ] The tests cover both positive and negative cases
- [x] I have manually run all the unit and integration tests in the
module I have added/changed, and they are all green
- [ ] I have manually run all the unit and integration tests in the
[core](https://github.com/langchain4j/langchain4j/tree/main/langchain4j-core)
and
[main](https://github.com/langchain4j/langchain4j/tree/main/langchain4j)
modules, and they are all green
<!-- Before adding documentation and example(s) (below), please wait
until the PR is reviewed and approved. -->
- [ ] I have added/updated the
[documentation](https://github.com/langchain4j/langchain4j/tree/main/docs/docs)
- [ ] I have added an example in the [examples
repo](https://github.com/langchain4j/langchain4j-examples) (only for
"big" features)
- [ ] I have added/updated [Spring Boot
starter(s)](https://github.com/langchain4j/langchain4j-spring) (if
applicable)
## Checklist for adding new maven module
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] I have added my new module in the root `pom.xml` and
`langchain4j-bom/pom.xml`
## Checklist for adding new embedding store integration
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] I have added a `{NameOfIntegration}EmbeddingStoreIT` that extends
from either `EmbeddingStoreIT` or `EmbeddingStoreWithFilteringIT`
- [ ] I have added a `{NameOfIntegration}EmbeddingStoreRemovalIT` that
extends from `EmbeddingStoreWithRemovalIT`
## Checklist for changing existing embedding store integration
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] I have manually verified that the
`{NameOfIntegration}EmbeddingStore` works correctly with the data
persisted using the latest released version of LangChain4j
## Issue
Streamline maven dependencies
Should fix [this
issue](https://github.com/langchain4j/langchain4j/actions/runs/13666001227/job/38207360909?pr=2640#step:5:16630)
```
2025/03/05 00:52:59,050 3922 [INFO ] [main] netty.implementation.NettyUtility - {"az.sdk.message":"The following Netty versions were found on the classpath and have a mismatch with the versions used by azure-core-http-netty. If your application runs without issue this message can be ignored, otherwise please align the Netty versions used in your application. For more information, see https://aka.ms/azsdk/java/dependency/troubleshoot.","azure-netty-version":"4.1.118.Final","azure-netty-native-version":"2.0.70.Final","classpath-netty-version-io.netty:netty-common":"4.1.115.Final","classpath-netty-version-io.netty:netty-handler":"4.1.110.Final","classpath-netty-version-io.netty:netty-handler-proxy":"4.1.110.Final","classpath-netty-version-io.netty:netty-buffer":"4.1.110.Final","classpath-netty-version-io.netty:netty-codec":"4.1.110.Final","classpath-netty-version-io.netty:netty-codec-http":"4.1.110.Final","classpath-netty-version-io.netty:netty-codec-http2":"4.1.110.Final","classpath-netty-version-io.netty:netty-transport-native-unix-common":"4.1.110.Final","classpath-netty-version-io.netty:netty-transport-native-epoll":"4.1.110.Final","classpath-netty-version-io.netty:netty-transport-native-kqueue":"4.1.118.Final","classpath-native-netty-version-io.netty:netty-tcnative-boringssl-static":"2.0.70.Final"}
```
## Change
This pull request includes the following changes to improve project
dependency management:
- Removed unnecessary and redundant Netty dependencies and exclusions.
- Updated and reorganized dependency versions for consistency, including
new BOM imports for Azure SDK, Netty, and Reactor.
- Eliminated AWS SDK v1 dependencies, transitioning to
`software.amazon.awssdk` BOM for better compatibility and reduced
clutter.
- Removed redundant test dependencies like `assertj-core` and `mockito`
across modules, referring to the parent POM.
- Adjusted `kotlinx-coroutines-test` to use JVM-specific artifact and
standardized dependency version variables.
- Refined POM XML formatting for consistency and clarity (`mvn
spotless:apply`)
## General checklist
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] There are no breaking changes
- [ ] I have added unit and/or integration tests for my change
- [ ] The tests cover both positive and negative cases
- [ ] I have manually run all the unit and integration tests in the
module I have added/changed, and they are all green
- [ ] I have manually run all the unit and integration tests in the
[core](https://github.com/langchain4j/langchain4j/tree/main/langchain4j-core)
and
[main](https://github.com/langchain4j/langchain4j/tree/main/langchain4j)
modules, and they are all green
<!-- Before adding documentation and example(s) (below), please wait
until the PR is reviewed and approved. -->
- [ ] I have added/updated the
[documentation](https://github.com/langchain4j/langchain4j/tree/main/docs/docs)
- [ ] I have added an example in the [examples
repo](https://github.com/langchain4j/langchain4j-examples) (only for
"big" features)
- [ ] I have added/updated [Spring Boot
starter(s)](https://github.com/langchain4j/langchain4j-spring) (if
applicable)
## Checklist for adding new maven module
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] I have added my new module in the root `pom.xml` and
`langchain4j-bom/pom.xml`
## Checklist for adding new embedding store integration
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] I have added a `{NameOfIntegration}EmbeddingStoreIT` that extends
from either `EmbeddingStoreIT` or `EmbeddingStoreWithFilteringIT`
- [ ] I have added a `{NameOfIntegration}EmbeddingStoreRemovalIT` that
extends from `EmbeddingStoreWithRemovalIT`
## Checklist for changing existing embedding store integration
<!-- Please double-check the following points and mark them like this:
[X] -->
- [ ] I have manually verified that the
`{NameOfIntegration}EmbeddingStore` works correctly with the data
persisted using the latest released version of LangChain4j
---------
Co-authored-by: kpavlov <{ID}+{username}@users.noreply.github.com>
Co-authored-by: Dmytro Liubarskyi <ljubarskij@gmail.com>
## Issue
Dependency cycles removed:
[langchain4j-core]->[langchain4j-parent]->[langchain4j-core]
This cycles prevented project fresh project correctly in Jetbrains Idea.
Cyclyc dependency between this repo and [langchain-embeddings
repo](https://github.com/langchain4j/langchain4j-embeddings) should be
fixed separately.
## Change
- Removed dependency cycles: Removed dependencies to project modules
from `langchain4j-parent`/dependencyManagement to avoid cycles. Added
explicit version number for
langchain4j-core,langchain4j,langchain4j-open-ai.
- Introduced `langchain4j-embeddings.version` for explicit dependency on
another repo.
- Added BOM dependencies to parent pom: junit-bom, mockito-bom. Remved
dependencies, defined in BOMs
- junit.version -> 5.11.3
- Upgraded maven-surefire-plugin, maven-failsafe-plugin. **NB! Renovate
bot is needed to do this automatically**
## General checklist
- [x] There are no breaking changes
- [ ] I have added unit and integration tests for my change
- [ ] I have manually run all the unit and integration tests in the
module I have added/changed, and they are all green
- [ ] I have manually run all the unit and integration tests in the
[core](https://github.com/langchain4j/langchain4j/tree/main/langchain4j-core)
and
[main](https://github.com/langchain4j/langchain4j/tree/main/langchain4j)
modules, and they are all green
- [ ] I have added/updated the
[documentation](https://github.com/langchain4j/langchain4j/tree/main/docs/docs)
- [ ] I have added an example in the [examples
repo](https://github.com/langchain4j/langchain4j-examples) (only for
"big" features)
- [ ] I have added/updated [Spring Boot
starter(s)](https://github.com/langchain4j/langchain4j-spring) (if
applicable)
## Issue
Closes#2002
## Change
Added `langchain4j-coherence` module that provides embedding store and
chat memory store implementations that use [Oracle Coherence Community
Edition](https://github.com/oracle/coherence) as a store.
## General checklist
- [X] There are no breaking changes
- [X] I have added unit and integration tests for my change
- [X] I have manually run all the unit and integration tests in the
module I have added/changed, and they are all green
- [*] I have manually run all the unit and integration tests in the
[core]
(https://github.com/langchain4j/langchain4j/tree/main/langchain4j-core)
and
[main](https://github.com/langchain4j/langchain4j/tree/main/langchain4j)
modules, and they are all green (they are not, but I doubt it had
anything to do with my changes -- Jacoco is failing the build because
`core` requires 75% code coverage and it's only 68% at the moment)
- [x] I have added/updated the
[documentation](https://github.com/langchain4j/langchain4j/tree/main/docs/docs)
- [ ] I have added an example in the [examples
repo](https://github.com/langchain4j/langchain4j-examples) (only for
"big" features)
- [ ] I have added/updated [Spring Boot
starter(s)](https://github.com/langchain4j/langchain4j-spring) (if
applicable)
We have all three of the above ready to submit, but will wait until this
PR is reviewed and approved before submitting them.
## Checklist for adding new maven module
- [X] I have added my new module in the root `pom.xml` and
`langchain4j-bom/pom.xml`
## Checklist for adding new embedding store integration
- [X] I have added a `CoherenceEmbeddingStoreIT` that extends from
either `EmbeddingStoreIT` or `EmbeddingStoreWithFilteringIT`
- [X] I have added a `CoherenceEmbeddingStoreRemovalIT` that extends
from `EmbeddingStoreWithRemovalIT`