<?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>
  <name>${project.groupId}:${project.artifactId}</name>
  <packaging>pom</packaging>
  <parent>
    <groupId>ch.exense.dependencies</groupId>
    <artifactId>exense-dependencies</artifactId>
    <version>2026.7.1</version>
    <relativePath>../pom.xml</relativePath>
  </parent>

  <artifactId>dependencies-jackson</artifactId>

  <properties>
    <jjwt.version>0.13.0</jjwt.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.fasterxml.jackson</groupId>
        <artifactId>jackson-bom</artifactId>
        <version>2.21.4</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <!-- Newer version of jackson require parsson -->
      <dependency>
        <groupId>org.eclipse.parsson</groupId>
        <artifactId>parsson</artifactId>
        <version>1.1.6</version>
      </dependency>

      <!-- Jersey-compatible rs-api for Jackson -->
      <dependency>
        <groupId>jakarta.ws.rs</groupId>
        <artifactId>jakarta.ws.rs-api</artifactId>
        <version>3.1.0</version>
      </dependency>

      <!-- Transitive dependency of jackson and others (e.g. swagger), potentially with different versions;
      fix it to the highest version required (currently 2.4 by jackson) -->
      <dependency>
        <groupId>org.yaml</groupId>
        <artifactId>snakeyaml</artifactId>
        <version>2.5</version>
      </dependency>

      <!-- related, as it depends on jackson -->
      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt-api</artifactId>
        <version>${jjwt.version}</version>
      </dependency>

      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt-impl</artifactId>
        <version>${jjwt.version}</version>
        <scope>runtime</scope>
      </dependency>

      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt-jackson</artifactId>
        <version>${jjwt.version}</version>
        <scope>runtime</scope>
      </dependency>

    </dependencies>
  </dependencyManagement>
</project>
