This is an automated email from the ASF dual-hosted git repository.
epugh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr-mcp.git
The following commit(s) were added to refs/heads/main by this push:
new 7cb39a3d ci: drop Solr 8.11 from the compatibility matrix and
supported range (#255)
7cb39a3d is described below
commit 7cb39a3da8b1a86b3bd5f75e949247a1e4728009
Author: Aditya Parikh <[email protected]>
AuthorDate: Mon Oct 12 08:51:24 2026 -0400
ci: drop Solr 8.11 from the compatibility matrix and supported range (#255)
Apache Solr has end-of-lifed 8.x: the downloads page lists only 10.x
and 9.11.x as supported and calls every older line EOL. Stop testing
8.11 in ci.yml and build-and-publish.yml, and state the supported range
as 9.4-10, the oldest version the matrix still runs, in the README,
quick start, AGENTS.md and DEVELOPMENT.md.
addFieldTypes_denseVectorField_schemaRoundTrip no longer needs its
Solr < 9 branch expecting DenseVectorField to be rejected: every tested
version has the type, which arrived in Solr 9.0.
Signed-off-by: Aditya Parikh <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
---
.github/workflows/build-and-publish.yml | 3 +--
.github/workflows/ci.yml | 1 -
AGENTS.md | 3 +--
README.md | 2 +-
dev-docs/DEVELOPMENT.md | 3 +--
docs/site/content/pages/mcp/quick-start.md | 2 +-
.../apache/solr/mcp/server/TestcontainersConfiguration.java | 2 +-
.../mcp/server/schema/SchemaServiceIntegrationTest.java | 13 ++-----------
8 files changed, 8 insertions(+), 21 deletions(-)
diff --git a/.github/workflows/build-and-publish.yml
b/.github/workflows/build-and-publish.yml
index 875600e4..c38e6e5d 100644
--- a/.github/workflows/build-and-publish.yml
+++ b/.github/workflows/build-and-publish.yml
@@ -171,7 +171,7 @@ jobs:
#
============================================================================
# Tests the server against multiple Solr versions using Testcontainers.
# Runs in parallel so each Solr version is an independent job.
- # Tested versions: 8.11, 9.4, 9.9, 9.10, 10
+ # Tested versions: 9.4, 9.9, 9.10, 10
#
============================================================================
solr-compatibility:
name: Solr ${{ matrix.solr-version }} Compatibility
@@ -181,7 +181,6 @@ jobs:
fail-fast: false
matrix:
solr-version:
- - "8.11-slim"
- "9.4-slim"
- "9.9-slim"
- "9.10-slim"
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 02a8c1dc..27fe6bd8 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -158,7 +158,6 @@ jobs:
fail-fast: false
matrix:
solr-version:
- - "8.11-slim"
- "9.4-slim"
- "9.10-slim"
- "10-slim"
diff --git a/AGENTS.md b/AGENTS.md
index 6caf5776..64a38f86 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -455,14 +455,13 @@ are exercised. The Jib JVM path runs in
`build-and-publish.yml`.
The Solr Docker image used in tests is pinned as `test-image-solr` in
`gradle/libs.versions.toml` (the Grafana LGTM image for the OTLP test as
`test-image-lgtm`), matching the literal default in
`TestcontainersConfiguration`/`OtlpExportIntegrationTest`. Override the Solr
image for one run with the `solr.test.image` system property:
```bash
-./gradlew test -Dsolr.test.image=solr:8.11-slim # Solr 8.11
./gradlew test -Dsolr.test.image=solr:9.4-slim # Solr 9.4
./gradlew test -Dsolr.test.image=solr:9.9.0-slim # Solr 9.9 (the pinned
default)
./gradlew test -Dsolr.test.image=solr:9.10-slim # Solr 9.10
./gradlew test -Dsolr.test.image=solr:10-slim # Solr 10
```
-**Tested compatible versions:** 8.11, 9.4, 9.9, 9.10, 10
+**Tested compatible versions:** 9.4, 9.9, 9.10, 10
### Solr 10 Compatibility
diff --git a/README.md b/README.md
index 8393397f..c199e4be 100644
--- a/README.md
+++ b/README.md
@@ -20,7 +20,7 @@ This Spring AI [Model Context Protocol
(MCP)](https://modelcontextprotocol.io/)
**Prerequisites:** Java 25+, [Docker](https://docs.docker.com/get-docker/) and
Docker Compose, Git.
-**Compatibility:** works with Apache Solr **8.11–10** (the test suite runs
against 9.9 by default — see [Solr version
compatibility](dev-docs/DEVELOPMENT.md#solr-version-compatibility)).
+**Compatibility:** works with Apache Solr **9.4–10** (the test suite runs
against 9.9 by default — see [Solr version
compatibility](dev-docs/DEVELOPMENT.md#solr-version-compatibility)).
#### 1. Start Solr with sample data
diff --git a/dev-docs/DEVELOPMENT.md b/dev-docs/DEVELOPMENT.md
index ec77550e..99b7c8cc 100644
--- a/dev-docs/DEVELOPMENT.md
+++ b/dev-docs/DEVELOPMENT.md
@@ -207,14 +207,13 @@ This runs tests tagged with `@Tag("docker-integration")`
which verify:
Tests run against the Solr image pinned as `test-image-solr` in
`gradle/libs.versions.toml` by default (the LGTM image for the OTLP test is
pinned there too, as `test-image-lgtm`). Point them at another Solr version
with the `solr.test.image` system property:
```bash
-./gradlew test -Dsolr.test.image=solr:8.11-slim # Solr 8.11
./gradlew test -Dsolr.test.image=solr:9.4-slim # Solr 9.4
./gradlew test -Dsolr.test.image=solr:9.9.0-slim # Solr 9.9 (the pinned
default)
./gradlew test -Dsolr.test.image=solr:9.10-slim # Solr 9.10
./gradlew test -Dsolr.test.image=solr:10-slim # Solr 10
```
-**Tested compatible versions:** 8.11, 9.4, 9.9, 9.10, 10.
+**Tested compatible versions:** 9.4, 9.9, 9.10, 10.
**Solr 10 notes.** Solr 10 is fully supported with the JSON wire format. The
`/admin/mbeans`
endpoint was removed in Solr 10, so `getCacheMetrics()`/`getHandlerMetrics()`
catch
diff --git a/docs/site/content/pages/mcp/quick-start.md
b/docs/site/content/pages/mcp/quick-start.md
index 1bd1458f..48b34b7c 100644
--- a/docs/site/content/pages/mcp/quick-start.md
+++ b/docs/site/content/pages/mcp/quick-start.md
@@ -7,7 +7,7 @@ template: mcp/quick-start
* Java 25+ ([Eclipse Temurin](https://adoptium.net/) recommended)
* [Docker](https://docs.docker.com/get-docker/) and Docker Compose
-* Apache Solr **8.11–10** (the bundled sample stack runs Solr 9; the server is
tested against 8.11, 9.4, 9.9, 9.10, and 10)
+* Apache Solr **9.4–10** (the bundled sample stack runs Solr 9; the server is
tested against 9.4, 9.9, 9.10, and 10)
* An MCP client — this guide uses [Claude
Desktop](https://claude.ai/download), but any MCP-compatible client works. See
[Adding to AI Clients](/mcp/clients/claude-desktop.html) for other options.
## Start Solr with Sample Data ##
diff --git
a/src/test/java/org/apache/solr/mcp/server/TestcontainersConfiguration.java
b/src/test/java/org/apache/solr/mcp/server/TestcontainersConfiguration.java
index 83bf13e3..a5efe757 100644
--- a/src/test/java/org/apache/solr/mcp/server/TestcontainersConfiguration.java
+++ b/src/test/java/org/apache/solr/mcp/server/TestcontainersConfiguration.java
@@ -40,7 +40,7 @@ public class TestcontainersConfiguration {
/**
* Major version of the Solr image under test, read from its tag
- * ({@code solr:10-slim} is 10, {@code solr:8.11-slim} is 8), for tests
whose
+ * ({@code solr:10-slim} is 10, {@code solr:9.4-slim} is 9), for tests
whose
* expected outcome differs by Solr version.
*/
public static int solrMajorVersion() {
diff --git
a/src/test/java/org/apache/solr/mcp/server/schema/SchemaServiceIntegrationTest.java
b/src/test/java/org/apache/solr/mcp/server/schema/SchemaServiceIntegrationTest.java
index c7edbd55..0303550c 100644
---
a/src/test/java/org/apache/solr/mcp/server/schema/SchemaServiceIntegrationTest.java
+++
b/src/test/java/org/apache/solr/mcp/server/schema/SchemaServiceIntegrationTest.java
@@ -20,7 +20,6 @@ import static org.junit.jupiter.api.Assertions.*;
import java.util.List;
import java.util.Map;
-import org.apache.solr.client.solrj.RemoteSolrException;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.request.CollectionAdminRequest;
@@ -235,16 +234,8 @@ class SchemaServiceIntegrationTest {
@Test
void addFieldTypes_denseVectorField_schemaRoundTrip() throws Exception {
- List<Map<String, Object>> vectorType = List.of(Map.of("name",
"aft_test_vector", "class",
- "solr.DenseVectorField", "vectorDimension", 4,
"similarityFunction", "cosine"));
-
- if (TestcontainersConfiguration.solrMajorVersion() < 9) {
- // DenseVectorField arrived in Solr 9.0; older servers
reject the type.
- assertThrows(RemoteSolrException.class, () ->
schemaService.addFieldTypes(TEST_COLLECTION, vectorType));
- return;
- }
-
- schemaService.addFieldTypes(TEST_COLLECTION, vectorType);
+ schemaService.addFieldTypes(TEST_COLLECTION,
List.of(Map.of("name", "aft_test_vector", "class",
+ "solr.DenseVectorField", "vectorDimension", 4,
"similarityFunction", "cosine")));
SchemaRepresentation schema =
schemaService.getSchema(TEST_COLLECTION);
Map<String, Object> vt = schema.getFieldTypes().stream()