This is an automated email from the ASF dual-hosted git repository.
dajac pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/trunk by this push:
new af5df59d2be KAFKA-17593; [1/N] Introduce re2j dependency (#17634)
af5df59d2be is described below
commit af5df59d2bec10e112f674e05f9adaf18bb607db
Author: David Jacot <[email protected]>
AuthorDate: Wed Oct 30 16:20:11 2024 +0100
KAFKA-17593; [1/N] Introduce re2j dependency (#17634)
This patch is the first of a series of patches to introduce support for
server side regular expression. It introduces the re2j dependency.
Co-authored-by: Lianet Magrans <[email protected]>
Reviewers: Lianet Magrans <[email protected]>
---
LICENSE-binary | 5 +++++
build.gradle | 1 +
gradle/dependencies.gradle | 2 ++
licenses/re2j-GO | 32 ++++++++++++++++++++++++++++++++
4 files changed, 40 insertions(+)
diff --git a/LICENSE-binary b/LICENSE-binary
index 4230dbb9e25..7c826722baa 100644
--- a/LICENSE-binary
+++ b/LICENSE-binary
@@ -329,3 +329,8 @@ jline-3.25.1, see: licenses/jline-BSD-3-clause
jsr305-3.0.2, see: licenses/jsr305-BSD-3-clause
paranamer-2.8, see: licenses/paranamer-BSD-3-clause
protobuf-java-3.25.5, see: licenses/protobuf-java-BSD-3-clause
+
+---------------------------------------
+Go License
+
+re2j-1.7 see: licenses/re2j-GO
diff --git a/build.gradle b/build.gradle
index 7352ae58f37..e5c0235ac5d 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1508,6 +1508,7 @@ project(':group-coordinator') {
implementation libs.slf4jApi
implementation libs.metrics
implementation libs.hdrHistogram
+ implementation libs.re2j
testImplementation project(':clients').sourceSets.test.output
testImplementation project(':server-common').sourceSets.test.output
diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle
index 7b38a9edeb1..e63f7a3a863 100644
--- a/gradle/dependencies.gradle
+++ b/gradle/dependencies.gradle
@@ -118,6 +118,7 @@ versions += [
protobuf: "3.25.5", // a dependency of opentelemetryProto
pcollections: "4.0.1",
reload4j: "1.2.25",
+ re2j: "1.7",
rocksDB: "7.9.2",
// When updating the scalafmt version please also update the version field
in checkstyle/.scalafmt.conf. scalafmt now
// has the version field as mandatory in its configuration, see
@@ -218,6 +219,7 @@ libs += [
opentelemetryProto:
"io.opentelemetry.proto:opentelemetry-proto:$versions.opentelemetryProto",
protobuf: "com.google.protobuf:protobuf-java:$versions.protobuf",
reload4j: "ch.qos.reload4j:reload4j:$versions.reload4j",
+ re2j: "com.google.re2j:re2j:$versions.re2j",
rocksDBJni: "org.rocksdb:rocksdbjni:$versions.rocksDB",
scalaLibrary: "org.scala-lang:scala-library:$versions.scala",
scalaLogging:
"com.typesafe.scala-logging:scala-logging_$versions.baseScala:$versions.scalaLogging",
diff --git a/licenses/re2j-GO b/licenses/re2j-GO
new file mode 100644
index 00000000000..b620ae68fe3
--- /dev/null
+++ b/licenses/re2j-GO
@@ -0,0 +1,32 @@
+This is a work derived from Russ Cox's RE2 in Go, whose license
+http://golang.org/LICENSE is as follows:
+
+Copyright (c) 2009 The Go Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+
+ * Neither the name of Google Inc. nor the names of its contributors
+ may be used to endorse or promote products derived from this
+ software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.