<?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>

  <parent>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>mojo-parent</artifactId>
    <version>95</version>
  </parent>

  <artifactId>buildnumber-maven-plugin</artifactId>
  <version>3.3.0</version>
  <packaging>maven-plugin</packaging>

  <name>Build Number Maven Plugin</name>
  <description>This plugin is designed to give you a build number. So when you might make 100 builds of version
     1.0-SNAPSHOT, you can differentiate between them all.</description>

  <url>https://www.mojohaus.org/buildnumber-maven-plugin/</url>
  <inceptionYear>2007</inceptionYear>

  <licenses>
    <license>
      <name>The MIT License</name>
      <url>https://spdx.org/licenses/MIT.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <developers>
    <developer>
      <id>woodj</id>
      <name>Julian Wood</name>
      <email>woodj@ucalgary.ca</email>
      <organization>Learning Commons, University of Calgary</organization>
      <organizationUrl>https://commons.ucalgary.ca</organizationUrl>
      <roles>
        <role>Programmer</role>
      </roles>
    </developer>
    <developer>
      <id>olamy</id>
      <name>Olivier Lamy</name>
      <email>olamy@apache.org</email>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <id>bimargulies</id>
      <name>Benson Margulies</name>
      <email>bimargulies@apache.org</email>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <id>khmarbaise</id>
      <name>Karl Heinz Marbaise</name>
      <email>khmarbaise@apache.org</email>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
  </developers>

  <prerequisites>
    <maven>${mavenVersion}</maven>
  </prerequisites>

  <scm>
    <connection>scm:git:https://github.com/mojohaus/buildnumber-maven-plugin.git</connection>
    <developerConnection>scm:git:https://github.com/mojohaus/buildnumber-maven-plugin.git</developerConnection>
    <tag>buildnumber-maven-plugin=3.3.0</tag>
    <url>https://github.com/mojohaus/buildnumber-maven-plugin/tree/master</url>
  </scm>

  <issueManagement>
    <system>GitHub</system>
    <url>https://github.com/mojohaus/buildnumber-maven-plugin/issues</url>
  </issueManagement>

  <properties>
    <maven.scm.version>2.2.1</maven.scm.version>
    <mojo.java.target>8</mojo.java.target>
    <maven.it.version>${mavenVersion}</maven.it.version>
    <takari.plugin.testing.version>3.0.0</takari.plugin.testing.version>
    <takari-lifecycle-plugin.version>2.0.8</takari-lifecycle-plugin.version>
    <test.excludes>**/it/**</test.excludes>
    <scmpublish.content>target/staging/${project.artifactId}</scmpublish.content>
    <project.build.outputTimestamp>2026-01-18T22:07:42Z</project.build.outputTimestamp>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-settings</artifactId>
      <version>${mavenVersion}</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-core</artifactId>
      <version>${mavenVersion}</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-plugin-api</artifactId>
      <version>${mavenVersion}</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>org.apache.maven.scm</groupId>
      <artifactId>maven-scm-api</artifactId>
      <version>${maven.scm.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.scm</groupId>
      <artifactId>maven-scm-manager-plexus</artifactId>
      <version>${maven.scm.version}</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <groupId>org.codehaus.plexus</groupId>
          <artifactId>plexus-container-default</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.scm</groupId>
      <artifactId>maven-scm-provider-svnexe</artifactId>
      <version>${maven.scm.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.scm</groupId>
      <artifactId>maven-scm-provider-gitexe</artifactId>
      <version>${maven.scm.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.scm</groupId>
      <artifactId>maven-scm-provider-svn-commons</artifactId>
      <version>${maven.scm.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.scm</groupId>
      <artifactId>maven-scm-provider-hg</artifactId>
      <version>${maven.scm.version}</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>com.google.code.maven-scm-provider-svnjava</groupId>
      <artifactId>maven-scm-provider-svnjava</artifactId>
      <version>2.3.0</version>
      <scope>compile</scope>
      <exclusions>
        <!--
          ! This will bring svnkit 1.8.11
        -->
        <exclusion>
          <groupId>org.tmatesoft.svnkit</groupId>
          <artifactId>svnkit</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.tmatesoft.svnkit</groupId>
      <artifactId>svnkit</artifactId>
      <version>1.10.11</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.codehaus.plexus</groupId>
      <artifactId>plexus-utils</artifactId>
      <version>4.0.2</version>
    </dependency>
    <dependency>
      <groupId>org.codehaus.plexus</groupId>
      <artifactId>plexus-xml</artifactId>
      <version>3.0.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.plugin-tools</groupId>
      <artifactId>maven-plugin-annotations</artifactId>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>org.sonatype.plexus</groupId>
      <artifactId>plexus-sec-dispatcher</artifactId>
      <version>1.4</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>io.takari.maven.plugins</groupId>
      <artifactId>takari-plugin-testing</artifactId>
      <version>${takari.plugin.testing.version}</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>io.takari.maven.plugins</groupId>
      <artifactId>takari-plugin-integration-testing</artifactId>
      <version>${takari.plugin.testing.version}</version>
      <type>pom</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.13.2</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>

  <build>
    <pluginManagement>
      <plugins>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <configuration>
            <trimStackTrace>false</trimStackTrace>
            <excludes>
              <exclude>${test.excludes}</exclude>
            </excludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <configuration>
            <failOnWarnings>false</failOnWarnings>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>

  </build>

  <profiles>
    <profile>
      <id>run-its</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
        <test.excludes />
      </properties>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
              <execution>
                <id>unpack</id>
                <goals>
                  <goal>unpack</goal>
                </goals>
                <phase>generate-test-resources</phase>
                <configuration>
                  <outputDirectory>${project.build.directory}/maven-installation</outputDirectory>
                  <artifactItems>
                    <artifactItem>
                      <groupId>org.apache.maven</groupId>
                      <artifactId>apache-maven</artifactId>
                      <version>${maven.it.version}</version>
                      <classifier>bin</classifier>
                      <type>tar.gz</type>
                    </artifactItem>
                  </artifactItems>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-enforcer-plugin</artifactId>
            <dependencies>
              <dependency>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>extra-enforcer-rules</artifactId>
                <version>1.11.0</version>
              </dependency>
            </dependencies>
            <executions>
              <execution>
                <id>enforce-versions</id>
                <goals>
                  <goal>enforce</goal>
                </goals>
                <configuration>
                  <rules>
                    <enforceBytecodeVersion>
                      <maxJdkVersion>${mojo.java.target}</maxJdkVersion>
                      <excludes>
                        <exclude>io.takari.*</exclude>
                        <exclude>org.codehaus.plexus:plexus-classworlds</exclude>
                      </excludes>
                    </enforceBytecodeVersion>
                  </rules>
                </configuration>
              </execution>
            </executions>
          </plugin>

          <plugin>
            <groupId>io.takari.maven.plugins</groupId>
            <artifactId>takari-lifecycle-plugin</artifactId>
            <version>${takari-lifecycle-plugin.version}</version>
            <extensions>true</extensions>
            <executions>
              <execution>
                <id>testProperties</id>
                <goals>
                  <goal>testProperties</goal>
                </goals>
                <phase>process-test-resources</phase>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>devlocal</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>buildnumber-maven-plugin</artifactId>
            <version>${project.version}</version>
            <executions>
              <execution>
                <id>useLastCommittedRevision</id>
                <goals>
                  <goal>create</goal>
                </goals>
                <phase>compile</phase>
                <configuration>
                  <providerImplementations>
                    <svn>javasvn</svn>
                  </providerImplementations>
                  <useLastCommittedRevision>true</useLastCommittedRevision>
                  <doUpdate>true</doUpdate>
                </configuration>
              </execution>
              <execution>
                <id>timestampFormat</id>
                <goals>
                  <goal>create</goal>
                </goals>
                <phase>test</phase>
                <configuration>
                  <providerImplementations>
                    <svn>javasvn</svn>
                  </providerImplementations>
                  <useLastCommittedRevision>true</useLastCommittedRevision>
                  <timestampFormat>yyyy-MM-dd</timestampFormat>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
