<?xml version="1.0" encoding="utf-8"?>
<!-- License: GPL. For details, see LICENSE file. -->
<ivy-module version="2.0" xmlns:maven="http://ant.apache.org/ivy/maven">
    <info organisation="org.openstreetmap" module="josm"/>
    <configurations>
        <!--  configurations that should be used when specifying dependencies -->
        <conf name="implementation" description="All libs JOSM uses that plugins should not use"/>
        <conf name="api" description="All libs that JOSM uses and are available for plugins"/>
        <conf name="runtimeOnly" description="The libs shipped with JOSM that we do not need during compilation"/>
        <conf name="provided" description="The libs we need during compilation but not on application start"/>
        <!-- Special configurations used to retrieve jar files of test lib/tools referred by file path -->
        <conf name="commonslang" description="Apache Commons Lang test library"/>
        <conf name="jmockit" description="JMockit test library"/>
        <conf name="jacocoant" description="Jacoco Ant test library"/>
        <!--  Meta configurations used in build scripts -->
        <conf name="runtime" description="Libraries only needed at runtime" extends="implementation,api,runtimeOnly"/>
        <conf name="compile" description="Libraries needed only for compilation" extends="implementation,api,provided"/>
        <conf name="test" description="Libraries only needed for testing" extends="compile,runtime,commonslang,jmockit"/>
        <conf name="sources" description="Source code of used libraries"/>
    </configurations>
    <dependencies>
        <!-- api->default -->
        <dependency conf="api->default" org="org.openstreetmap.jmapviewer" name="jmapviewer" rev="2.13"/>
        <dependency conf="api->default" org="javax.json" name="javax.json-api" rev="1.1.4"/>
        <dependency conf="api->default" org="org.glassfish" name="javax.json" rev="1.1.4"/>
        <dependency conf="api->default" org="commons-logging" name="commons-logging" rev="1.2"/>
        <dependency conf="api->default" org="org.apache.commons" name="commons-jcs-core" rev="3.0-SNAPSHOT"/>
        <dependency conf="api->default" org="org.apache.commons" name="commons-compress" rev="1.20"/>
        <dependency conf="api->default" org="org.tukaani" name="xz" rev="1.8"/>
        <dependency conf="api->default" org="com.adobe.xmp" name="xmpcore" rev="6.1.10"/>
        <dependency conf="api->default" org="com.drewnoakes" name="metadata-extractor" rev="2.13.0" transitive="false"/>
        <dependency conf="api->default" org="ch.poole" name="OpeningHoursParser" rev="0.21.3"/>
        <!-- sources->sources -->
        <dependency conf="sources->sources" org="org.openstreetmap.jmapviewer" name="jmapviewer" rev="2.13"/>
        <dependency conf="sources->sources" org="javax.json" name="javax.json-api" rev="1.1.4"/>
        <dependency conf="sources->sources" org="org.glassfish" name="javax.json" rev="1.1.4"/>
        <dependency conf="sources->sources" org="commons-logging" name="commons-logging" rev="1.2"/>
        <dependency conf="sources->sources" org="org.apache.commons" name="commons-jcs-core" rev="3.0-SNAPSHOT"/>
        <dependency conf="sources->sources" org="org.apache.commons" name="commons-compress" rev="1.20"/>
        <dependency conf="sources->sources" org="org.tukaani" name="xz" rev="1.8"/>
        <dependency conf="sources->sources" org="com.adobe.xmp" name="xmpcore" rev="6.1.10"/>
        <dependency conf="sources->sources" org="com.drewnoakes" name="metadata-extractor" rev="2.13.0" transitive="false"/>
        <dependency conf="sources->sources" org="ch.poole" name="OpeningHoursParser" rev="0.21.3"/>
        <!-- commonslang->default -->
        <dependency conf="commonslang->default" org="org.apache.commons" name="commons-lang3" rev="3.10"/>
        <!-- jacocoant->default -->
        <dependency conf="jacocoant->default" org="org.jacoco" name="org.jacoco.ant" rev="0.8.6-SNAPSHOT">
            <artifact name="org.jacoco.ant" type="jar" maven:classifier="nodeps"/>
        </dependency>
        <!-- jmockit->default - Don't upgrade JMockit until https://josm.openstreetmap.de/ticket/18200 is resolved -->
        <dependency conf="jmockit->default" org="org.jmockit" name="jmockit" rev="1.44"/>
        <!-- test->default -->
        <dependency conf="test->default" org="com.github.spotbugs" name="spotbugs-annotations" rev="4.0.1"/>
        <dependency conf="test->default" org="com.github.stefanbirkner" name="system-rules" rev="1.19.0">
            <exclude module="junit-dep" />
        </dependency>
        <dependency conf="test->default" org="com.github.tomakehurst" name="wiremock" rev="2.26.3"/>
        <dependency conf="test->default" org="io.github.classgraph" name="classgraph" rev="4.8.67"/>
        <dependency conf="test->default" org="junit" name="junit" rev="4.12"/>
        <dependency conf="test->default" org="net.trajano.commons" name="commons-testing" rev="2.1.0"/>
        <dependency conf="test->default" org="nl.jqno.equalsverifier" name="equalsverifier" rev="3.1.13"/>
        <dependency conf="test->default" org="org.apache.commons" name="commons-lang3" rev="3.10"/>
        <dependency conf="test->default" org="org.awaitility" name="awaitility" rev="4.0.2"/>
    </dependencies>
</ivy-module>
