<commit_before><?xml version="1.0" encoding="utf-8"?>
<project  xmlns:ivy="antlib:org.apache.ivy.ant" name="marc4j" default="jar" basedir=".">

    <target name="init">
        <tstamp />
       <!-- <record name="build.log" loglevel="verbose" append="no" /> -->
    </target>

    <property file="build.properties"/>



<!-- ============================================================================================================================================= -->


    <!-- ##############################################
      Path to Major and Mutation options 
      Use -Dmutation="=mml-file" to set path to mml-file
     ############################################## -->
    <property name="mutOp" value=":ALL"/>
    <property name="mutator" value="-XMutator${mutOp}"/>
    <property name="major" value="major/bin/javac"/>

    <!-- ====================================================================== -->
    <!-- Help target                                                            -->
    <!-- ====================================================================== -->

    <target name="help">
        <echo message="Please run: $ant -projecthelp"/>
    </target>

    <!-- Target to clean up -->
    <target name="major-clean" depends="clean" description="Clean Major">
        <delete dir="build-major"/>
        <delete>
            <fileset dir="." includes="*.csv"/>
            <fileset dir="." includes="*.log"/>
      </delete>
    </target>


    <!-- Target to initialize build -->
    <target name="major-init">
        <mkdir dir="build-major"/>
    </target>


    <!-- Target to compile the project -->
    <target name="major-compile" depends="major-init, compile-all" description="Compile with Major">
        <javac includeantruntime="true" 
               srcdir="${src.dir}"
               destdir="build-major"
               debug="yes"
               fork="yes"
               executable="${major}">
               <compilerarg value="${mutator}"/>
        </javac>
    </target>


    <!-- Target to compile the test suite -->
    <target name="major-compile.tests" depends="major-init, compile-tests" description="Compile all tests wtih Major">
        <javac includeantruntime="true" 
               srcdir="${test.src.dir}"
               destdir="build-major"
               debug="yes"
               executable="${major}">

            <classpath refid="test.classpath" />
        </javac>
    </target>

    <!--  The adapted mutation test target  -->
    <target name="mutation.test" description="Run mutation analysis for all unit test cases">
        <echo message="Running mutation analysis ..."/>
        <junit  printsummary="false" 
                showoutput="false" 
                mutationAnalysis="true" 
                resultFile="results.csv"
                killDetailsFile="killed.csv">

            <classpath refid="test.classpath" />
            <batchtest fork="false">
                <fileset dir="${test.src.dir}">
                    <include name="**/*Test*.java"/>
                </fileset>
            </batchtest>
        </junit>
    </target>




<!-- ============================================================================================================================================= -->




    <target name="prepare" depends="init,setup-ivy" unless="prepared">
        <mkdir dir="${build.dir}" />
        <mkdir dir="${build.classes.dir}"/>
        <mkdir dir="${build.test-classes.dir}"/>
        <mkdir dir="${build.generated-src.dir}"/><commit_msg>Updated build file. Mutation works. Analysis work. Just type in ./run.sh for command. All dependencies included in project.<commit_after><?xml version="1.0" encoding="utf-8"?>
<project  xmlns:ivy="antlib:org.apache.ivy.ant" name="marc4j" default="jar" basedir=".">

    <target name="init">
        <tstamp />
       <!-- <record name="build.log" loglevel="verbose" append="no" /> -->
    </target>

    <property file="build.properties"/>



<!-- ============================================================================================================================================= -->


    <!-- ##############################################
      Path to Major and Mutation options 
      Use -Dmutation="=mml-file" to set path to mml-file
     ############################################## -->
    <property name="mutOp" value=":ALL"/>
    <property name="mutator" value="-XMutator${mutOp}"/>
    <property name="major" value="major/bin/javac"/>

    <!-- ====================================================================== -->
    <!-- Help target                                                            -->
    <!-- ====================================================================== -->

    <target name="help">
        <echo message="Please run: $ant -projecthelp"/>
    </target>

    <!-- Target to clean up -->
    <target name="major-clean" depends="clean" description="Clean Major">
        <delete dir="build-major"/>
        <delete>
            <fileset dir="." includes="*.csv"/>
            <fileset dir="." includes="*.log"/>
      </delete>
    </target>


    <!-- Target to initialize build -->
    <target name="major-init">
        <mkdir dir="build-major"/>
    </target>


    <!-- Target to compile the project -->
    <target name="major-compile" depends="major-init, compile-all" description="Compile with Major">
        <javac includeantruntime="true" 
               srcdir="${src.dir}"
               destdir="build-major"
               debug="yes"
               fork="yes"
               executable="${major}">
               <compilerarg value="${mutator}"/>
        </javac>
    </target>


    <!-- Target to compile the test suite -->
    <target name="major-compile.tests" depends="major-init, compile-tests" description="Compile all tests wtih Major">
        <javac includeantruntime="true" 
               srcdir="${test.src.dir}"
               destdir="build-major"
               debug="yes"
               executable="${major}">

            <classpath refid="test.classpath" />
        </javac>
    </target>

    <!--  The adapted mutation test target  -->
    <target name="mutation.test" description="Run mutation analysis for all unit test cases">
        <echo message="Running mutation analysis ..."/>
        <junit  printsummary="false" 
                showoutput="false" 
                mutationAnalysis="true" 
                resultFile="results.csv"
                killDetailsFile="killed.csv">

            <classpath refid="major.testpath" />
            <batchtest fork="false">
                <fileset dir="${test.src.dir}">
                    <include name="**/*Test*.java"/>
                </fileset>
            </batchtest>
        </junit>
    </target>

    <path id="major.testpath">
        <pathelement location="build-major" />
        <pathelement location="test/resources"/>
        <fileset dir="${lib.dir}">
            <include name="**/*.jar" />
        </fileset>
    </path>


<!-- ================================================================================================================================================================================================== -->

    <!-- ################################################################

      No need to edit anything below. All build configurations are above
    
    ################################################################# -->


<!-- ================================================================================================================================================================================================== -->



    <target name="prepare" depends="init,setup-ivy" unless="prepared">
        <mkdir dir="${build.dir}" />
        <mkdir dir="${build.classes.dir}"/>
        <mkdir dir="${build.test-classes.dir}"/>
        <mkdir dir="${build.generated-src.dir}"/>
{'fraction_non_alphanumeric': 0.31940938919737505, 'fraction_numerical': 0.0010095911155981827, 'mean_word_length': 2.511298183429331, 'pattern_counts': {'":': 2, '<': 134, '<?xml version=': 2, '>': 134, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 4}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1390270', 'n_tokens_mistral': 1978, 'n_tokens_neox': 1795, 'n_words': 391}