<?xml version="1.0"?>
<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">
    <parent>
        <groupId>org.neo4j</groupId>
        <artifactId>cypher-parent</artifactId>
        <version>5.9.0</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <artifactId>neo4j-cypher-ir</artifactId>
    <packaging>jar</packaging>
    <name>Neo4j - Cypher Intermediate Representation</name>

    <description>The intermediate representations, such as the query graph</description>
    <url>http://components.neo4j.org/${project.artifactId}/${project.version}</url>

    <scm>
        <connection>scm:git:git://github.com/neo4j/neo4j.git</connection>
        <developerConnection>scm:git:git@github.com:neo4j/neo4j.git</developerConnection>
        <url>https://github.com/neo4j/neo4j</url>
    </scm>

    <properties>
        <license-text.header>headers/GPL-3-header.txt</license-text.header>
        <moduleName>org.neo4j.cypher.internal.ir</moduleName>
    </properties>

    <licenses>
        <license>
            <name>GNU General Public License, Version 3</name>
            <url>http://www.gnu.org/licenses/gpl-3.0-standalone.html</url>
            <comments>
                The software ("Software") developed and owned by Network Engine for
                Objects in Lund AB (referred to in this notice as "Neo Technology") is
                licensed under the GNU GENERAL PUBLIC LICENSE Version 3 to all third
                parties and that license is included below.

                However, if you have executed an End User Software License and Services
                Agreement or an OEM Software License and Support Services Agreement, or
                another commercial license agreement with Neo Technology or one of its
                affiliates (each, a "Commercial Agreement"), the terms of the license in
                such Commercial Agreement will supersede the GNU GENERAL PUBLIC LICENSE
                Version 3 and you may use the Software solely pursuant to the terms of
                the relevant Commercial Agreement.
            </comments>
        </license>
    </licenses>

    <dependencies>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-test-util</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-expressions</artifactId>
            <version>${project.version}</version>
        </dependency>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-ast</artifactId>
            <version>${project.version}</version>
        </dependency>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-front-end</artifactId>
            <version>${project.version}</version>
        </dependency>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-rewriting</artifactId>
            <version>${project.version}</version>
        </dependency>

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-exceptions</artifactId>
            <version>${project.version}</version>
        </dependency>

        <!-- scala -->

        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
        </dependency>

        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-reflect</artifactId>
        </dependency>

        <!-- scala test dependencies -->

        <dependency>
            <groupId>org.scalatest</groupId>
            <artifactId>scalatest_${scala.binary.version}</artifactId>
        </dependency>
        <dependency>
            <groupId>co.helmethair</groupId>
            <artifactId>scalatest-junit-runner</artifactId>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.scalatestplus</groupId>
            <artifactId>scalacheck-1-16_${scala.binary.version}</artifactId>
        </dependency>

        <!-- other -->

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
        </dependency>

        <!-- test dependencies -->

        <dependency>
            <groupId>org.neo4j</groupId>
            <artifactId>neo4j-ast</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
            <scope>test</scope>
        </dependency>


    </dependencies>

    <profiles>
        <profile>
            <id>scala-fatal-warnings</id>
            <activation>
                <property>
                    <name>scalaFatalWarnings</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>net.alchim31.maven</groupId>
                        <artifactId>scala-maven-plugin</artifactId>
                        <configuration>
                            <args combine.children="append">
                                <arg>-Xfatal-warnings</arg>
                                <arg>-Wconf:msg=match may not be exhaustive:i</arg>
                                <arg>-feature</arg>
                            </args>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

</project>
