This is an automated email from the ASF dual-hosted git repository.

janhoy pushed a commit to branch branch_10x
in repository https://gitbox.apache.org/repos/asf/solr.git


The following commit(s) were added to refs/heads/branch_10x by this push:
     new db95cc0b8a7 SOLR-17956 Deprecate the XLSXResponseWriter in v9.10 
(#3769)
db95cc0b8a7 is described below

commit db95cc0b8a7a925473a1aeaab0effd41a81cb1c6
Author: Jan Høydahl <[email protected]>
AuthorDate: Wed Oct 15 22:30:07 2025 +0200

    SOLR-17956 Deprecate the XLSXResponseWriter in v9.10 (#3769)
    
    (cherry picked from commit dead9b60c8240bba9757f6613675139ec3031a00)
---
 gradle/libs.versions.toml                                          | 2 +-
 solr/CHANGES.txt                                                   | 2 ++
 .../org/apache/solr/handler/extraction/XLSXResponseWriter.java     | 7 ++++++-
 .../org/apache/solr/handler/extraction/TestXLSXResponseWriter.java | 6 +++---
 .../solr-ref-guide/modules/query-guide/pages/response-writers.adoc | 5 +++++
 .../modules/upgrade-notes/pages/major-changes-in-solr-9.adoc       | 4 ++++
 6 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 87ea8f0c9e8..14435a7242f 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -487,9 +487,9 @@ opentelemetry-exporter-sender-okhttp = { module = 
"io.opentelemetry:opentelemetr
 opentelemetry-runtime-telemetry = { module = 
"io.opentelemetry.instrumentation:opentelemetry-runtime-telemetry-java17", 
version.ref = "opentelemetry-runtime-telemetry" }
 opentelemetry-sdk = { module = "io.opentelemetry:opentelemetry-sdk", 
version.ref = "opentelemetry" }
 opentelemetry-sdk-extension-autoconfigure = { module = 
"io.opentelemetry:opentelemetry-sdk-extension-autoconfigure", version.ref = 
"opentelemetry" }
+opentelemetry-sdk-metrics = { module = 
"io.opentelemetry:opentelemetry-sdk-metrics", version.ref = "opentelemetry" }
 opentelemetry-sdk-testing = { module = 
"io.opentelemetry:opentelemetry-sdk-testing", version.ref = "opentelemetry" }
 opentelemetry-sdk-trace = { module = 
"io.opentelemetry:opentelemetry-sdk-trace", version.ref = "opentelemetry" }
-opentelemetry-sdk-metrics = { module = 
"io.opentelemetry:opentelemetry-sdk-metrics", version.ref = "opentelemetry" }
 osgi-annotation = { module = "org.osgi:osgi.annotation", version.ref = 
"osgi-annotation" }
 oshai-logging = { module = "io.github.oshai:kotlin-logging", version.ref = 
"oshai-logging" }
 # @keep transitive dependency for version alignment
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 56197aedfd0..8a75d516d69 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -352,6 +352,8 @@ Other Changes
 * SOLR-17879: A Solr node will now fail to start if it's major.minor version 
(e.g. 9.10) is *lower* than that of any existing
   Solr node in a SolrCloud cluster (as reported by info in "live_node").  
(David Smiley)
 
+* SOLR-17956: XLSXResponseWriter has been deprecated and will be removed in a 
future release. (Jan Høydahl)
+
 * SOLR-17952: Stream decorator test refactoring - use underscore rather than 
dot in aliases (Andy Webb)
 
 ==================  9.9.1 ==================
diff --git 
a/solr/modules/extraction/src/java/org/apache/solr/handler/extraction/XLSXResponseWriter.java
 
b/solr/modules/extraction/src/java/org/apache/solr/handler/extraction/XLSXResponseWriter.java
index c2f9f836761..ac8e6c54960 100644
--- 
a/solr/modules/extraction/src/java/org/apache/solr/handler/extraction/XLSXResponseWriter.java
+++ 
b/solr/modules/extraction/src/java/org/apache/solr/handler/extraction/XLSXResponseWriter.java
@@ -48,7 +48,12 @@ import org.apache.solr.schema.SchemaField;
 import org.apache.solr.schema.StrField;
 import org.apache.solr.search.ReturnFields;
 
-/** A .XLSX spreadsheet format {@link 
org.apache.solr.response.QueryResponseWriter}. */
+/**
+ * A .XLSX spreadsheet format {@link 
org.apache.solr.response.QueryResponseWriter}.
+ *
+ * @deprecated This class will be removed in a future release.
+ */
+@Deprecated(since = "9.10", forRemoval = true)
 public class XLSXResponseWriter implements QueryResponseWriter {
 
   @Override
diff --git 
a/solr/modules/extraction/src/test/org/apache/solr/handler/extraction/TestXLSXResponseWriter.java
 
b/solr/modules/extraction/src/test/org/apache/solr/handler/extraction/TestXLSXResponseWriter.java
index 42e9825ad7c..8eca2b0105c 100644
--- 
a/solr/modules/extraction/src/test/org/apache/solr/handler/extraction/TestXLSXResponseWriter.java
+++ 
b/solr/modules/extraction/src/test/org/apache/solr/handler/extraction/TestXLSXResponseWriter.java
@@ -42,7 +42,7 @@ import org.junit.Test;
 
 public class TestXLSXResponseWriter extends SolrTestCaseJ4 {
 
-  private static XLSXResponseWriter writerXlsx;
+  private static QueryResponseWriter writerXlsx;
 
   @BeforeClass
   public static void beforeClass() throws Exception {
@@ -52,8 +52,8 @@ public class TestXLSXResponseWriter extends SolrTestCaseJ4 {
     // find a reference to the default response writer so we can redirect its 
output later
     SolrCore testCore = h.getCore();
     QueryResponseWriter writer = testCore.getQueryResponseWriter("xlsx");
-    if (writer instanceof XLSXResponseWriter) {
-      writerXlsx = (XLSXResponseWriter) 
testCore.getQueryResponseWriter("xlsx");
+    if (writer != null) {
+      writerXlsx = writer;
     } else {
       throw new Exception("XLSXResponseWriter not registered with solr core");
     }
diff --git 
a/solr/solr-ref-guide/modules/query-guide/pages/response-writers.adoc 
b/solr/solr-ref-guide/modules/query-guide/pages/response-writers.adoc
index 84e938da5fb..ac86adbbceb 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/response-writers.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/response-writers.adoc
@@ -404,3 +404,8 @@ cp modules/extraction/lib/*.jar 
server/solr-webapp/webapp/WEB-INF/lib/
 ----
 
 Once the libraries are in place, you can add `wt=xlsx` to your request, and 
results will be returned as an XLSX sheet.
+
+[IMPORTANT]
+====
+The `XLSXResponseWriter` is deprecated and will be removed in a future release.
+====
diff --git 
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc 
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
index 4217318491b..a54aceb624b 100644
--- 
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
+++ 
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
@@ -78,6 +78,10 @@ SolrJ users not using SolrClients that use Jetty HttpClient 
can safely exclude t
 
 Java has removed support for the Security Manager starting with Java 24; 
therefore, Solr will disable this feature when run with Java 24 or later. Solr 
previously used the Security Manager to provide an additional layer of 
protection against unintended file system access, network access, and process 
execution. Users upgrading to Java 24 or later should review their security 
practices and consider alternative measures, such as running Solr in containers 
or implementing additional operatin [...]
 
+=== Deprecations
+
+The `XLSXResponseWriter` is now deprecated.
+
 == Solr 9.9
 
 === SolrJ

Reply via email to