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

reschke pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git


The following commit(s) were added to refs/heads/trunk by this push:
     new cc2db104fe OAK-11748: Remove usage of Guava Escapers (#2323)
cc2db104fe is described below

commit cc2db104fedbdea8f20eb7a1e807037a80a65de5
Author: Julian Reschke <resc...@apache.org>
AuthorDate: Thu Jun 12 18:07:17 2025 +0200

    OAK-11748: Remove usage of Guava Escapers (#2323)
---
 oak-it-osgi/pom.xml                                              | 5 +++++
 oak-it-osgi/test-bundles.xml                                     | 1 +
 oak-parent/pom.xml                                               | 5 +++++
 oak-run/pom.xml                                                  | 5 +++++
 .../java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java   | 6 ++----
 oak-segment-tar/pom.xml                                          | 5 +++++
 .../java/org/apache/jackrabbit/oak/segment/tool/DebugTars.java   | 9 ++-------
 oak-shaded-guava/pom.xml                                         | 2 +-
 oak-store-composite/pom.xml                                      | 5 +++++
 .../apache/jackrabbit/oak/composite/it/CompositeTestSupport.java | 1 +
 10 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/oak-it-osgi/pom.xml b/oak-it-osgi/pom.xml
index eb8f9d3c87..d54d739190 100644
--- a/oak-it-osgi/pom.xml
+++ b/oak-it-osgi/pom.xml
@@ -210,6 +210,11 @@
       <artifactId>commons-lang3</artifactId>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-text</artifactId>
+      <scope>test</scope>
+    </dependency>
     <dependency>
       <groupId>commons-fileupload</groupId>
       <artifactId>commons-fileupload</artifactId>
diff --git a/oak-it-osgi/test-bundles.xml b/oak-it-osgi/test-bundles.xml
index 8d18840659..b21a048825 100644
--- a/oak-it-osgi/test-bundles.xml
+++ b/oak-it-osgi/test-bundles.xml
@@ -39,6 +39,7 @@
         <include>commons-logging:commons-logging</include>
         <include>com.fasterxml.jackson.core:jackson-core</include>
         <include>org.apache.commons:commons-lang3</include>
+        <include>org.apache.commons:commons-text</include>
         <include>org.apache.commons:commons-collections4</include>
         <include>org.apache.jackrabbit:jackrabbit-jcr-commons</include>
         <include>org.apache.jackrabbit:jackrabbit-data</include>
diff --git a/oak-parent/pom.xml b/oak-parent/pom.xml
index 42d39fc5d8..23d8344ecb 100644
--- a/oak-parent/pom.xml
+++ b/oak-parent/pom.xml
@@ -596,6 +596,11 @@
         <artifactId>commons-lang3</artifactId>
         <version>3.17.0</version>
       </dependency>
+      <dependency>
+        <groupId>org.apache.commons</groupId>
+        <artifactId>commons-text</artifactId>
+        <version>1.13.1</version>
+      </dependency>
       <dependency>
         <groupId>commons-io</groupId>
         <artifactId>commons-io</artifactId>
diff --git a/oak-run/pom.xml b/oak-run/pom.xml
index 81bea38d32..387473add1 100644
--- a/oak-run/pom.xml
+++ b/oak-run/pom.xml
@@ -336,6 +336,11 @@
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-lang3</artifactId>
     </dependency>
+    <dependency>
+       <groupId>org.apache.commons</groupId>
+       <artifactId>commons-text</artifactId>
+       <scope>provided</scope>
+    </dependency>
     <dependency>
       <groupId>com.h2database</groupId>
       <artifactId>h2</artifactId>
diff --git 
a/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java 
b/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
index 2bf16e7ecb..e09bd86e8d 100644
--- 
a/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
+++ 
b/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
@@ -18,7 +18,6 @@
  */
 package org.apache.jackrabbit.oak.explorer;
 
-import static org.apache.jackrabbit.guava.common.escape.Escapers.builder;
 import static java.util.Collections.sort;
 import static javax.jcr.PropertyType.BINARY;
 import static javax.jcr.PropertyType.STRING;
@@ -52,6 +51,7 @@ import javax.swing.event.TreeSelectionListener;
 import javax.swing.tree.DefaultMutableTreeNode;
 import javax.swing.tree.DefaultTreeModel;
 
+import org.apache.commons.text.StringEscapeUtils;
 import org.apache.jackrabbit.oak.api.Blob;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
@@ -373,9 +373,7 @@ class NodeStoreTree extends JPanel implements 
TreeSelectionListener, Closeable {
             value = value.substring(0, MAX_CHAR_DISPLAY) + "... ("
                     + value.length() + " chars)";
         }
-        String escaped = builder().setSafeRange(' ', '~')
-                .addEscape('"', "\\\"").addEscape('\\', "\\\\").build()
-                .escape(value);
+        String escaped = StringEscapeUtils.escapeJava(value);
         return '"' + escaped + '"';
     }
 
diff --git a/oak-segment-tar/pom.xml b/oak-segment-tar/pom.xml
index 6800d01cb6..59c24cdfd4 100644
--- a/oak-segment-tar/pom.xml
+++ b/oak-segment-tar/pom.xml
@@ -240,6 +240,11 @@
             <artifactId>slf4j-api</artifactId>
             <scope>provided</scope>
         </dependency>
+        <dependency>
+           <groupId>org.apache.commons</groupId>
+           <artifactId>commons-text</artifactId>
+           <scope>provided</scope>
+        </dependency>
         <dependency>
             <groupId>commons-io</groupId>
             <artifactId>commons-io</artifactId>
diff --git 
a/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/tool/DebugTars.java
 
b/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/tool/DebugTars.java
index 271cd443b9..8829e20f5f 100644
--- 
a/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/tool/DebugTars.java
+++ 
b/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/tool/DebugTars.java
@@ -34,7 +34,7 @@ import java.util.UUID;
 
 import javax.jcr.PropertyType;
 
-import org.apache.jackrabbit.guava.common.escape.Escapers;
+import org.apache.commons.text.StringEscapeUtils;
 import org.apache.jackrabbit.oak.api.Blob;
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Type;
@@ -252,12 +252,7 @@ public class DebugTars {
             value = value.substring(0, maxCharDisplay) + "... (" + 
value.length() + " chars)";
         }
 
-        String escaped = Escapers.builder()
-                .setSafeRange(' ', '~')
-                .addEscape('"', "\\\"")
-                .addEscape('\\', "\\\\")
-                .build()
-                .escape(value);
+        String escaped = StringEscapeUtils.escapeJava(value);
 
         return '"' + escaped + '"';
     }
diff --git a/oak-shaded-guava/pom.xml b/oak-shaded-guava/pom.xml
index 8b821a50d2..f0b979f1f8 100644
--- a/oak-shaded-guava/pom.xml
+++ b/oak-shaded-guava/pom.xml
@@ -61,6 +61,7 @@
                       <artifact>*:*</artifact>
                       <excludes>
                           <exclude>com/google/common/annotations/**</exclude>
+                          <exclude>com/google/common/escape/**</exclude>
                           <exclude>com/google/common/eventbus/**</exclude>
                           <exclude>com/google/common/html/**</exclude>
                           <exclude>com/google/common/io/**</exclude>
@@ -99,7 +100,6 @@
               ${pref}.common.base;version="33.5.0",
               
${pref}.common.cache;version="33.4.1";uses:="${pref}.common.base,${pref}.common.collect,${pref}.common.util.concurrent",
               
${pref}.common.collect;version="34.0.0";uses:="${pref}.common.base",
-              
${pref}.common.escape;version="33.4.1";uses:="${pref}.common.base",
               
${pref}.common.graph;version="33.4.1";uses:="${pref}.common.collect",
               ${pref}.common.hash;version="33.5.0";uses:="${pref}.common.base",
               ${pref}.common.math;version="33.4.1",
diff --git a/oak-store-composite/pom.xml b/oak-store-composite/pom.xml
index 60ae2d7bd5..2b83b93d9d 100644
--- a/oak-store-composite/pom.xml
+++ b/oak-store-composite/pom.xml
@@ -274,5 +274,10 @@
       <artifactId>metrics-core</artifactId>
       <scope>test</scope>
     </dependency>
+   <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-text</artifactId>
+      <scope>test</scope>
+   </dependency>
   </dependencies>
 </project>
diff --git 
a/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/CompositeTestSupport.java
 
b/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/CompositeTestSupport.java
index 887326c669..68e1cc3142 100644
--- 
a/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/CompositeTestSupport.java
+++ 
b/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/CompositeTestSupport.java
@@ -97,6 +97,7 @@ public abstract class CompositeTestSupport extends 
TestSupport {
             
mavenBundle().groupId("commons-io").artifactId("commons-io").versionAsInProject(),
             
mavenBundle().groupId("org.apache.commons").artifactId("commons-collections4").versionAsInProject(),
             
mavenBundle().groupId("org.apache.commons").artifactId("commons-lang3").versionAsInProject(),
+            
mavenBundle().groupId("org.apache.commons").artifactId("commons-text").versionAsInProject(),
             
mavenBundle().groupId("com.fasterxml.jackson.core").artifactId("jackson-core").versionAsInProject(),
             
mavenBundle().groupId("com.fasterxml.jackson.core").artifactId("jackson-annotations").versionAsInProject(),
             
mavenBundle().groupId("com.fasterxml.jackson.core").artifactId("jackson-databind").versionAsInProject()

Reply via email to