<commit_before><?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/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.kie</groupId>
    <artifactId>kie-parent</artifactId>
    <version>7.16.0-SNAPSHOT</version>
    <!-- relativePath causes out-of-date problems on hudson slaves -->
    <!--<relativePath>../droolsjbpm-build-bootstrap/pom.xml</relativePath>-->
  </parent>

  <groupId>org.optaplanner</groupId>
  <artifactId>optaplanner</artifactId>
  <packaging>pom</packaging>

  <name>OptaPlanner multiproject parent</name>
  <description>
    OptaPlanner solves planning problems.
    This lightweight, embeddable planning engine implements powerful and scalable algorithms
    to optimize business resource scheduling and planning.

    This module is just the multiproject parent. The planning engine itself is in optaplanner-core.
  </description>
  <url>https://www.optaplanner.org</url>
  <inceptionYear>2006</inceptionYear>

  <properties>
    <findbugs.failOnViolation>true</findbugs.failOnViolation>
    <jacoco.agent.line/>
    <surefire.argLine>
      -Dfile.encoding=${project.build.sourceEncoding}
      ${jacoco.agent.line}
    </surefire.argLine>
    <version.jacoco.plugin>0.8.2</version.jacoco.plugin>
  </properties>

  <repositories>
    <!-- Bootstrap repository to locate the parent pom when the parent pom has not been build locally. -->
    <repository>
      <id>jboss-public-repository-group</id>
      <name>JBoss Public Repository Group</name>
      <url>https://repository.jboss.org/nexus/content/groups/public/</url>
      <layout>default</layout>
      <releases>
        <enabled>true</enabled>
        <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
        <enabled>true</enabled>
        <updatePolicy>daily</updatePolicy>
      </snapshots>
    </repository>
  </repositories>

  <scm>
    <connection>scm:git:<EMAIL>:kiegroup/optaplanner.git</connection>
    <developerConnection>scm:git:git<EMAIL>:kiegroup/optaplanner.git</developerConnection>
    <url>https://github.com/kiegroup/optaplanner</url>
  </scm>
  <issueManagement>
    <system>jira</system>
    <url>https://issues.jboss.org/browse/PLANNER</url>
  </issueManagement>

  <modules>
    <module>optaplanner-core</module>
    <module>optaplanner-persistence</module>
    <module>optaplanner-integration</module>
    <module>optaplanner-benchmark</module>
    <module>optaplanner-test</module>
    <module>optaplanner-examples</module>
    <module>optaplanner-webexamples</module>
  </modules>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.optaplanner</groupId>
        <artifactId>optaplanner-bom</artifactId>
        <version>${version.org.kie}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.drools</groupId>
        <artifactId>drools-bom</artifactId>
        <version>${version.org.kie}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>javax.json</artifactId>
        <!-- Old version until this issue is resolved: https://github.com/ImmobilienScout24/illegal-transitive-dependency-check/issues/30 -->
        <version>1.0.4</version>
      </dependency>
      <dependency>
        <groupId>org.jacoco</groupId>
        <artifactId>org.jacoco.agent</artifactId>
        <version>${version.jacoco.plugin}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <profiles>
    <profile>
      <id>fullProfile</id>
      <activation>
        <property>
          <name>full</name>
        </property>
      </activation>
      <modules>
        <module>optaplanner-docs</module>
        <module>optaplanner-distribution</module>
      </modules>
    </profile>

    <profile>
      <id>run-code-coverage</id>
      <properties>
        <jacoco.exec.file>${project.build.directory}/jacoco.exec</jacoco.exec.file>
        <jacoco.excludes>*Lexer:org.optaplanner.core.impl.testdata.domain.*:*TestdataAbstractSolutionBasedSolution</jacoco.excludes>
        <jacoco.agent.line>-javaagent:${settings.localRepository}/org/jacoco/org.jacoco.agent/${version.jacoco.plugin}/org.jacoco.agent-${version.jacoco.plugin}-runtime.jar=destfile=${jacoco.exec.file},append=true,excludes=${jacoco.excludes}</jacoco.agent.line>
      </properties>
      <dependencies>
        <dependency>
          <groupId>org.jacoco</groupId>
          <artifactId>org.jacoco.agent</artifactId>
        </dependency>
      </dependencies>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.codehaus.cargo</groupId>
              <artifactId>cargo-maven2-plugin</artifactId>
              <configuration>
                <configuration>
                  <properties>
                    <cargo.start.jvmargs>${jacoco.agent.line}</cargo.start.jvmargs>
                  </properties>
                </configuration>
              </configuration>
            </plugin>
            <plugin>
              <groupId>net.ltgt.gwt.maven</groupId>
              <artifactId>gwt-maven-plugin</artifactId>
              <configuration>
                <skipCompilation>true</skipCompilation>
              </configuration>
            </plugin>
            <plugin>
              <artifactId>maven-surefire-plugin</artifactId>
              <configuration>
                <argLine>${surefire.argLine}</argLine>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>

    <profile>
      <!--
        See .travis.yml for how to run the coverage report
      -->
      <id>report-code-coverage</id>
      <properties>
        <jacoco.master.exec.file>${maven.multiModuleProjectDirectory}/target/jacoco.exec</jacoco.master.exec.file>
        <sonar.jacoco.reportPaths>${jacoco.master.exec.file}</sonar.jacoco.reportPaths>
      </properties>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.jacoco</groupId>
              <artifactId>jacoco-maven-plugin</artifactId>
              <version>${version.jacoco.plugin}</version><commit_msg>Make jacoco agent a surefire plugin's dependency<commit_after><?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/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.kie</groupId>
    <artifactId>kie-parent</artifactId>
    <version>7.16.0-SNAPSHOT</version>
    <!-- relativePath causes out-of-date problems on hudson slaves -->
    <!--<relativePath>../droolsjbpm-build-bootstrap/pom.xml</relativePath>-->
  </parent>

  <groupId>org.optaplanner</groupId>
  <artifactId>optaplanner</artifactId>
  <packaging>pom</packaging>

  <name>OptaPlanner multiproject parent</name>
  <description>
    OptaPlanner solves planning problems.
    This lightweight, embeddable planning engine implements powerful and scalable algorithms
    to optimize business resource scheduling and planning.

    This module is just the multiproject parent. The planning engine itself is in optaplanner-core.
  </description>
  <url>https://www.optaplanner.org</url>
  <inceptionYear>2006</inceptionYear>

  <properties>
    <findbugs.failOnViolation>true</findbugs.failOnViolation>
  </properties>

  <repositories>
    <!-- Bootstrap repository to locate the parent pom when the parent pom has not been build locally. -->
    <repository>
      <id>jboss-public-repository-group</id>
      <name>JBoss Public Repository Group</name>
      <url>https://repository.jboss.org/nexus/content/groups/public/</url>
      <layout>default</layout>
      <releases>
        <enabled>true</enabled>
        <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
        <enabled>true</enabled>
        <updatePolicy>daily</updatePolicy>
      </snapshots>
    </repository>
  </repositories>

  <scm>
    <connection>scm:git:<EMAIL>:kiegroup/optaplanner.git</connection>
    <developerConnection>scm:git:<EMAIL>:kiegroup/optaplanner.git</developerConnection>
    <url>https://github.com/kiegroup/optaplanner</url>
  </scm>
  <issueManagement>
    <system>jira</system>
    <url>https://issues.jboss.org/browse/PLANNER</url>
  </issueManagement>

  <modules>
    <module>optaplanner-core</module>
    <module>optaplanner-persistence</module>
    <module>optaplanner-integration</module>
    <module>optaplanner-benchmark</module>
    <module>optaplanner-test</module>
    <module>optaplanner-examples</module>
    <module>optaplanner-webexamples</module>
  </modules>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.optaplanner</groupId>
        <artifactId>optaplanner-bom</artifactId>
        <version>${version.org.kie}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.drools</groupId>
        <artifactId>drools-bom</artifactId>
        <version>${version.org.kie}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>javax.json</artifactId>
        <!-- Old version until this issue is resolved: https://github.com/ImmobilienScout24/illegal-transitive-dependency-check/issues/30 -->
        <version>1.0.4</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <profiles>
    <profile>
      <id>fullProfile</id>
      <activation>
        <property>
          <name>full</name>
        </property>
      </activation>
      <modules>
        <module>optaplanner-docs</module>
        <module>optaplanner-distribution</module>
      </modules>
    </profile>

    <profile>
      <id>run-code-coverage</id>
      <properties>
        <jacoco.exec.file>${project.build.directory}/jacoco.exec</jacoco.exec.file>
        <jacoco.excludes>*Lexer:org.optaplanner.core.impl.testdata.domain.*:*TestdataAbstractSolutionBasedSolution</jacoco.excludes>
        <jacoco.agent.line>-javaagent:${settings.localRepository}/org/jacoco/org.jacoco.agent/${version.jacoco.plugin}/org.jacoco.agent-${version.jacoco.plugin}-runtime.jar=destfile=${jacoco.exec.file},append=true,excludes=${jacoco.excludes}</jacoco.agent.line>
        <surefire.argLine>
          -Dfile.encoding=${project.build.sourceEncoding}
          ${jacoco.agent.line}
        </surefire.argLine>
      </properties>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.codehaus.cargo</groupId>
              <artifactId>cargo-maven2-plugin</artifactId>
              <configuration>
                <configuration>
                  <properties>
                    <cargo.start.jvmargs>${jacoco.agent.line}</cargo.start.jvmargs>
                  </properties>
                </configuration>
              </configuration>
            </plugin>
            <plugin>
              <groupId>net.ltgt.gwt.maven</groupId>
              <artifactId>gwt-maven-plugin</artifactId>
              <configuration>
                <skipCompilation>true</skipCompilation>
              </configuration>
            </plugin>
            <plugin>
              <artifactId>maven-surefire-plugin</artifactId>
              <configuration>
                <argLine>${surefire.argLine}</argLine>
              </configuration>
              <dependencies>
                <dependency>
                  <groupId>org.jacoco</groupId>
                  <artifactId>org.jacoco.agent</artifactId>
                  <version>${version.jacoco.plugin}</version>
                </dependency>
              </dependencies>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>

    <profile>
      <!--
        See .travis.yml for how to run the coverage report
      -->
      <id>report-code-coverage</id>
      <properties>
        <jacoco.master.exec.file>${maven.multiModuleProjectDirectory}/target/jacoco.exec</jacoco.master.exec.file>
        <sonar.jacoco.reportPaths>${jacoco.master.exec.file}</sonar.jacoco.reportPaths>
      </properties>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.jacoco</groupId>
              <artifactId>jacoco-maven-plugin</artifactId>
              <version>${version.jacoco.plugin}</version>
{'fraction_non_alphanumeric': 0.14339064809772037, 'fraction_numerical': 0.0058352135688166185, 'mean_word_length': 2.569564009997223, 'pattern_counts': {'":': 0, '<': 466, '<?xml version=': 2, '>': 466, 'https://': 10, 'lorem ipsum': 0, 'www.': 4, 'xml': 8}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7257021', 'n_tokens_mistral': 4211, 'n_tokens_neox': 3844, 'n_words': 487}