<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements.  See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership.  The ASF licenses this file
  ~ to you under the Apache License, Version 2.0 (the
  ~ "License"); you may not use this file except in compliance
  ~ with the License.  You may obtain a copy of the License at
  ~
  ~   http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an
  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  ~ KIND, either express or implied.  See the License for the
  ~ specific language governing permissions and limitations
  ~ under the License.
  -->

<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <parent>
    <artifactId>kogito-build</artifactId>
    <groupId>org.kie.kogito</groupId>
    <version>999-SNAPSHOT</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>kogito-dependencies-bom</artifactId>
  <name>Kogito :: Dependencies :: BOM</name>
  <packaging>pom</packaging>
  <description>Third-party dependencies used by Kogito</description>

  <properties>
    <!-- These versions are overrides for transitive dependencies, to fix security vulnerabilities.
       They need to be checked with Quarkus and Spring Boot upgrades and eventually removed, if they are not needed anymore. -->
    <version.angus.mail>2.0.5</version.angus.mail>
    <!-- End of various transitive overrides. -->

    <!-- this version property is used in plugins but also in dependencies too -->
    <version.io.quarkus>3.27.2</version.io.quarkus>
    <version.io.quarkus.quarkus-test>${version.io.quarkus}</version.io.quarkus.quarkus-test>
    <version.org.springframework>6.2.15</version.org.springframework>
    <version.org.springframework.boot>3.5.10</version.org.springframework.boot>
    <version.org.apache.kafka>4.0.0</version.org.apache.kafka>

    <version.org.bouncycastle.bc.jdk18on>1.82</version.org.bouncycastle.bc.jdk18on>

    <!-- dependencies versions -->
    <version.com.networknt>1.0.86</version.com.networknt>
    <version.com.fasterxml.jackson>2.19.2</version.com.fasterxml.jackson>
    <version.com.fasterxml.jackson.databind>2.19.2</version.com.fasterxml.jackson.databind>
    <version.com.jayway.jsonpath>2.9.0</version.com.jayway.jsonpath>
    <version.com.ongres.scram>3.2</version.com.ongres.scram>
    <version.net.minidev.jsonsmart>2.4.10</version.net.minidev.jsonsmart>
    <version.net.thisptr.jackson-jq>1.0.0-preview.20240207</version.net.thisptr.jackson-jq>
    <version.io.quarkiverse.jackson-jq>2.4.0</version.io.quarkiverse.jackson-jq>
    <version.io.quarkiverse.openapi.generator>2.11.0-lts</version.io.quarkiverse.openapi.generator>
    <version.io.quarkiverse.asyncapi>1.0.5</version.io.quarkiverse.asyncapi>
    <version.io.quarkiverse.reactivemessaging.http>2.5.0-lts</version.io.quarkiverse.reactivemessaging.http>
    <version.io.quarkiverse.embedded.postgresql>0.8.0</version.io.quarkiverse.embedded.postgresql>
    <version.com.github.haifengl.smile>1.5.2</version.com.github.haifengl.smile>
    <version.com.github.javaparser>3.27.0</version.com.github.javaparser>
    <version.com.fasterxml.jackson.datatype>2.19.2</version.com.fasterxml.jackson.datatype>
    <version.com.github.victools>4.37.0</version.com.github.victools>
    <version.org.wiremock>3.13.0</version.org.wiremock>
    <version.com.google.protobuf>3.25.5</version.com.google.protobuf>
    <!-- We don't use gson directly. This is just to align versions of transitive dependencies -->
    <version.com.google.gson>2.13.2</version.com.google.gson>
    <!-- currently required for integration test only -->
    <version.com.sun.xml.bind.core>4.0.5</version.com.sun.xml.bind.core>
    <version.com.sun.activation>2.0.2</version.com.sun.activation>
    <version.javax.inject>2.0.1</version.javax.inject>
    <version.org.eclipse.microprofile.openapi>4.0.2</version.org.eclipse.microprofile.openapi>
    <version.ch.qos.logback>1.5.25</version.ch.qos.logback>
    <version.jakarta.annotation-api>3.0.0</version.jakarta.annotation-api>
    <version.jakarta.validation-api>3.1.1</version.jakarta.validation-api>
    <version.jakarta.xml.bind-api>4.0.4</version.jakarta.xml.bind-api>

    <version.io.netty>4.1.130.Final</version.io.netty>

    <version.io.cloudevents>3.0.0</version.io.cloudevents>
    <!--
    We add Fabric8 here to use as a basis for Addons/Kubernetes
    Don't add as a management dependency because it will break SpringBoot and Quarkus
    Kubernetes addons since they use a different version.
    -->
    <version.io.fabric8.kubernetes-client>7.3.1</version.io.fabric8.kubernetes-client>
    <version.io.micrometer>1.14.12</version.io.micrometer>
    <version.org.flywaydb>11.14.1</version.org.flywaydb>
    <version.org.postgresql>42.7.8</version.org.postgresql>
    <version.com.h2>2.3.232</version.com.h2> <!-- Overriding version 2.3.230 to fix https://github.com/h2database/h2database/issues/4079 -->
    <version.io.serverlessworkflow>4.1.0.Final</version.io.serverlessworkflow>
    <version.io.smallrye-open-api>4.0.12</version.io.smallrye-open-api>
    <version.io.smallrye-config>3.13.4</version.io.smallrye-config>
    <version.org.awaitility>4.3.0</version.org.awaitility>

    <version.com.squareup.okhttp3>4.12.0</version.com.squareup.okhttp3>

    <version.io.smallrye.reactive.mutiny-vertx-web-client>3.21.3</version.io.smallrye.reactive.mutiny-vertx-web-client>

    <version.io.vertx>4.5.23</version.io.vertx>
    <version.io.grpc>1.76.0</version.io.grpc>

    <version.io.quarkus.camel>3.27.2</version.io.quarkus.camel>

    <version.io.swagger.parser.v3>2.1.34</version.io.swagger.parser.v3>
    <version.io.swagger.core.v3>2.2.38</version.io.swagger.core.v3>

    <version.org.apache.commons>3.18.0</version.org.apache.commons>
    <version.commons.io>2.20.0</version.commons.io>

    <version.org.graalvm.nativeimage>23.1.2</version.org.graalvm.nativeimage>

    <version.org.infinispan>15.0.21.Final</version.org.infinispan>
    <version.org.infinispan.protostream>5.0.13.Final</version.org.infinispan.protostream>

    <version.org.rocksdb>7.10.2</version.org.rocksdb>
    <!-- consider migrating to 3.x JDK 9: https://jakarta.ee/specifications/restful-ws/ -->
    <version.jakarta.ws.rs>3.1.0</version.jakarta.ws.rs>
    <version.jakarta.persistence-api>3.2.0</version.jakarta.persistence-api>

    <version.org.jboss.resteasy>6.2.12.Final</version.org.jboss.resteasy>
    <version.org.keycloak>26.1.0</version.org.keycloak>
    <!-- It seems that the confluent kafka cannot replace wurstmeister/kafka so easily. See FAI-729 -->
    <version.wurstmeister.kafka>2.12-2.2.1</version.wurstmeister.kafka>
    <version.org.mongo>5.3.1</version.org.mongo>
    <version.org.mongo-image>5.0.31</version.org.mongo-image>
    <version.org.mozilla.rhino>1.8.1</version.org.mozilla.rhino>
    <version.org.redis>2.0.4</version.org.redis>
    <!-- PostgreSQL 16.8+ required for SASL authentication protocol -->
    <version.org.postgres>16.8-alpine3.21</version.org.postgres>
    <!-- we align to version used by quarkus -->
    <version.org.apache.avro>1.12.1</version.org.apache.avro>
    <version.org.assertj>3.27.7</version.org.assertj>
    <version.org.glassfish.jaxb>4.0.6</version.org.glassfish.jaxb>
    <version.org.json-unit-assertj>2.9.0</version.org.json-unit-assertj>
    <version.org.hamcrest>2.2</version.org.hamcrest> <!-- else old version coming from Mockito wins and breaks tests -->
    <version.org.junit>4.13.2</version.org.junit>
    <version.org.junit.jupiter>5.13.4</version.org.junit.jupiter>
    <version.org.junit.platform>1.13.4</version.org.junit.platform><!-- otherwise Quarkus brings its own, silently disabling some tests -->
    <version.org.mockito>5.18.0</version.org.mockito>
    <version.org.testcontainers>2.0.3</version.org.testcontainers>
    <version.org.xmlunit-core>2.10.4</version.org.xmlunit-core>
    <version.io.rest-assured>5.5.6</version.io.rest-assured>

    <version.net.byte-buddy>1.17.6</version.net.byte-buddy>

    <version.org.mvel>2.5.2.Final</version.org.mvel>
    <version.org.reactivestreams>1.0.4</version.org.reactivestreams>
    <version.org.reflections>0.10.2</version.org.reflections>
    <version.org.slf4j>2.0.17</version.org.slf4j>

    <version.maven>3.9.11</version.maven>
    <version.maven.project>2.2.1</version.maven.project>
    <version.maven.plugin>3.15.1</version.maven.plugin>
    <version.maven.invoker>3.2.0</version.maven.invoker>
    <version.maven.plugin.testing.harness>4.0.0-alpha-2</version.maven.plugin.testing.harness>
    <version.plexus>2.1.0</version.plexus>
    <version.plexus.classworld>2.6.0</version.plexus.classworld>

    <!-- see: https://maven.apache.org/surefire/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html#parallel-test-execution-and-single-thread-execution -->
    <version.com.github.stephenc.jcip>1.0-1</version.com.github.stephenc.jcip>
    <version.black.ninia>4.2.0</version.black.ninia>
    <version.com.google.collections>1.0</version.com.google.collections>
    <version.com.google.guava>33.4.8-jre</version.com.google.guava>
    <version.apache.commons.commons-compress>1.28.0</version.apache.commons.commons-compress>

    <version.tomcat.embed.core>10.1.52</version.tomcat.embed.core>
    <version.org.hibernate>7.1.14.Final</version.org.hibernate>
    <version.com.graphql-java>24.3</version.com.graphql-java>
  </properties>

  <dependencyManagement>
    <dependencies>
      <!-- Force spring boot to be in sync with quarkus for graphql-java dependencies -->
      <dependency>
        <groupId>com.graphql-java</groupId>
        <artifactId>graphql-java</artifactId>
        <version>${version.com.graphql-java}</version>
      </dependency>

      <!-- These versions are overrides for transitive dependencies, to fix security vulnerabilities. -->
      <dependency>
        <groupId>org.eclipse.angus</groupId>
        <artifactId>angus-mail</artifactId>
        <version>${version.angus.mail}</version>
      </dependency>
      <!-- End of various transitive overrides. -->

      <!-- Not directly used, but used to override transitive versions of Spring dependencies dependencies to fix vulnerabilities -->
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aspects</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-indexer</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core-test</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-expression</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-instrument</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jcl</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jms</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-messaging</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-oxm</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-r2dbc</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webflux</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-websocket</artifactId>
        <version>${version.org.springframework}</version>
      </dependency>

      <!-- Not directly used, but used to override transitive versions from other dependencies to fix vulnerabilities -->
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <version>${version.tomcat.embed.core}</version>
      </dependency>

      <!-- Not directly used, but a vulnerable version has been brought from com.dajudge.kindcontainer dependency -->
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk18on</artifactId>
        <version>${version.org.bouncycastle.bc.jdk18on}</version>
      </dependency>

      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk18on</artifactId>
        <version>${version.org.bouncycastle.bc.jdk18on}</version>
      </dependency>

      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcutil-jdk18on</artifactId>
        <version>${version.org.bouncycastle.bc.jdk18on}</version>
      </dependency>

      <!-- Guava should not be used directly by Kogito, here we are managing it to override dependency added by GRPC to fix this CVE: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2976 -->
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${version.com.google.guava}</version>
      </dependency>
      <dependency>
        <groupId>com.google.collections</groupId>
        <artifactId>google-collections</artifactId>
        <version>${version.com.google.collections}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>${version.apache.commons.commons-compress}</version>
      </dependency>

      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${version.commons.io}</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${version.org.slf4j}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>${version.org.slf4j}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-nop</artifactId>
        <version>${version.org.slf4j}</version>
      </dependency>

      <dependency>
        <groupId>org.mvel</groupId>
        <artifactId>mvel2</artifactId>
        <version>${version.org.mvel}</version>
      </dependency>

      <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>${version.com.google.protobuf}</version>
      </dependency>
      <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java-util</artifactId>
        <version>${version.com.google.protobuf}</version>
      </dependency>

      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>${version.com.google.gson}</version>
      </dependency>

      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>${version.ch.qos.logback}</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>${version.ch.qos.logback}</version>
      </dependency>

      <!-- Java 17 compatibility -->
      <dependency>
        <groupId>org.mozilla</groupId>
        <artifactId>rhino</artifactId>
        <version>${version.org.mozilla.rhino}</version>
      </dependency>
      <dependency>
        <groupId>org.mozilla</groupId>
        <artifactId>rhino-engine</artifactId>
        <version>${version.org.mozilla.rhino}</version>
      </dependency>

      <!-- gRPC dependencies -->
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-protobuf</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-stub</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-netty-shaded</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-netty</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-core</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-util</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-context</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-api</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-protobuf-lite</artifactId>
        <version>${version.io.grpc}</version>
      </dependency>

      <!-- code generation -->
      <dependency>
        <groupId>com.github.javaparser</groupId>
        <artifactId>javaparser-core</artifactId>
        <version>${version.com.github.javaparser}</version>
      </dependency>
      <dependency>
        <groupId>com.github.javaparser</groupId>
        <artifactId>javaparser-symbol-solver-core</artifactId>
        <version>${version.com.github.javaparser}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka-clients</artifactId>
        <version>${version.org.apache.kafka}</version>
        <exclusions>
          <!-- CVE-2025-12183: excluding lz4-java-1.8.0.jar that comes along kafka-clients 4.0.0 -->
          <exclusion>
            <groupId>org.lz4</groupId>
            <artifactId>lz4-java</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- marshalling -->
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${version.com.fasterxml.jackson.databind}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jsr310</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-yaml</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-jdk8</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.module</groupId>
        <artifactId>jackson-module-parameter-names</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.jakarta.rs</groupId>
        <artifactId>jackson-jakarta-rs-json-provider</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.jaxrs</groupId>
        <artifactId>jackson-jaxrs-base</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.module</groupId>
        <artifactId>jackson-module-jakarta-xmlbind-annotations</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-avro</artifactId>
        <version>${version.com.fasterxml.jackson}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.avro</groupId>
        <artifactId>avro</artifactId>
        <version>${version.org.apache.avro}</version>
      </dependency>
      <dependency>
        <groupId>com.jayway.jsonpath</groupId>
        <artifactId>json-path</artifactId>
        <version>${version.com.jayway.jsonpath}</version>
      </dependency>
      <dependency>
        <groupId>com.jayway.jsonpath</groupId>
        <artifactId>json-path-assert</artifactId>
        <version>${version.com.jayway.jsonpath}</version>
      </dependency>
      <dependency>
        <groupId>net.minidev</groupId>
        <artifactId>json-smart</artifactId>
        <version>${version.net.minidev.jsonsmart}</version>
      </dependency>
      <dependency>
        <groupId>net.thisptr</groupId>
        <artifactId>jackson-jq</artifactId>
        <version>${version.net.thisptr.jackson-jq}</version>
      </dependency>
      <dependency>
        <groupId>net.thisptr</groupId>
        <artifactId>jackson-jq-extra</artifactId>
        <version>${version.net.thisptr.jackson-jq}</version>
      </dependency>
      <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>${version.org.postgresql}</version>
      </dependency>
      <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <version>${version.com.h2}</version>
      </dependency>

      <dependency>
        <groupId>io.smallrye.config</groupId>
        <artifactId>smallrye-config</artifactId>
        <version>${version.io.smallrye-config}</version>
        <exclusions>
          <exclusion>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.annotation.versioning</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.ow2.asm</groupId>
            <artifactId>asm</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-open-api-core</artifactId>
        <version>${version.io.smallrye-open-api}</version>
      </dependency>
      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-open-api-ui</artifactId>
        <version>${version.io.smallrye-open-api}</version>
      </dependency>
      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-open-api-jaxrs</artifactId>
        <version>${version.io.smallrye-open-api}</version>
      </dependency>
      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-open-api-spring</artifactId>
        <version>${version.io.smallrye-open-api}</version>
      </dependency>
      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-open-api-vertx</artifactId>
        <version>${version.io.smallrye-open-api}</version>
      </dependency>

      <dependency>
        <groupId>com.squareup.okhttp3</groupId>
        <artifactId>okhttp</artifactId>
        <version>${version.com.squareup.okhttp3}</version>
      </dependency>

      <dependency>
        <groupId>io.smallrye.reactive</groupId>
        <artifactId>smallrye-mutiny-vertx-web-client</artifactId>
        <version>${version.io.smallrye.reactive.mutiny-vertx-web-client}</version>
      </dependency>

      <dependency>
        <groupId>io.smallrye.reactive</groupId>
        <artifactId>smallrye-mutiny-vertx-auth-oauth2</artifactId>
        <version>${version.io.smallrye.reactive.mutiny-vertx-web-client}</version>
      </dependency>

      <!-- Forced version of the majority of general netty dependencies. This is to enforce an aligned netty libraries version in transitive dependencies, due to possible CVEs. -->
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-buffer</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-dns</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-haproxy</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-http</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-http2</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-memcache</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-mqtt</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-redis</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-smtp</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-socks</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-stomp</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec-xml</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-common</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-dev-tools</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-handler</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-handler-proxy</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-handler-ssl-ocsp</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-resolver</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-resolver-dns</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-transport</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-transport-rxtx</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-transport-sctp</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-transport-udt</artifactId>
        <version>${version.io.netty}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-all</artifactId>
        <version>${version.io.netty}</version>
      </dependency>

      <!-- metrics - monitoring -->
      <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-core</artifactId>
        <version>${version.io.micrometer}</version>
      </dependency>
      <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
        <version>${version.io.micrometer}</version>
      </dependency>
      <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-elastic</artifactId>
        <version>${version.io.micrometer}</version>
      </dependency>

      <dependency>
        <groupId>jakarta.ws.rs</groupId>
        <artifactId>jakarta.ws.rs-api</artifactId>
        <version>${version.jakarta.ws.rs}</version>
      </dependency>

      <dependency>
        <groupId>jakarta.persistence</groupId>
        <artifactId>jakarta.persistence-api</artifactId>
        <version>${version.jakarta.persistence-api}</version>
      </dependency>

      <!-- fabric8 dependencies -->
      <dependency>
        <groupId>io.fabric8</groupId>
        <artifactId>openshift-client-api</artifactId>
        <version>${version.io.fabric8.kubernetes-client}</version>
      </dependency>
      <dependency>
        <groupId>io.fabric8</groupId>
        <artifactId>kubernetes-client-api</artifactId>
        <version>${version.io.fabric8.kubernetes-client}</version>
      </dependency>
      <dependency>
        <groupId>io.fabric8</groupId>
        <artifactId>kubernetes-client</artifactId>
        <version>${version.io.fabric8.kubernetes-client}</version>
      </dependency>
      <dependency>
        <groupId>io.fabric8</groupId>
        <artifactId>knative-client</artifactId>
        <version>${version.io.fabric8.kubernetes-client}</version>
      </dependency>
      <dependency>
        <groupId>io.fabric8</groupId>
        <artifactId>knative-model</artifactId>
        <version>${version.io.fabric8.kubernetes-client}</version>
      </dependency>
      <dependency>
        <groupId>io.fabric8</groupId>
        <artifactId>kubernetes-server-mock</artifactId>
        <version>${version.io.fabric8.kubernetes-client}</version>
      </dependency>

      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>${version.org.junit.jupiter}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.awaitility</groupId>
        <artifactId>awaitility</artifactId>
        <version>${version.org.awaitility}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${version.org.junit}</version>
      </dependency>
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter</artifactId>
        <version>${version.org.junit.jupiter}</version>
        <scope>test</scope>
      </dependency>
      <dependency> <!-- TODO move this dep into surefire-plugin when all modules are migrated to JUnit 5 -->
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>${version.org.junit.jupiter}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-params</artifactId>
        <version>${version.org.junit.jupiter}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.platform</groupId>
        <artifactId>junit-platform-engine</artifactId>
        <version>${version.org.junit.platform}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.platform</groupId>
        <artifactId>junit-platform-commons</artifactId>
        <version>${version.org.junit.platform}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.platform</groupId>
        <artifactId>junit-platform-launcher</artifactId>
        <version>${version.org.junit.platform}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.vintage</groupId>
        <artifactId>junit-vintage-engine</artifactId>
        <version>${version.org.junit.jupiter}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-core</artifactId>
        <version>${version.org.assertj}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-core</artifactId>
        <version>${version.org.mockito}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-junit-jupiter</artifactId>
        <version>${version.org.mockito}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.xmlunit</groupId>
        <artifactId>xmlunit-core</artifactId>
        <version>${version.org.xmlunit-core}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>io.rest-assured</groupId>
        <artifactId>rest-assured</artifactId>
        <version>${version.io.rest-assured}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>io.rest-assured</groupId>
        <artifactId>json-path</artifactId>
        <version>${version.io.rest-assured}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>io.rest-assured</groupId>
        <artifactId>xml-path</artifactId>
        <version>${version.io.rest-assured}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>net.bytebuddy</groupId>
        <artifactId>byte-buddy</artifactId>
        <version>${version.net.byte-buddy}</version>
      </dependency>

      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest-library</artifactId>
        <version>${version.org.hamcrest}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest-core</artifactId>
        <version>${version.org.hamcrest}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>net.javacrumbs.json-unit</groupId>
        <artifactId>json-unit-assertj</artifactId>
        <version>${version.org.json-unit-assertj}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.wiremock</groupId>
        <artifactId>wiremock</artifactId>
        <version>${version.org.wiremock}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.wiremock</groupId>
        <artifactId>wiremock-standalone</artifactId>
        <version>${version.org.wiremock}</version>
        <scope>test</scope>
      </dependency>
      <!-- SCRAM authentication for PostgreSQL 16+; required by Vert.x reactive pg-client -->
      <dependency>
        <groupId>com.ongres.scram</groupId>
        <artifactId>scram-client</artifactId>
        <version>${version.com.ongres.scram}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.shared</groupId>
        <artifactId>maven-invoker</artifactId>
        <version>${version.maven.invoker}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-artifact</artifactId>
        <version>${version.maven}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model</artifactId>
        <version>${version.maven}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-plugin-api</artifactId>
        <version>${version.maven}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-project</artifactId>
        <version>${version.maven.project}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-core</artifactId>
        <version>${version.maven}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-tools</groupId>
        <artifactId>maven-plugin-annotations</artifactId>
        <version>${version.maven.plugin}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-testing</groupId>
        <artifactId>maven-plugin-testing-harness</artifactId>
        <version>${version.maven.plugin.testing.harness}</version>
      </dependency>

      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-component-annotations</artifactId>
        <version>${version.plexus}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-container-default</artifactId>
        <version>${version.plexus}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.plexus</groupId>
        <artifactId>plexus-classworlds</artifactId>
        <version>${version.plexus.classworld}</version>
      </dependency>

      <dependency>
        <groupId>jakarta.xml.bind</groupId>
        <artifactId>jakarta.xml.bind-api</artifactId>
        <version>${version.jakarta.xml.bind-api}</version>
      </dependency>
      <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-core</artifactId>
        <version>${version.com.sun.xml.bind.core}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.jaxb</groupId>
        <artifactId>jaxb-runtime</artifactId>
        <version>${version.org.glassfish.jaxb}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.angus</groupId>
        <artifactId>angus-activation</artifactId>
        <version>${version.com.sun.activation}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.validation</groupId>
        <artifactId>jakarta.validation-api</artifactId>
        <version>${version.jakarta.validation-api}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.inject</groupId>
        <artifactId>jakarta.inject-api</artifactId>
        <version>${version.javax.inject}</version>
      </dependency>
      <dependency>
        <groupId>jakarta.annotation</groupId>
        <artifactId>jakarta.annotation-api</artifactId>
        <version>${version.jakarta.annotation-api}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.microprofile.openapi</groupId>
        <artifactId>microprofile-openapi-api</artifactId>
        <version>${version.org.eclipse.microprofile.openapi}</version>
      </dependency>

      <dependency>
        <groupId>org.graalvm.nativeimage</groupId>
        <artifactId>svm</artifactId>
        <version>${version.org.graalvm.nativeimage}</version>
      </dependency>

      <dependency>
        <groupId>org.reactivestreams</groupId>
        <artifactId>reactive-streams</artifactId>
        <version>${version.org.reactivestreams}</version>
      </dependency>

      <dependency>
        <groupId>io.swagger.parser.v3</groupId>
        <artifactId>swagger-parser</artifactId>
        <version>${version.io.swagger.parser.v3}</version>
      </dependency>

      <dependency>
        <groupId>io.swagger.core.v3</groupId>
        <artifactId>swagger-model</artifactId>
        <version>${version.io.swagger.core.v3}</version>
      </dependency>

      <dependency>
        <groupId>io.swagger.core.v3</groupId>
        <artifactId>swagger-core</artifactId>
        <version>${version.io.swagger.core.v3}</version>
      </dependency>

      <!-- Flyway -->
      <dependency>
        <groupId>org.flywaydb</groupId>
        <artifactId>flyway-core</artifactId>
        <version>${version.org.flywaydb}</version>
      </dependency>
      <dependency>
        <groupId>org.flywaydb</groupId>
        <artifactId>flyway-database-postgresql</artifactId>
        <version>${version.org.flywaydb}</version>
      </dependency>
      <!-- infinispan -->
      <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-remote-query-client</artifactId>
        <version>${version.org.infinispan}</version>
      </dependency>
      <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-client-hotrod</artifactId>
        <version>${version.org.infinispan}</version>
      </dependency>
      <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-query-dsl</artifactId>
        <version>${version.org.infinispan}</version>
      </dependency>
      <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-commons</artifactId>
        <version>${version.org.infinispan}</version>
      </dependency>
      <dependency>
        <groupId>org.infinispan.protostream</groupId>
        <artifactId>protostream</artifactId>
        <version>${version.org.infinispan.protostream}</version>
      </dependency>
      <dependency>
        <groupId>org.infinispan.protostream</groupId>
        <artifactId>protostream-processor</artifactId>
        <version>${version.org.infinispan.protostream}</version>
      </dependency>
      <!--rockdb-->
      <dependency>
        <groupId>org.rocksdb</groupId>
        <artifactId>rocksdbjni</artifactId>
        <version>${version.org.rocksdb}</version>
      </dependency>

      <!-- Vertx libraries, including PostgreSQL client -->
      <dependency>
        <groupId>io.vertx</groupId>
        <artifactId>vertx-pg-client</artifactId>
        <version>${version.io.vertx}</version>
      </dependency>
      <dependency>
        <groupId>io.vertx</groupId>
        <artifactId>vertx-web</artifactId>
        <version>${version.io.vertx}</version>
      </dependency>

      <!-- predictions/machine learning related -->
      <dependency>
        <groupId>com.github.haifengl</groupId>
        <artifactId>smile-core</artifactId>
        <version>${version.com.github.haifengl.smile}</version>
      </dependency>

      <dependency>
        <groupId>org.reflections</groupId>
        <artifactId>reflections</artifactId>
        <version>${version.org.reflections}</version>
      </dependency>

      <!-- CloudEvents -->
      <dependency>
        <groupId>io.cloudevents</groupId>
        <artifactId>cloudevents-api</artifactId>
        <version>${version.io.cloudevents}</version>
      </dependency>
      <dependency>
        <groupId>io.cloudevents</groupId>
        <artifactId>cloudevents-core</artifactId>
        <version>${version.io.cloudevents}</version>
      </dependency>
      <dependency>
        <groupId>io.cloudevents</groupId>
        <artifactId>cloudevents-json-jackson</artifactId>
        <version>${version.io.cloudevents}</version>
      </dependency>
      <dependency>
        <groupId>io.cloudevents</groupId>
        <artifactId>cloudevents-kafka</artifactId>
        <version>${version.io.cloudevents}</version>
      </dependency>
      <dependency>
        <groupId>io.cloudevents</groupId>
        <artifactId>cloudevents-http-restful-ws</artifactId>
        <version>${version.io.cloudevents}</version>
      </dependency>
      <dependency>
        <groupId>io.cloudevents</groupId>
        <artifactId>cloudevents-http-vertx</artifactId>
        <version>${version.io.cloudevents}</version>
      </dependency>

      <!--  Json Schema -->
      <dependency>
        <groupId>com.github.victools</groupId>
        <artifactId>jsonschema-generator</artifactId>
        <version>${version.com.github.victools}</version>
      </dependency>
      <dependency>
        <groupId>com.networknt</groupId>
        <artifactId>json-schema-validator</artifactId>
        <version>${version.com.networknt}</version>
        <exclusions>
          <exclusion>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.datatype</groupId>
        <artifactId>jackson-datatype-json-org</artifactId>
        <version>${version.com.fasterxml.jackson.datatype}</version>
      </dependency>
      <!-- Serverless Workflow -->
      <dependency>
        <groupId>io.serverlessworkflow</groupId>
        <artifactId>serverlessworkflow-api</artifactId>
        <version>${version.io.serverlessworkflow}</version>
      </dependency>
      <dependency>
        <groupId>io.serverlessworkflow</groupId>
        <artifactId>serverlessworkflow-spi</artifactId>
        <version>${version.io.serverlessworkflow}</version>
      </dependency>
      <dependency>
        <groupId>io.serverlessworkflow</groupId>
        <artifactId>serverlessworkflow-validation</artifactId>
        <version>${version.io.serverlessworkflow}</version>
      </dependency>
      <dependency>
        <groupId>io.serverlessworkflow</groupId>
        <artifactId>serverlessworkflow-diagram</artifactId>
        <version>${version.io.serverlessworkflow}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
        <version>${version.org.jboss.resteasy}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-multipart-provider</artifactId>
        <version>${version.org.jboss.resteasy}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jackson2-provider</artifactId>
        <version>${version.org.jboss.resteasy}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${version.org.apache.commons}</version>
      </dependency>
      <dependency>
        <groupId>black.ninia</groupId>
        <artifactId>jep</artifactId>
        <version>${version.black.ninia}</version>
      </dependency>

      <!-- testcontainers dependencies -->
      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers</artifactId>
        <version>${version.org.testcontainers}</version>
        <scope>compile</scope>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-junit-jupiter</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-kafka</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-mongodb</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-postgresql</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-jdbc</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-oracle-xe</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-database-commons</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>

      <dependency>
        <groupId>org.testcontainers</groupId>
        <artifactId>testcontainers-toxiproxy</artifactId>
        <version>${version.org.testcontainers}</version>
      </dependency>
      <dependency>
        <groupId>org.hibernate.orm</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${version.org.hibernate}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>


</project>
