From bfc82af1fee17654d051f2679f0a67fc630678ce Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Wed, 19 Feb 2025 15:55:05 +0100 Subject: [PATCH 1/4] More checkstyle fixes We have warnings around paragraphs, fix them up. Change-Id: Ia655a4780d74ac8b3cb8ec0fdbdd0a1bfff189ff Signed-off-by: Robert Varga (cherry picked from commit a5ff6af9b4fa9abad9df920facf6830d6c3b9516) --- .../jsonrpc/bus/api/SessionType.java | 36 ++++++------------- .../bus/messagelib/NameMatchingPredicate.java | 8 ++--- .../jsonrpc/bus/http/package-info.java | 8 +---- .../opendaylight/jsonrpc/bus/zmq/Command.java | 8 ++--- .../jsonrpc/bus/zmq/Mechanism.java | 3 +- .../opendaylight/jsonrpc/bus/zmq/Message.java | 7 ++-- .../jsonrpc/bus/zmq/ServerIndication.java | 2 +- .../jsonrpc/bus/zmq/Signature.java | 7 ++-- .../jsonrpc/hmap/package-info.java | 4 +-- 9 files changed, 27 insertions(+), 56 deletions(-) diff --git a/bus/api/src/main/java/org/opendaylight/jsonrpc/bus/api/SessionType.java b/bus/api/src/main/java/org/opendaylight/jsonrpc/bus/api/SessionType.java index 2e62a433..4f4be1e9 100644 --- a/bus/api/src/main/java/org/opendaylight/jsonrpc/bus/api/SessionType.java +++ b/bus/api/src/main/java/org/opendaylight/jsonrpc/bus/api/SessionType.java @@ -17,63 +17,47 @@ public enum SessionType { /** * Requester. * - *

- * The REQ socket type acts as the client for a set of anonymous services, + *

The REQ socket type acts as the client for a set of anonymous services, * sending requests and receiving replies using a lock-step round-robin * algorithm. It is designed for simple request-reply models where * reliability against failing peers is not an issue. - *

- *

- * See specification - *

+ * + *

See specification */ REQ, /** * Replier. * - *

- * The REP socket type acts as as service for a set of client peers, + *

The REP socket type acts as as service for a set of client peers, * receiving requests and sending replies back to the requesting peers. It * is designed for simple remote-procedure call models. - *

- *

- * See specification - *

+ * + *

See specification */ REP, /** * Publisher. * - *

- * The PUB socket type provides basic one-way broadcasting to a set of + *

The PUB socket type provides basic one-way broadcasting to a set of * subscribers. Over TCP, it does filtering on outgoing messages but * nonetheless a message will be sent multiple times over the network to * reach multiple subscribers. PUB is used mainly for transient event * distribution where stability of the network (e.g. consistently low memory * usage) is more important than reliability of traffic. - *

- *

- * See - * specification - *

* + *

See specification */ PUB, /** * Subscriber. * - *

- * The SUB socket type provides a basic one-way listener for a set of + *

The SUB socket type provides a basic one-way listener for a set of * publishers. - *

- * - *

- * See specification - *

* + *

See specification */ SUB } diff --git a/bus/messagelib/src/main/java/org/opendaylight/jsonrpc/bus/messagelib/NameMatchingPredicate.java b/bus/messagelib/src/main/java/org/opendaylight/jsonrpc/bus/messagelib/NameMatchingPredicate.java index 3f60fb49..fa2887da 100644 --- a/bus/messagelib/src/main/java/org/opendaylight/jsonrpc/bus/messagelib/NameMatchingPredicate.java +++ b/bus/messagelib/src/main/java/org/opendaylight/jsonrpc/bus/messagelib/NameMatchingPredicate.java @@ -40,14 +40,14 @@ public class NameMatchingPredicate implements Predicate { } /** - * Convert raw method name to name with underscores.
- *

- * Examples: + * Convert raw method name to name with underscores. + * + *

Examples: *

* */ private String toUnderscoreName(String name) { diff --git a/bus/transport-http/src/main/java/org/opendaylight/jsonrpc/bus/http/package-info.java b/bus/transport-http/src/main/java/org/opendaylight/jsonrpc/bus/http/package-info.java index 781c576e..583f3005 100644 --- a/bus/transport-http/src/main/java/org/opendaylight/jsonrpc/bus/http/package-info.java +++ b/bus/transport-http/src/main/java/org/opendaylight/jsonrpc/bus/http/package-info.java @@ -5,11 +5,8 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - /** - *

* HTTP transports session types support matrix. - *

* * * @@ -48,10 +45,7 @@ * * *
Support matrix
Yes
- *

- * Implementations details - *

* + *

Implementations details */ - package org.opendaylight.jsonrpc.bus.http; diff --git a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Command.java b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Command.java index f8e1f0f3..6b13921a 100644 --- a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Command.java +++ b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Command.java @@ -9,12 +9,10 @@ package org.opendaylight.jsonrpc.bus.zmq; /** * Command. - *

- * See specification. - *

- * ABNF grammar: * - *

+ * 

See specification. + * ABNF grammar: + *

  * ;   A command is a single long or short frame
  * command = command-size command-body
  * command-size = %x04 short-size | %x06 long-size
diff --git a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Mechanism.java b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Mechanism.java
index 5399c1da..dbce78df 100644
--- a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Mechanism.java
+++ b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Mechanism.java
@@ -18,8 +18,7 @@ import java.nio.charset.StandardCharsets;
  * specification.
  *
  * 

ABNF grammar: - * - *

+ * 
  * ;   The mechanism is a null padded string
  * mechanism = 20mechanism-char
  * mechanism-char = "A"-"Z" | DIGIT
diff --git a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Message.java b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Message.java
index 4781fe85..239e32f0 100644
--- a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Message.java
+++ b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Message.java
@@ -9,12 +9,11 @@ package org.opendaylight.jsonrpc.bus.zmq;
 
 /**
  * Protocol message.
- * 

- * See specification. - *

+ * + *

See specification. * ABNF grammar: * - *

+ * 
  * ;   A message is one or more frames
  * message = *message-more message-last
  * message-more = ( %x01 short-size | %x03 long-size ) message-body
diff --git a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/ServerIndication.java b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/ServerIndication.java
index f858d059..8b351171 100644
--- a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/ServerIndication.java
+++ b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/ServerIndication.java
@@ -18,7 +18,7 @@ import io.netty.buffer.Unpooled;
  *
  * 

ABNF grammar: * - *

+ * 
  * ;   Is the peer acting as server?
  * as-server = %x00 | %x01
  *
diff --git a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Signature.java b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Signature.java
index f19c2b4b..e71ed66a 100644
--- a/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Signature.java
+++ b/bus/transport-zmq/src/main/java/org/opendaylight/jsonrpc/bus/zmq/Signature.java
@@ -12,12 +12,11 @@ import io.netty.buffer.Unpooled;
 
 /**
  * Protocol signature.
- * 

- * See specification. - *

+ * + *

See specification. * ABNF grammar: * - *

+ * 
  * signature = %xFF padding %x7F
  * padding = 8OCTET        ; Not significant
  * 
diff --git a/provider/common/src/main/java/org/opendaylight/jsonrpc/hmap/package-info.java b/provider/common/src/main/java/org/opendaylight/jsonrpc/hmap/package-info.java index 5b7b3dd2..af85872a 100644 --- a/provider/common/src/main/java/org/opendaylight/jsonrpc/hmap/package-info.java +++ b/provider/common/src/main/java/org/opendaylight/jsonrpc/hmap/package-info.java @@ -18,9 +18,7 @@ * convert between internal node identifier and external path specification. * Path is sequence of node identifier, with first identifier equals to null. * - *

- * Example code - *

+ *

Example code *

* *
-- 
2.34.1


From e32366db5bea75553d0838395dd78d63d5eb1281 Mon Sep 17 00:00:00 2001
From: Robert Varga 
Date: Mon, 7 Jul 2025 22:58:30 +0200
Subject: [PATCH 2/4] Modernize NIO2 use

Paths.get() is the same as Path.of().

Change-Id: I71dacca697c85217de74fdb69b57fc262e0ca4f4
Signed-off-by: Robert Varga 
---
 .../org/opendaylight/jsonrpc/security/api/JKSFactory.java   | 6 +++---
 .../opendaylight/jsonrpc/security/api/PKCS12Factory.java    | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/JKSFactory.java b/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/JKSFactory.java
index bbe2d377..264bc0b6 100644
--- a/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/JKSFactory.java
+++ b/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/JKSFactory.java
@@ -16,7 +16,7 @@ import static org.opendaylight.jsonrpc.security.api.SecurityConstants.OPT_TRUSTS
 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import java.io.IOException;
 import java.nio.file.Files;
-import java.nio.file.Paths;
+import java.nio.file.Path;
 import java.security.GeneralSecurityException;
 import java.security.KeyStore;
 import java.util.Map;
@@ -54,11 +54,11 @@ public class JKSFactory extends AbstractKeyStoreFactory {
         final String trustStoreFile = options.getOrDefault(OPT_TRUSTSTORE_FILE, DEFAULT_TRUSTSTORE_LOCATION);
         final String trustStorePassword = options.getOrDefault(OPT_TRUSTSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD);
         LOG.debug("Loading trust KeyStore from {}", trustStoreFile);
-        trustStore.load(Files.newInputStream(Paths.get(trustStoreFile)), trustStorePassword.toCharArray());
+        trustStore.load(Files.newInputStream(Path.of(trustStoreFile)), trustStorePassword.toCharArray());
         final String storeFile = options.getOrDefault(OPT_KEYSTORE_FILE, trustStoreFile);
         keyStorePassword = options.getOrDefault(OPT_KEYSTORE_PASSWORD, trustStorePassword);
         LOG.debug("Loading KeyStore from {}", storeFile);
         keyStore = KeyStore.getInstance(KEYSTORE_TYPE_JKS);
-        keyStore.load(Files.newInputStream(Paths.get(storeFile)), keyStorePassword.toCharArray());
+        keyStore.load(Files.newInputStream(Path.of(storeFile)), keyStorePassword.toCharArray());
     }
 }
diff --git a/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/PKCS12Factory.java b/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/PKCS12Factory.java
index 4a968eda..fb7561f6 100644
--- a/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/PKCS12Factory.java
+++ b/security/api/src/main/java/org/opendaylight/jsonrpc/security/api/PKCS12Factory.java
@@ -14,7 +14,7 @@ import static org.opendaylight.jsonrpc.security.api.SecurityConstants.OPT_KEYSTO
 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import java.io.IOException;
 import java.nio.file.Files;
-import java.nio.file.Paths;
+import java.nio.file.Path;
 import java.security.GeneralSecurityException;
 import java.security.KeyStore;
 import java.util.Map;
@@ -37,7 +37,7 @@ public class PKCS12Factory extends AbstractKeyStoreFactory {
         keyStorePassword = Objects.requireNonNull(options.get(OPT_KEYSTORE_PASSWORD));
         LOG.debug("Loading KeyStore from {}", trustStoreFile);
         trustStore = KeyStore.getInstance(KEYSTORE_TYPE_PKCS12);
-        trustStore.load(Files.newInputStream(Paths.get(trustStoreFile)), keyStorePassword.toCharArray());
+        trustStore.load(Files.newInputStream(Path.of(trustStoreFile)), keyStorePassword.toCharArray());
         keyStore = trustStore;
     }
 }
-- 
2.34.1


From 1ea280233d93ee6003b96b21b5a84d6240f00a08 Mon Sep 17 00:00:00 2001
From: Ivan Hrasko 
Date: Wed, 31 Jul 2024 13:30:03 +0200
Subject: [PATCH 3/4] WIP: Bump upstreams
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Adopt:
- odlparent-14.1.0
- infrautils-7.1.4
- yangtools-14.0.14
- mdsal-14.0.13
- controller-11.0.0
- aaa-0.21.0
- netconf-9.0.0-SNAPSHOT

This patch also updates dependencies to reflect netty-4.2.

We also adapt to the switch from Akka to Apache Pekko, as needed
for controller-11.0.0 as per CONTROLLER-2120:
- changing dependencies
- changing the imports
- adapting configuration

FIXME:
[ERROR]   HttpsReqRepTest.testSmallMessageSize:37->AbstractReqRepTest.testReqRep:38 ยป Timeout

JIRA: JSONRPC-60
Change-Id: I8c29e0dc76553c3bf13482dc99203c544b90b494
Signed-off-by: Ivan Hrasko 
Signed-off-by: Yaroslav Lastivka 
Signed-off-by: Robert Varga 
---
 artifacts/pom.xml                               |  2 +-
 bus/config/pom.xml                              |  2 +-
 bus/transport-http/pom.xml                      | 15 +++++++++++++++
 bus/transport-zmq/pom.xml                       | 17 ++++++++++++++++-
 features/features-jsonrpc/pom.xml               |  2 +-
 features/odl-jsonrpc-all/pom.xml                |  2 +-
 features/odl-jsonrpc-bus/pom.xml                |  2 +-
 features/odl-jsonrpc-cluster/pom.xml            |  2 +-
 features/odl-jsonrpc-provider/pom.xml           |  2 +-
 features/pom.xml                                |  2 +-
 karaf/pom.xml                                   |  2 +-
 parent/pom.xml                                  |  4 ++--
 pom.xml                                         |  2 +-
 provider/cluster/pom.xml                        |  8 ++++----
 .../cluster/impl/ClusterDependencies.java       |  2 +-
 .../cluster/impl/JsonRpcPeerListManager.java    |  2 +-
 .../cluster/impl/ProxyDOMDataBroker.java        |  6 +++---
 .../cluster/impl/ProxyDOMRpcService.java        | 10 +++++-----
 .../provider/cluster/impl/RemotePeerActor.java  |  8 ++++----
 .../cluster/impl/RemotePeerContext.java         | 10 +++++-----
 .../provider/cluster/impl/SlavePeerContext.java | 12 ++++++------
 .../cluster/messages/MountPointRequest.java     |  2 +-
 .../cluster/messages/MountPointResponse.java    |  2 +-
 .../cluster/tx/ActorProxyTransaction.java       |  8 ++++----
 .../cluster/tx/ProxyReadTransaction.java        |  2 +-
 .../cluster/tx/ProxyReadWriteTransaction.java   |  6 +++---
 .../provider/cluster/tx/TransactionActor.java   | 10 +++++-----
 .../provider/cluster/MountpointTest.java        |  4 ++--
 .../cluster/src/test/resources/application.conf |  8 ++++----
 provider/common/pom.xml                         |  2 +-
 30 files changed, 94 insertions(+), 64 deletions(-)

diff --git a/artifacts/pom.xml b/artifacts/pom.xml
index 65e0d9b6..053eb423 100644
--- a/artifacts/pom.xml
+++ b/artifacts/pom.xml
@@ -11,7 +11,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         odlparent-lite
-        14.0.3
+        14.1.0
         
     
     org.opendaylight.jsonrpc
diff --git a/bus/config/pom.xml b/bus/config/pom.xml
index fea6d355..8ce08bf7 100644
--- a/bus/config/pom.xml
+++ b/bus/config/pom.xml
@@ -11,7 +11,7 @@
   
     org.opendaylight.odlparent
     bundle-parent
-    14.0.3
+    14.1.0
     
   
 
diff --git a/bus/transport-http/pom.xml b/bus/transport-http/pom.xml
index 84d1db68..478684a7 100644
--- a/bus/transport-http/pom.xml
+++ b/bus/transport-http/pom.xml
@@ -55,16 +55,31 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
             security-noop
             provided
         
+        
+            io.netty
+            netty-buffer
+            provided
+        
         
             io.netty
             netty-codec-http
             provided
         
+        
+            io.netty
+            netty-common
+            provided
+        
         
             io.netty
             netty-handler
             provided
         
+        
+            io.netty
+            netty-transport
+            provided
+        
         
             org.kohsuke.metainf-services
             metainf-services
diff --git a/bus/transport-zmq/pom.xml b/bus/transport-zmq/pom.xml
index 9cedfd4c..9a68926a 100644
--- a/bus/transport-zmq/pom.xml
+++ b/bus/transport-zmq/pom.xml
@@ -45,7 +45,22 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
         
         
             io.netty
-            netty-codec
+            netty-buffer
+            provided
+        
+        
+            io.netty
+            netty-codec-base
+            provided
+        
+        
+            io.netty
+            netty-common
+            provided
+        
+        
+            io.netty
+            netty-transport
             provided
         
         
diff --git a/features/features-jsonrpc/pom.xml b/features/features-jsonrpc/pom.xml
index 0f57c34f..fb526e76 100644
--- a/features/features-jsonrpc/pom.xml
+++ b/features/features-jsonrpc/pom.xml
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         feature-repo-parent
-        14.0.3
+        14.1.0
         
     
 
diff --git a/features/odl-jsonrpc-all/pom.xml b/features/odl-jsonrpc-all/pom.xml
index 6df4daf5..5c6e18f1 100644
--- a/features/odl-jsonrpc-all/pom.xml
+++ b/features/odl-jsonrpc-all/pom.xml
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         single-feature-parent
-        14.0.3
+        14.1.0
         
     
 
diff --git a/features/odl-jsonrpc-bus/pom.xml b/features/odl-jsonrpc-bus/pom.xml
index a622de16..052c0832 100644
--- a/features/odl-jsonrpc-bus/pom.xml
+++ b/features/odl-jsonrpc-bus/pom.xml
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         single-feature-parent
-        14.0.3
+        14.1.0
         
     
 
diff --git a/features/odl-jsonrpc-cluster/pom.xml b/features/odl-jsonrpc-cluster/pom.xml
index eae34661..b231a5c4 100644
--- a/features/odl-jsonrpc-cluster/pom.xml
+++ b/features/odl-jsonrpc-cluster/pom.xml
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         single-feature-parent
-        14.0.3
+        14.1.0
         
     
 
diff --git a/features/odl-jsonrpc-provider/pom.xml b/features/odl-jsonrpc-provider/pom.xml
index 15de559f..ed6a26ae 100644
--- a/features/odl-jsonrpc-provider/pom.xml
+++ b/features/odl-jsonrpc-provider/pom.xml
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         single-feature-parent
-        14.0.3
+        14.1.0
         
     
 
diff --git a/features/pom.xml b/features/pom.xml
index 7a300401..e548a91c 100644
--- a/features/pom.xml
+++ b/features/pom.xml
@@ -11,7 +11,7 @@
     
         org.opendaylight.odlparent
         odlparent-lite
-        14.0.3
+        14.1.0
         
     
     org.opendaylight.jsonrpc
diff --git a/karaf/pom.xml b/karaf/pom.xml
index 72fc749b..827e31a1 100644
--- a/karaf/pom.xml
+++ b/karaf/pom.xml
@@ -11,7 +11,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         karaf4-parent
-        14.0.3
+        14.1.0
         
     
     org.opendaylight.jsonrpc
diff --git a/parent/pom.xml b/parent/pom.xml
index ad032610..7841f55e 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -11,7 +11,7 @@
     
         org.opendaylight.mdsal
         binding-parent
-        14.0.2
+        14.0.13
         
     
 
@@ -41,7 +41,7 @@
             
                 org.opendaylight.aaa
                 aaa-artifacts
-                0.20.1
+                0.21.0
                 pom
                 import
             
diff --git a/pom.xml b/pom.xml
index 0e6562e8..1899b639 100644
--- a/pom.xml
+++ b/pom.xml
@@ -11,7 +11,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.odlparent
         odlparent-lite
-        14.0.3
+        14.1.0
         
     
     org.opendaylight.jsonrpc
diff --git a/provider/cluster/pom.xml b/provider/cluster/pom.xml
index 462ab525..dac19c96 100644
--- a/provider/cluster/pom.xml
+++ b/provider/cluster/pom.xml
@@ -23,9 +23,9 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
         
             
                 org.opendaylight.controller
-                
+                
                 bundle-parent
-                10.0.2
+                11.0.0
                 pom
                 import
             
@@ -218,8 +218,8 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
             test
         
         
-            com.typesafe.akka
-            akka-testkit_2.13
+            org.apache.pekko
+            pekko-testkit_2.13
             test
         
     
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ClusterDependencies.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ClusterDependencies.java
index 13c1397d..9e09fc9d 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ClusterDependencies.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ClusterDependencies.java
@@ -7,8 +7,8 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.impl;
 
-import akka.actor.ActorSystem;
 import java.util.Objects;
+import org.apache.pekko.actor.ActorSystem;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.jsonrpc.bus.messagelib.TransportFactory;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/JsonRpcPeerListManager.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/JsonRpcPeerListManager.java
index 9b61686d..eb7bcc82 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/JsonRpcPeerListManager.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/JsonRpcPeerListManager.java
@@ -9,7 +9,6 @@ package org.opendaylight.jsonrpc.provider.cluster.impl;
 
 import static org.opendaylight.jsonrpc.provider.common.Util.removeFromMapAndClose;
 
-import akka.util.Timeout;
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
 import java.util.HashMap;
@@ -18,6 +17,7 @@ import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
+import org.apache.pekko.util.Timeout;
 import org.checkerframework.checker.lock.qual.GuardedBy;
 import org.checkerframework.checker.lock.qual.Holding;
 import org.eclipse.jdt.annotation.NonNull;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMDataBroker.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMDataBroker.java
index 1a88531e..59def405 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMDataBroker.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMDataBroker.java
@@ -10,10 +10,10 @@ package org.opendaylight.jsonrpc.provider.cluster.impl;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.DEFAULT_ASK_TIMEOUT;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.durationFromUint16seconds;
 
-import akka.actor.ActorRef;
-import akka.pattern.Patterns;
-import akka.util.Timeout;
 import java.util.concurrent.TimeUnit;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.pattern.Patterns;
+import org.apache.pekko.util.Timeout;
 import org.opendaylight.jsonrpc.provider.cluster.tx.ProxyReadTransaction;
 import org.opendaylight.jsonrpc.provider.cluster.tx.ProxyReadWriteTransaction;
 import org.opendaylight.jsonrpc.provider.cluster.tx.TxRequest;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMRpcService.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMRpcService.java
index 94623b71..d9098c3f 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMRpcService.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/ProxyDOMRpcService.java
@@ -7,20 +7,20 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.impl;
 
-import static akka.pattern.Patterns.ask;
+import static org.apache.pekko.pattern.Patterns.ask;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.DEFAULT_RPC_TIMEOUT;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.durationFromUint16seconds;
 
-import akka.actor.ActorRef;
-import akka.actor.ActorSystem;
-import akka.dispatch.OnComplete;
-import akka.util.Timeout;
 import com.google.common.collect.ImmutableList;
 import com.google.common.util.concurrent.FluentFuture;
 import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.SettableFuture;
 import java.util.Collection;
 import java.util.concurrent.TimeUnit;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.actor.ActorSystem;
+import org.apache.pekko.dispatch.OnComplete;
+import org.apache.pekko.util.Timeout;
 import org.opendaylight.jsonrpc.provider.cluster.messages.PathAndDataMsg;
 import org.opendaylight.jsonrpc.provider.cluster.rpc.EmptyRpcResponse;
 import org.opendaylight.jsonrpc.provider.cluster.rpc.InvokeRpcRequest;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerActor.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerActor.java
index 17ff6087..5a2f7657 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerActor.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerActor.java
@@ -10,14 +10,14 @@ package org.opendaylight.jsonrpc.provider.cluster.impl;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.DEFAULT_WRITE_TX_TIMEOUT;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.durationFromUint16seconds;
 
-import akka.actor.ActorRef;
-import akka.actor.Props;
-import akka.actor.Status.Failure;
-import akka.actor.Status.Success;
 import com.google.common.util.concurrent.FutureCallback;
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.MoreExecutors;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.actor.Props;
+import org.apache.pekko.actor.Status.Failure;
+import org.apache.pekko.actor.Status.Success;
 import org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor;
 import org.opendaylight.jsonrpc.provider.cluster.messages.InitCompleted;
 import org.opendaylight.jsonrpc.provider.cluster.messages.InitMasterMountPoint;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerContext.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerContext.java
index e2ff4af4..3ab7c8ea 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerContext.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/RemotePeerContext.java
@@ -7,13 +7,9 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.impl;
 
-import static akka.pattern.Patterns.ask;
+import static org.apache.pekko.pattern.Patterns.ask;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.createMasterActorName;
 
-import akka.actor.ActorRef;
-import akka.cluster.Cluster;
-import akka.dispatch.OnComplete;
-import akka.util.Timeout;
 import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.Uninterruptibles;
 import com.google.gson.JsonElement;
@@ -21,6 +17,10 @@ import java.util.Optional;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.stream.Collectors;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.cluster.Cluster;
+import org.apache.pekko.dispatch.OnComplete;
+import org.apache.pekko.util.Timeout;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.jsonrpc.dom.codec.JsonRpcCodecFactory;
 import org.opendaylight.jsonrpc.hmap.DataType;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/SlavePeerContext.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/SlavePeerContext.java
index ea6ce1b2..eaab804c 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/SlavePeerContext.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/impl/SlavePeerContext.java
@@ -7,21 +7,21 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.impl;
 
-import static akka.pattern.Patterns.ask;
+import static org.apache.pekko.pattern.Patterns.ask;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.DEFAULT_ASK_TIMEOUT;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.createActorPath;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.createMasterActorName;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.durationFromUint16seconds;
 import static org.opendaylight.jsonrpc.provider.cluster.impl.ClusterUtil.getPeerOpstateIdentifier;
 
-import akka.actor.ActorRef;
-import akka.actor.ActorSelection;
-import akka.actor.PoisonPill;
-import akka.dispatch.OnComplete;
-import akka.util.Timeout;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.actor.ActorSelection;
+import org.apache.pekko.actor.PoisonPill;
+import org.apache.pekko.dispatch.OnComplete;
+import org.apache.pekko.util.Timeout;
 import org.opendaylight.jsonrpc.provider.cluster.api.JsonRpcPeerSingletonService;
 import org.opendaylight.jsonrpc.provider.cluster.messages.MountPointRequest;
 import org.opendaylight.jsonrpc.provider.cluster.messages.UnregisterMountPoint;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointRequest.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointRequest.java
index a05b53f0..6d2dbf30 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointRequest.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointRequest.java
@@ -7,8 +7,8 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.messages;
 
-import akka.actor.ActorRef;
 import java.io.Serializable;
+import org.apache.pekko.actor.ActorRef;
 
 /**
  * Sent by slave to initiate slave mountpoint creation.
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointResponse.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointResponse.java
index cd06ce16..34f52606 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointResponse.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/messages/MountPointResponse.java
@@ -7,8 +7,8 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.messages;
 
-import akka.actor.ActorRef;
 import java.io.Serializable;
+import org.apache.pekko.actor.ActorRef;
 
 /**
  * Sent by master to slave in response to {@link MountPointRequest}.
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ActorProxyTransaction.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ActorProxyTransaction.java
index d7a550dd..a39eeacb 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ActorProxyTransaction.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ActorProxyTransaction.java
@@ -7,14 +7,14 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.tx;
 
-import akka.actor.ActorRef;
-import akka.dispatch.OnComplete;
-import akka.pattern.Patterns;
-import akka.util.Timeout;
 import com.google.common.util.concurrent.FluentFuture;
 import com.google.common.util.concurrent.SettableFuture;
 import java.util.Objects;
 import java.util.Optional;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.dispatch.OnComplete;
+import org.apache.pekko.pattern.Patterns;
+import org.apache.pekko.util.Timeout;
 import org.opendaylight.jsonrpc.provider.cluster.messages.PathAndDataMsg;
 import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadTransaction.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadTransaction.java
index e42a4ff4..48ebd1ce 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadTransaction.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadTransaction.java
@@ -7,7 +7,7 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.tx;
 
-import akka.util.Timeout;
+import org.apache.pekko.util.Timeout;
 import org.opendaylight.mdsal.dom.api.DOMDataTreeReadTransaction;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.jsonrpc.rev161201.Peer;
 import scala.concurrent.ExecutionContext;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadWriteTransaction.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadWriteTransaction.java
index 048a2468..2e96d438 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadWriteTransaction.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/ProxyReadWriteTransaction.java
@@ -7,9 +7,6 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.tx;
 
-import akka.actor.ActorRef;
-import akka.dispatch.OnComplete;
-import akka.util.Timeout;
 import com.google.common.base.Preconditions;
 import com.google.common.util.concurrent.FluentFuture;
 import com.google.common.util.concurrent.SettableFuture;
@@ -19,6 +16,9 @@ import java.util.List;
 import java.util.Optional;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.function.Consumer;
+import org.apache.pekko.actor.ActorRef;
+import org.apache.pekko.dispatch.OnComplete;
+import org.apache.pekko.util.Timeout;
 import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.mdsal.dom.api.DOMDataTreeReadWriteTransaction;
diff --git a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/TransactionActor.java b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/TransactionActor.java
index f52cc0f9..0abc6280 100644
--- a/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/TransactionActor.java
+++ b/provider/cluster/src/main/java/org/opendaylight/jsonrpc/provider/cluster/tx/TransactionActor.java
@@ -7,15 +7,15 @@
  */
 package org.opendaylight.jsonrpc.provider.cluster.tx;
 
-import akka.actor.Props;
-import akka.actor.ReceiveTimeout;
-import akka.actor.Status.Failure;
-import akka.actor.Status.Success;
-import akka.actor.UntypedAbstractActor;
 import com.google.common.util.concurrent.FluentFuture;
 import com.google.common.util.concurrent.FutureCallback;
 import com.google.common.util.concurrent.MoreExecutors;
 import java.util.Optional;
+import org.apache.pekko.actor.Props;
+import org.apache.pekko.actor.ReceiveTimeout;
+import org.apache.pekko.actor.Status.Failure;
+import org.apache.pekko.actor.Status.Success;
+import org.apache.pekko.actor.UntypedAbstractActor;
 import org.opendaylight.jsonrpc.provider.cluster.messages.PathAndDataMsg;
 import org.opendaylight.mdsal.common.api.CommitInfo;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
diff --git a/provider/cluster/src/test/java/org/opendaylight/jsonrpc/provider/cluster/MountpointTest.java b/provider/cluster/src/test/java/org/opendaylight/jsonrpc/provider/cluster/MountpointTest.java
index 26d00ab0..dc780f49 100644
--- a/provider/cluster/src/test/java/org/opendaylight/jsonrpc/provider/cluster/MountpointTest.java
+++ b/provider/cluster/src/test/java/org/opendaylight/jsonrpc/provider/cluster/MountpointTest.java
@@ -19,8 +19,6 @@ import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.timeout;
 import static org.mockito.Mockito.verify;
 
-import akka.actor.ActorSystem;
-import akka.testkit.javadsl.TestKit;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.util.concurrent.Futures;
@@ -33,6 +31,8 @@ import java.util.Optional;
 import java.util.ServiceLoader;
 import java.util.Set;
 import java.util.concurrent.ExecutionException;
+import org.apache.pekko.actor.ActorSystem;
+import org.apache.pekko.testkit.javadsl.TestKit;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/provider/cluster/src/test/resources/application.conf b/provider/cluster/src/test/resources/application.conf
index 22e1edbc..992532f3 100644
--- a/provider/cluster/src/test/resources/application.conf
+++ b/provider/cluster/src/test/resources/application.conf
@@ -1,7 +1,7 @@
 Slave {
-  akka {
+  pekko {
     actor {
-      provider = "akka.cluster.ClusterActorRefProvider"
+      provider = "org.apache.pekko.cluster.ClusterActorRefProvider"
       warn-about-java-serializer-usage = false
     }
     remote {
@@ -23,9 +23,9 @@ Slave {
 }
 
 Master {
-  akka {
+  pekko {
     actor {
-      provider = "akka.cluster.ClusterActorRefProvider"
+      provider = "org.apache.pekko.cluster.ClusterActorRefProvider"
       warn-about-java-serializer-usage = false
     }
     remote {
diff --git a/provider/common/pom.xml b/provider/common/pom.xml
index f6a89a21..ae628227 100644
--- a/provider/common/pom.xml
+++ b/provider/common/pom.xml
@@ -24,7 +24,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
             
                 org.opendaylight.mdsal
                 bnd-parent
-                14.0.2
+                14.0.13
                 pom
                 import
             
-- 
2.34.1


From ae78c90ebe93bb24824baffd8bafac855a0f5273 Mon Sep 17 00:00:00 2001
From: jenkins-releng 
Date: Mon, 7 Jul 2025 21:09:50 +0000
Subject: [PATCH 4/4] Release Validate

---
 api/pom.xml                           | 2 +-
 artifacts/pom.xml                     | 2 +-
 binding-adapter/pom.xml               | 2 +-
 bus/api/pom.xml                       | 2 +-
 bus/config/pom.xml                    | 2 +-
 bus/examples/binding-bridge/pom.xml   | 2 +-
 bus/examples/inband-models/pom.xml    | 2 +-
 bus/examples/pom.xml                  | 2 +-
 bus/jsonrpc/pom.xml                   | 2 +-
 bus/messagelib/pom.xml                | 2 +-
 bus/pom.xml                           | 2 +-
 bus/spi/pom.xml                       | 2 +-
 bus/transport-http/pom.xml            | 2 +-
 bus/transport-zmq/pom.xml             | 2 +-
 dom-codec/pom.xml                     | 2 +-
 features/features-jsonrpc/pom.xml     | 2 +-
 features/odl-jsonrpc-all/pom.xml      | 2 +-
 features/odl-jsonrpc-bus/pom.xml      | 2 +-
 features/odl-jsonrpc-cluster/pom.xml  | 2 +-
 features/odl-jsonrpc-provider/pom.xml | 2 +-
 features/pom.xml                      | 2 +-
 karaf/pom.xml                         | 2 +-
 parent/pom.xml                        | 2 +-
 pom.xml                               | 2 +-
 provider/cluster/pom.xml              | 2 +-
 provider/common/pom.xml               | 2 +-
 provider/pom.xml                      | 2 +-
 provider/single/pom.xml               | 2 +-
 security/aaa/pom.xml                  | 2 +-
 security/api/pom.xml                  | 2 +-
 security/noop/pom.xml                 | 2 +-
 security/pom.xml                      | 2 +-
 security/service/pom.xml              | 2 +-
 test-model/pom.xml                    | 2 +-
 tools/parent/pom.xml                  | 2 +-
 tools/pom.xml                         | 2 +-
 tools/test-tool/pom.xml               | 2 +-
 37 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/api/pom.xml b/api/pom.xml
index a8c64b9c..c9cc587b 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../parent
     
     jsonrpc-api
diff --git a/artifacts/pom.xml b/artifacts/pom.xml
index 053eb423..80fb37e5 100644
--- a/artifacts/pom.xml
+++ b/artifacts/pom.xml
@@ -16,7 +16,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
     org.opendaylight.jsonrpc
     jsonrpc-artifacts
-    1.18.0-SNAPSHOT
+    1.18.0
     pom
     JSON-RPC :: Artifacts
     
diff --git a/binding-adapter/pom.xml b/binding-adapter/pom.xml
index b36b9ab0..583a6e16 100644
--- a/binding-adapter/pom.xml
+++ b/binding-adapter/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../parent
     
 
diff --git a/bus/api/pom.xml b/bus/api/pom.xml
index 91332c63..a648b62e 100644
--- a/bus/api/pom.xml
+++ b/bus/api/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/bus/config/pom.xml b/bus/config/pom.xml
index 8ce08bf7..e18e5824 100644
--- a/bus/config/pom.xml
+++ b/bus/config/pom.xml
@@ -17,7 +17,7 @@
 
   org.opendaylight.jsonrpc.bus
   bus-config
-  1.18.0-SNAPSHOT
+  1.18.0
   JSON-RPC :: BUS :: Config
   Configuration files for JSONRPC bus
   jar
diff --git a/bus/examples/binding-bridge/pom.xml b/bus/examples/binding-bridge/pom.xml
index c966b617..6b174642 100644
--- a/bus/examples/binding-bridge/pom.xml
+++ b/bus/examples/binding-bridge/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/bus/examples/inband-models/pom.xml b/bus/examples/inband-models/pom.xml
index 32b0b6e1..45380122 100644
--- a/bus/examples/inband-models/pom.xml
+++ b/bus/examples/inband-models/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../../parent
     
     inband-models
diff --git a/bus/examples/pom.xml b/bus/examples/pom.xml
index 3ab4a32d..c20f8d26 100644
--- a/bus/examples/pom.xml
+++ b/bus/examples/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-bus
-        1.18.0-SNAPSHOT
+        1.18.0
     
     org.opendaylight.jsonrpc.bus
     examples
diff --git a/bus/jsonrpc/pom.xml b/bus/jsonrpc/pom.xml
index b34da879..6ac257b1 100644
--- a/bus/jsonrpc/pom.xml
+++ b/bus/jsonrpc/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/bus/messagelib/pom.xml b/bus/messagelib/pom.xml
index 0c4719fb..af52eb90 100644
--- a/bus/messagelib/pom.xml
+++ b/bus/messagelib/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/bus/pom.xml b/bus/pom.xml
index e5450f17..f2410e06 100644
--- a/bus/pom.xml
+++ b/bus/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc
-        1.18.0-SNAPSHOT
+        1.18.0
     
     jsonrpc-bus
     pom
diff --git a/bus/spi/pom.xml b/bus/spi/pom.xml
index 2a16a1bd..5669ea6d 100644
--- a/bus/spi/pom.xml
+++ b/bus/spi/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/bus/transport-http/pom.xml b/bus/transport-http/pom.xml
index 478684a7..a79d22bd 100644
--- a/bus/transport-http/pom.xml
+++ b/bus/transport-http/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/bus/transport-zmq/pom.xml b/bus/transport-zmq/pom.xml
index 9a68926a..61f68d90 100644
--- a/bus/transport-zmq/pom.xml
+++ b/bus/transport-zmq/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.bus
diff --git a/dom-codec/pom.xml b/dom-codec/pom.xml
index 6a526e59..67be4255 100644
--- a/dom-codec/pom.xml
+++ b/dom-codec/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../parent
     
 
diff --git a/features/features-jsonrpc/pom.xml b/features/features-jsonrpc/pom.xml
index fb526e76..5885e99b 100644
--- a/features/features-jsonrpc/pom.xml
+++ b/features/features-jsonrpc/pom.xml
@@ -19,7 +19,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
     org.opendaylight.jsonrpc
     features-jsonrpc
-    1.18.0-SNAPSHOT
+    1.18.0
     feature
     JSON-RPC :: Features :: repository
 
diff --git a/features/odl-jsonrpc-all/pom.xml b/features/odl-jsonrpc-all/pom.xml
index 5c6e18f1..a2f401a3 100644
--- a/features/odl-jsonrpc-all/pom.xml
+++ b/features/odl-jsonrpc-all/pom.xml
@@ -19,7 +19,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
     org.opendaylight.jsonrpc
     odl-jsonrpc-all
-    1.18.0-SNAPSHOT
+    1.18.0
     feature
     JSON-RPC :: Feature :: all
 
diff --git a/features/odl-jsonrpc-bus/pom.xml b/features/odl-jsonrpc-bus/pom.xml
index 052c0832..b3bd6d76 100644
--- a/features/odl-jsonrpc-bus/pom.xml
+++ b/features/odl-jsonrpc-bus/pom.xml
@@ -19,7 +19,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
     org.opendaylight.jsonrpc
     odl-jsonrpc-bus
-    1.18.0-SNAPSHOT
+    1.18.0
     feature
     JSON-RPC :: Feature :: bus
 
diff --git a/features/odl-jsonrpc-cluster/pom.xml b/features/odl-jsonrpc-cluster/pom.xml
index b231a5c4..03790862 100644
--- a/features/odl-jsonrpc-cluster/pom.xml
+++ b/features/odl-jsonrpc-cluster/pom.xml
@@ -19,7 +19,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
     org.opendaylight.jsonrpc
     odl-jsonrpc-cluster
-    1.18.0-SNAPSHOT
+    1.18.0
     feature
     JSON-RPC :: Feature :: Cluster
 
diff --git a/features/odl-jsonrpc-provider/pom.xml b/features/odl-jsonrpc-provider/pom.xml
index ed6a26ae..9c172394 100644
--- a/features/odl-jsonrpc-provider/pom.xml
+++ b/features/odl-jsonrpc-provider/pom.xml
@@ -19,7 +19,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
     org.opendaylight.jsonrpc
     odl-jsonrpc-provider
-    1.18.0-SNAPSHOT
+    1.18.0
     feature
     JSON-RPC :: Feature :: provider
 
diff --git a/features/pom.xml b/features/pom.xml
index e548a91c..6dceafe6 100644
--- a/features/pom.xml
+++ b/features/pom.xml
@@ -16,7 +16,7 @@
     
     org.opendaylight.jsonrpc
     features-aggregator
-    1.18.0-SNAPSHOT
+    1.18.0
     pom
     JSON-RPC :: Features :: Aggregator
     
diff --git a/karaf/pom.xml b/karaf/pom.xml
index 827e31a1..69022883 100644
--- a/karaf/pom.xml
+++ b/karaf/pom.xml
@@ -16,7 +16,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
     org.opendaylight.jsonrpc
     jsonrpc-karaf
-    1.18.0-SNAPSHOT
+    1.18.0
     JSON-RPC :: Karaf
     pom
     
diff --git a/parent/pom.xml b/parent/pom.xml
index 7841f55e..6cee263b 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -18,7 +18,7 @@
     4.0.0
     org.opendaylight.jsonrpc
     jsonrpc-parent
-    1.18.0-SNAPSHOT
+    1.18.0
     pom
     JSON-RPC :: Parent
 
diff --git a/pom.xml b/pom.xml
index 1899b639..d2b08a45 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,7 +16,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
     org.opendaylight.jsonrpc
     jsonrpc
-    1.18.0-SNAPSHOT
+    1.18.0
     pom
     JSON-RPC :: POM
     
diff --git a/provider/cluster/pom.xml b/provider/cluster/pom.xml
index dac19c96..7c730273 100644
--- a/provider/cluster/pom.xml
+++ b/provider/cluster/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-provider
-        1.18.0-SNAPSHOT
+        1.18.0
         ..
     
 
diff --git a/provider/common/pom.xml b/provider/common/pom.xml
index ae628227..5b2868df 100644
--- a/provider/common/pom.xml
+++ b/provider/common/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-provider
-        1.18.0-SNAPSHOT
+        1.18.0
         ..
     
 
diff --git a/provider/pom.xml b/provider/pom.xml
index e0f0ed22..e4d415a0 100644
--- a/provider/pom.xml
+++ b/provider/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../parent
     
 
diff --git a/provider/single/pom.xml b/provider/single/pom.xml
index 6d3368fe..795c2799 100644
--- a/provider/single/pom.xml
+++ b/provider/single/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-provider
-        1.18.0-SNAPSHOT
+        1.18.0
         ..
     
 
diff --git a/security/aaa/pom.xml b/security/aaa/pom.xml
index 6e89868b..b595c795 100644
--- a/security/aaa/pom.xml
+++ b/security/aaa/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.security
diff --git a/security/api/pom.xml b/security/api/pom.xml
index 2b78d4e0..509a4ec0 100644
--- a/security/api/pom.xml
+++ b/security/api/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.security
diff --git a/security/noop/pom.xml b/security/noop/pom.xml
index f92818a0..3644cad0 100644
--- a/security/noop/pom.xml
+++ b/security/noop/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.security
diff --git a/security/pom.xml b/security/pom.xml
index a6969e88..c694ea60 100644
--- a/security/pom.xml
+++ b/security/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc
-        1.18.0-SNAPSHOT
+        1.18.0
     
     jsonrpc-security
     pom
diff --git a/security/service/pom.xml b/security/service/pom.xml
index fbe24d4d..fe45e860 100644
--- a/security/service/pom.xml
+++ b/security/service/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     org.opendaylight.jsonrpc.security
diff --git a/test-model/pom.xml b/test-model/pom.xml
index f33bde7c..e6663630 100644
--- a/test-model/pom.xml
+++ b/test-model/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../parent
     
     jsonrpc-test-model
diff --git a/tools/parent/pom.xml b/tools/parent/pom.xml
index f4f1677b..1825005f 100644
--- a/tools/parent/pom.xml
+++ b/tools/parent/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../../parent
     
     tools-parent
diff --git a/tools/pom.xml b/tools/pom.xml
index 9808c6a3..b7af3a27 100644
--- a/tools/pom.xml
+++ b/tools/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         jsonrpc
-        1.18.0-SNAPSHOT
+        1.18.0
     
     jsonrpc-tools
     pom
diff --git a/tools/test-tool/pom.xml b/tools/test-tool/pom.xml
index b6f13072..4d3ea41f 100644
--- a/tools/test-tool/pom.xml
+++ b/tools/test-tool/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     
         org.opendaylight.jsonrpc
         tools-parent
-        1.18.0-SNAPSHOT
+        1.18.0
         ../parent
     
     test-tool
-- 
2.34.1