<?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="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <artifactId>bom-base</artifactId>
    <packaging>pom</packaging>

    <parent>
        <groupId>net.microfalx.bom</groupId>
        <artifactId>bom</artifactId>
        <version>1.0.19</version>
    </parent>

    <name>BOM :: Base</name>

    <properties>

        <!-- Runtime -->

        <slf4j.version>2.0.18</slf4j.version>
        <log4j.version>2.26.0</log4j.version>
        <logback.version>1.5.32</logback.version>

        <apache.commons.lang.version>3.20.0</apache.commons.lang.version>
        <apache.commons.compress.version>1.28.0</apache.commons.compress.version>
        <apache.commons.codec.version>1.22.0</apache.commons.codec.version>
        <apache.httpclient.version>4.5.14</apache.httpclient.version>
        <apache.commons.io.version>2.22.0</apache.commons.io.version>
        <apache.commons.math.version>3.6.1</apache.commons.math.version>
        <apache.commons.email.version>1.6.0</apache.commons.email.version>
        <apache.commons.csv.version>1.14.1</apache.commons.csv.version>
        <apache.commons.bean.version>1.11.0</apache.commons.bean.version>
        <apache.tika.version>3.3.0</apache.tika.version>
        <apache.derby.version>10.17.1.0</apache.derby.version>
        <apache.james.version>0.8.14</apache.james.version>

        <jspecify.version>1.0.0</jspecify.version>
        <dom4j.version>2.2.0</dom4j.version>
        <google.guava.version>33.6.0-jre</google.guava.version>
        <google.protobuf.version>4.35.0</google.protobuf.version>
        <classindex.version>3.13</classindex.version>
        <sshd.version>2.17.1</sshd.version>
        <aws.s3.version>2.32.24</aws.s3.version>
        <!-- Do not go to 8.6.x yet since it depends on OkHttp 5.X -->
        <minio.version>8.5.17</minio.version>
        <jsch.version>0.1.55</jsch.version>
        <!-- Do not go to a newer version, the native libraries are not packaged properly -->
        <rocksdb.version>10.10.1.1</rocksdb.version>
        <micrometer.version>1.16.5</micrometer.version>
        <micrometer.tracing.version>1.6.5</micrometer.tracing.version>
        <kryo.version>5.6.2</kryo.version>
        <lombok.version>1.18.46</lombok.version>
        <jodd.version>5.1.6</jodd.version>
        <flexmark.version>0.64.8</flexmark.version>
        <mvel.version>2.5.2.Final</mvel.version>
        <jsqlparser.version>5.3</jsqlparser.version>
        <logstash-gelf.version>1.15.1</logstash-gelf.version>
        <datafaker.version>2.5.4</datafaker.version>
        <ipaddress.version>5.6.2</ipaddress.version>
        <joor.version>0.9.15</joor.version>
        <ulidj.version>2.0.0</ulidj.version>
        <netty.version>4.2.14.Final</netty.version>
        <syslog4j.version>0.9.63</syslog4j.version>
        <snmp4j.version>3.10.0</snmp4j.version>
        <snmp4j.agent.version>3.8.3</snmp4j.agent.version>
        <jsmiparser.version>0.14</jsmiparser.version>
        <syslog.version>1.1.7</syslog.version>
        <subethasmtp.version>7.2.2</subethasmtp.version>
        <oshi.version>7.1.0</oshi.version>
        <jansi.version>2.4.3</jansi.version>
        <thymeleaf.version>3.1.4.RELEASE</thymeleaf.version>
        <jackson.version>2.21.3</jackson.version>
        <jackson.annotations.version>2.21</jackson.annotations.version>
        <quartz.version>2.5.2</quartz.version>
        <zip4j.version>2.11.6</zip4j.version>
        <bucket4j.version>8.19.0</bucket4j.version>
        <modelmapper.version>3.2.6</modelmapper.version>
        <fliptables.version>1.1.1</fliptables.version>
        <mapstruct.version>1.6.3</mapstruct.version>
        <!-- Do not go to 5.0.x yet as there are some issues with it -->
        <okhttp.version>4.12.0</okhttp.version>
        <retrofit2.version>3.0.0</retrofit2.version>
        <jinjava.version>2.8.3</jinjava.version>
        <caffeine.version>3.2.4</caffeine.version>

        <!-- Database -->
        <mysql.version>9.7.0</mysql.version>
        <postgres.version>42.7.11</postgres.version>
        <vertica.version>25.3.0-0</vertica.version>
        <mongodb.version>5.7.0</mongodb.version>
        <mariadb.version>3.5.8</mariadb.version>
        <sqlite.version>3.53.1.0</sqlite.version>
        <cassandra.version>4.19.2</cassandra.version>
        <h2.version>2.4.240</h2.version>
        <ojdbc.version>23.26.2.0.0</ojdbc.version>
        <hikaricp.version>7.0.2</hikaricp.version>
        <jooq.version>3.21.4</jooq.version>
        <byte-buddy.version>1.18.8</byte-buddy.version>

        <!-- Tests -->

        <junit.version>6.1.0</junit.version>
        <assertj.version>3.27.7</assertj.version>
        <assertj.guava.version>3.27.7</assertj.guava.version>
        <mockito.version>5.23.0</mockito.version>
        <instancio.version>5.5.1</instancio.version>
        <jmh.version>1.37</jmh.version>
        <awaitility.version>4.3.0</awaitility.version>
        <selenium.version>4.44.0</selenium.version>
        <webdrivermanager.version>6.3.4</webdrivermanager.version>
        <!-- Do not upgrade to 5.X yet, Serenity is not compatible -->
        <serenity.version>4.3.4</serenity.version>
        <cucumber.version>7.19.0</cucumber.version>
        <testcontainers.version>1.21.4</testcontainers.version>

    </properties>

    <dependencyManagement>
        <dependencies>

            <!-- BOMs -->

            <dependency>
                <groupId>com.squareup.okhttp3</groupId>
                <artifactId>okhttp-bom</artifactId>
                <version>${okhttp.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.squareup.retrofit2</groupId>
                <artifactId>retrofit-bom</artifactId>
                <version>${retrofit2.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.junit</groupId>
                <artifactId>junit-bom</artifactId>
                <version>${junit.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.mockito</groupId>
                <artifactId>mockito-bom</artifactId>
                <version>${mockito.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.assertj</groupId>
                <artifactId>assertj-bom</artifactId>
                <version>${assertj.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>testcontainers-bom</artifactId>
                <version>${testcontainers.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.seleniumhq.selenium</groupId>
                <artifactId>selenium-bom</artifactId>
                <version>${selenium.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- Tests / Misc -->

            <dependency>
                <groupId>org.assertj</groupId>
                <artifactId>assertj-guava</artifactId>
                <version>${assertj.guava.version}</version>
            </dependency>

            <dependency>
                <groupId>org.openjdk.jmh</groupId>
                <artifactId>jmh-core</artifactId>
                <version>${jmh.version}</version>
            </dependency>

            <dependency>
                <groupId>org.openjdk.jmh</groupId>
                <artifactId>jmh-generator-annprocess</artifactId>
                <version>${jmh.version}</version>
            </dependency>

            <dependency>
                <groupId>io.github.bonigarcia</groupId>
                <artifactId>webdrivermanager</artifactId>
                <version>${webdrivermanager.version}</version>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-core</artifactId>
                <version>${serenity.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-screenplay</artifactId>
                <version>${serenity.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-rest-assured</artifactId>
                <version>${serenity.version}</version>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-ensure</artifactId>
                <version>${serenity.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-screenplay-webdriver</artifactId>
                <version>${serenity.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-cucumber</artifactId>
                <version>${serenity.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>net.serenity-bdd</groupId>
                <artifactId>serenity-junit5</artifactId>
                <version>${serenity.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>io.cucumber</groupId>
                <artifactId>cucumber-junit-platform-engine</artifactId>
                <version>${cucumber.version}</version>
                <scope>test</scope>
            </dependency>

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

            <dependency>
                <groupId>org.instancio</groupId>
                <artifactId>instancio-guava</artifactId>
                <version>${instancio.version}</version>
                <scope>test</scope>
            </dependency>

            <!-- Runtime / Logging -->

            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-bom</artifactId>
                <version>${slf4j.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- Runtime / Apache -->

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

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

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

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

            <dependency>
                <groupId>commons-beanutils</groupId>
                <artifactId>commons-beanutils</artifactId>
                <version>${apache.commons.bean.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
                <version>${apache.httpclient.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.sshd</groupId>
                <artifactId>sshd-core</artifactId>
                <version>${sshd.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.sshd</groupId>
                <artifactId>sshd-sftp</artifactId>
                <version>${sshd.version}</version>
            </dependency>

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

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

            <dependency>
                <groupId>org.apache.tika</groupId>
                <artifactId>tika-core</artifactId>
                <version>${apache.tika.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mime4j-core</artifactId>
                <version>${apache.james.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mime4j-mbox-iterator</artifactId>
                <version>${apache.james.version}</version>
            </dependency>

            <!-- Runtime / Database -->

            <dependency>
                <groupId>com.mysql</groupId>
                <artifactId>mysql-connector-j</artifactId>
                <version>${mysql.version}</version>
            </dependency>

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

            <dependency>
                <groupId>com.vertica.jdbc</groupId>
                <artifactId>vertica-jdbc</artifactId>
                <version>${vertica.version}</version>
            </dependency>

            <dependency>
                <groupId>org.mariadb.jdbc</groupId>
                <artifactId>mariadb-java-client</artifactId>
                <version>${mariadb.version}</version>
            </dependency>

            <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
                <version>${h2.version}</version>
            </dependency>

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

            <dependency>
                <groupId>com.oracle.database.jdbc</groupId>
                <artifactId>ojdbc-bom</artifactId>
                <version>${ojdbc.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.apache.cassandra</groupId>
                <artifactId>java-driver-bom</artifactId>
                <version>${cassandra.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

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

            <dependency>
                <groupId>org.mongodb</groupId>
                <artifactId>bson-record-codec</artifactId>
                <version>${mongodb.version}</version>
            </dependency>

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

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

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

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

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

            <dependency>
                <groupId>org.apache.derby</groupId>
                <artifactId>derbyclient</artifactId>
                <version>${apache.derby.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.derby</groupId>
                <artifactId>derbynet</artifactId>
                <version>${apache.derby.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.derby</groupId>
                <artifactId>derbyoptionaltools</artifactId>
                <version>${apache.derby.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.derby</groupId>
                <artifactId>derbyshared</artifactId>
                <version>${apache.derby.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.derby</groupId>
                <artifactId>derbytools</artifactId>
                <version>${apache.derby.version}</version>
            </dependency>

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

            <dependency>
                <groupId>org.jooq</groupId>
                <artifactId>jooq-codegen</artifactId>
                <version>${jooq.version}</version>
            </dependency>

            <dependency>
                <groupId>org.jooq</groupId>
                <artifactId>jooq-kotlin</artifactId>
                <version>${jooq.version}</version>
            </dependency>

            <dependency>
                <groupId>org.jooq</groupId>
                <artifactId>jooq-meta</artifactId>
                <version>${jooq.version}</version>
            </dependency>

            <dependency>
                <groupId>com.zaxxer</groupId>
                <artifactId>HikariCP</artifactId>
                <version>${hikaricp.version}</version>
            </dependency>

            <!-- Runtime / Misc -->

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

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

            <dependency>
                <groupId>org.awaitility</groupId>
                <artifactId>awaitility-groovy</artifactId>
                <version>${awaitility.version}</version>
            </dependency>

            <dependency>
                <groupId>org.awaitility</groupId>
                <artifactId>awaitility-kotlin</artifactId>
                <version>${awaitility.version}</version>
            </dependency>

            <dependency>
                <groupId>org.awaitility</groupId>
                <artifactId>awaitility-scala</artifactId>
                <version>${awaitility.version}</version>
            </dependency>

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

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

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

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

            <dependency>
                <groupId>com.jcraft</groupId>
                <artifactId>jsch</artifactId>
                <version>${jsch.version}</version>
            </dependency>

            <dependency>
                <groupId>com.amazonaws</groupId>
                <artifactId>aws-java-sdk-s3</artifactId>
                <version>${aws.s3.version}</version>
            </dependency>

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

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

            <dependency>
                <groupId>com.esotericsoftware</groupId>
                <artifactId>kryo</artifactId>
                <version>${kryo.version}</version>
            </dependency>

            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
                <scope>compile</scope>
            </dependency>

            <dependency>
                <groupId>com.github.seancfoley</groupId>
                <artifactId>ipaddress</artifactId>
                <version>${ipaddress.version}</version>
            </dependency>

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

            <dependency>
                <groupId>org.jodd</groupId>
                <artifactId>jodd-bean</artifactId>
                <version>${jodd.version}</version>
            </dependency>

            <dependency>
                <groupId>com.jakewharton.fliptables</groupId>
                <artifactId>fliptables</artifactId>
                <version>${fliptables.version}</version>
            </dependency>

            <dependency>
                <groupId>net.datafaker</groupId>
                <artifactId>datafaker</artifactId>
                <version>${datafaker.version}</version>
            </dependency>

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

            <dependency>
                <groupId>io.azam.ulidj</groupId>
                <artifactId>ulidj</artifactId>
                <version>${ulidj.version}</version>
            </dependency>

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

            <dependency>
                <groupId>com.vladsch.flexmark</groupId>
                <artifactId>flexmark-all</artifactId>
                <version>${flexmark.version}</version>
            </dependency>

            <dependency>
                <groupId>com.github.jsqlparser</groupId>
                <artifactId>jsqlparser</artifactId>
                <version>${jsqlparser.version}</version>
            </dependency>

            <dependency>
                <groupId>biz.paluch.logging</groupId>
                <artifactId>logstash-gelf</artifactId>
                <version>${logstash-gelf.version}</version>
            </dependency>

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

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

            <dependency>
                <groupId>com.github.davidmoten</groupId>
                <artifactId>subethasmtp</artifactId>
                <version>${subethasmtp.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>net.lingala.zip4j</groupId>
                <artifactId>zip4j</artifactId>
                <version>${zip4j.version}</version>
            </dependency>

            <dependency>
                <groupId>com.bucket4j</groupId>
                <artifactId>bucket4j_jdk17-core</artifactId>
                <version>${bucket4j.version}</version>
            </dependency>

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

            <dependency>
                <groupId>org.modelmapper.extensions</groupId>
                <artifactId>modelmapper-spring</artifactId>
                <version>${modelmapper.version}</version>
            </dependency>

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

            <dependency>
                <groupId>com.cloudbees</groupId>
                <artifactId>syslog-java-client</artifactId>
                <version>${syslog.version}</version>
            </dependency>

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

            <dependency>
                <groupId>org.snmp4j</groupId>
                <artifactId>snmp4j-agent</artifactId>
                <version>${snmp4j.agent.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-nop</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.snmp4j</groupId>
                <artifactId>snmp4j-agent-db</artifactId>
                <version>3.8.2</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-nop</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz</artifactId>
                <version>${quartz.version}</version>
            </dependency>

            <dependency>
                <groupId>org.jsmiparser</groupId>
                <artifactId>jsmiparser-api</artifactId>
                <version>${jsmiparser.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

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

            <dependency>
                <groupId>com.github.oshi</groupId>
                <artifactId>oshi-core</artifactId>
                <version>${oshi.version}</version>
            </dependency>

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

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

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

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

            <dependency>
                <groupId>com.hubspot.jinjava</groupId>
                <artifactId>jinjava</artifactId>
                <version>${jinjava.version}</version>
            </dependency>

            <!-- Caffeine -->

            <dependency>
                <groupId>com.github.ben-manes.caffeine</groupId>
                <artifactId>caffeine</artifactId>
                <version>${caffeine.version}</version>
            </dependency>

            <dependency>
                <groupId>com.github.ben-manes.caffeine</groupId>
                <artifactId>guava</artifactId>
                <version>${caffeine.version}</version>
            </dependency>

            <dependency>
                <groupId>com.github.ben-manes.caffeine</groupId>
                <artifactId>jcache</artifactId>
                <version>${caffeine.version}</version>
            </dependency>

            <dependency>
                <groupId>com.github.ben-manes.caffeine</groupId>
                <artifactId>simulator</artifactId>
                <version>${caffeine.version}</version>
            </dependency>

            <!-- Runtime / BOMs -->

            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-bom</artifactId>
                <version>${log4j.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty-bom</artifactId>
                <version>${netty.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>io.micrometer</groupId>
                <artifactId>micrometer-bom</artifactId>
                <version>${micrometer.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>io.micrometer</groupId>
                <artifactId>micrometer-tracing-bom</artifactId>
                <version>${micrometer.tracing.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson</groupId>
                <artifactId>jackson-bom</artifactId>
                <version>${jackson.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${jackson.annotations.version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>versions-maven-plugin</artifactId>
                <configuration>
                    <ruleSet>
                        <!-- Generic pre-releases -->
                        <ignoreVersions>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*beta.*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*alpha.*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*(ce|ccs)</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*rc\d*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*rc-\d*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*cr\d*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*dev\d*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*preview.*</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i).*m\d+</version>
                            </ignoreVersion>
                            <ignoreVersion>
                                <type>regex</type>
                                <version>(?i)20\d{6,12}.*</version>
                            </ignoreVersion>
                        </ignoreVersions>
                        <!-- Specific packages -->
                        <rules>
                            <rule>
                                <groupId>com.squareup.okhttp3</groupId>
                                <ignoreVersions>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>5.*</version>
                                    </ignoreVersion>
                                </ignoreVersions>
                            </rule>
                            <rule>
                                <groupId>net.serenity-bdd</groupId>
                                <ignoreVersions>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>5.*</version>
                                    </ignoreVersion>
                                </ignoreVersions>
                            </rule>
                            <rule>
                                <groupId>io.minio</groupId>
                                <ignoreVersions>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>8.6.*</version>
                                    </ignoreVersion>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>9.*</version>
                                    </ignoreVersion>
                                </ignoreVersions>
                            </rule>
                            <rule>
                                <groupId>org.rocksdb</groupId>
                                <ignoreVersions>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>10.3.*</version>
                                    </ignoreVersion>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>10.4.*</version>
                                    </ignoreVersion>
                                </ignoreVersions>
                            </rule>
                            <rule>
                                <groupId>org.testcontainers</groupId>
                                <ignoreVersions>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>2.*</version>
                                    </ignoreVersion>
                                </ignoreVersions>
                            </rule>
                            <rule>
                                <groupId>net.bytebuddy</groupId>
                                <ignoreVersions>
                                    <ignoreVersion>
                                        <type>regex</type>
                                        <version>.*-jdk5</version>
                                    </ignoreVersion>
                                </ignoreVersions>
                            </rule>
                        </rules>
                    </ruleSet>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>