<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.dream11</groupId>
  <artifactId>d11-vertx-library-parent</artifactId>
  <version>1.0.8</version>
  <packaging>pom</packaging>

  <name>Dream11 Vertx Library Parent</name>
  <description>Parent POM for Dream11 Vertx library modules. Provides common configuration for Java 8 libraries built on Vert.x framework.</description>
  <url>https://github.com/dream11/d11-vertx-parent</url>

  <licenses>
    <license>
      <name>MIT License</name>
      <url>https://opensource.org/licenses/MIT</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <developers>
    <developer>
      <id>dream11</id>
      <name>Dream11 Engineering</name>
      <email>opensource@dream11.com</email>
      <organization>Dream11</organization>
      <organizationUrl>https://www.dream11.com</organizationUrl>
    </developer>
  </developers>

  <scm>
    <connection>scm:git:git://github.com/dream11/d11-vertx-parent.git</connection>
    <developerConnection>scm:git:ssh://github.com:dream11/d11-vertx-parent.git</developerConnection>
    <url>https://github.com/dream11/d11-vertx-parent/tree/main</url>
    <tag>1.0.8</tag>
  </scm>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.javadoc.plugin.version>3.2.0</maven.javadoc.plugin.version>
    <maven.compile.version>1.8</maven.compile.version>
    <maven.compile.source>1.8</maven.compile.source>
    <maven.compile.target>1.8</maven.compile.target>
    
    <!-- Vertx versions -->
    <vertx.version>3.9.2</vertx.version>
    <lombok.version>1.18.12</lombok.version>
    <netty.version>4.1.49.Final</netty.version>
    <dropwizard.version>4.0.2</dropwizard.version>
    <slf4j.version>1.8.0-beta2</slf4j.version>
    <logback.version>1.3.0-alpha4</logback.version>
    
    <!-- Plugin versions -->
    <maven.compiler.plugin.version>3.8.1</maven.compiler.plugin.version>
    <maven.clean.plugin.version>3.1.0</maven.clean.plugin.version>
    <maven.surefire.plugin.version>3.0.0-M5</maven.surefire.plugin.version>
    <maven.failsafe.plugin.version>3.0.0-M5</maven.failsafe.plugin.version>
    <maven.jacoco.plugin.version>0.8.6</maven.jacoco.plugin.version>
    <maven.source.plugin.version>3.2.1</maven.source.plugin.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.vertx</groupId>
        <artifactId>vertx-stack-depchain</artifactId>
        <version>${vertx.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>${maven.compiler.plugin.version}</version>
          <configuration>
            <source>${maven.compile.source}</source>
            <target>${maven.compile.target}</target>
            <encoding>${project.build.sourceEncoding}</encoding>
          </configuration>
        </plugin>
        
        <plugin>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>${maven.javadoc.plugin.version}</version>
          <configuration>
            <detectJavaApiLink>false</detectJavaApiLink>
            <doclint>none</doclint>
          </configuration>
        </plugin>
        
        <plugin>
          <artifactId>maven-source-plugin</artifactId>
          <version>${maven.source.plugin.version}</version>
        </plugin>
        
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>${maven.surefire.plugin.version}</version>
        </plugin>
        
        <plugin>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>${maven.failsafe.plugin.version}</version>
        </plugin>
        
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>${maven.jacoco.plugin.version}</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

</project>
