Added: dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/jacoco.xml
==============================================================================
--- dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/jacoco.xml (added)
+++ dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/jacoco.xml Fri Jun 
15 16:12:15 2018
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?><!DOCTYPE report 
PUBLIC "-//JACOCO//DTD Report 1.0//EN" "report.dtd"><report name="Apache 
Commons Release Plugin"><sessioninfo id="Robs-MacBook-Pro-3.local-4560216b" 
start="1529078842163" dump="1529078848670"/><package 
name="org/apache/commons/release/plugin/velocity"><class 
name="org/apache/commons/release/plugin/velocity/HeaderHtmlVelocityDelegate"><method
 name="builder" 
desc="()Lorg/apache/commons/release/plugin/velocity/HeaderHtmlVelocityDelegate$HeaderHtmlVelocityDelegateBuilder;"
 line="48"><counter type="INSTRUCTION" missed="0" covered="5"/><counter 
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method 
name="render" desc="(Ljava/io/Writer;)Ljava/io/Writer;" line="58"><counter 
type="INSTRUCTION" missed="0" covered="29"/><counter type="LINE" missed="0" 
covered="8"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
 type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" 
missed="0" covered="34"/><counter type="LINE" missed="0" covered="9"/><counter 
type="COMPLEXITY" missed="0" covered="2"/><counter type="METHOD" missed="0" 
covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class 
name="org/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate$ReadmeHtmlVelocityDelegateBuilder"><method
 name="withArtifactId" 
desc="(Ljava/lang/String;)Lorg/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate$ReadmeHtmlVelocityDelegateBuilder;"
 line="122"><counter type="INSTRUCTION" missed="0" covered="5"/><counter 
type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method 
name="withVersion" 
desc="(Ljava/lang/String;)Lorg/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate$ReadmeHtmlVelocityDelegateBuilder;"
 line="132"><counter type="INSTRUCTION" misse
 d="0" covered="5"/><counter type="LINE" missed="0" covered="2"/><counter 
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="withSiteUrl" 
desc="(Ljava/lang/String;)Lorg/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate$ReadmeHtmlVelocityDelegateBuilder;"
 line="142"><counter type="INSTRUCTION" missed="0" covered="5"/><counter 
type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method 
name="build" 
desc="()Lorg/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate;"
 line="151"><counter type="INSTRUCTION" missed="0" covered="11"/><counter 
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter 
type="INSTRUCTION" missed="0" covered="26"/><counter type="LINE" missed="0" 
covered="7"/><counter type="COMPLEXITY" missed="
 0" covered="4"/><counter type="METHOD" missed="0" covered="4"/><counter 
type="CLASS" missed="0" covered="1"/></class><class 
name="org/apache/commons/release/plugin/velocity/HeaderHtmlVelocityDelegate$HeaderHtmlVelocityDelegateBuilder"><method
 name="build" 
desc="()Lorg/apache/commons/release/plugin/velocity/HeaderHtmlVelocityDelegate;"
 line="85"><counter type="INSTRUCTION" missed="0" covered="5"/><counter 
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter 
type="INSTRUCTION" missed="0" covered="5"/><counter type="LINE" missed="0" 
covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/><counter type="CLASS" missed="0" 
covered="1"/></class><class 
name="org/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate"><method
 name="&lt;init&gt;" 
desc="(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" 
line="52"><counter t
 ype="INSTRUCTION" missed="0" covered="12"/><counter type="LINE" missed="0" 
covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method name="builder" 
desc="()Lorg/apache/commons/release/plugin/velocity/ReadmeHtmlVelocityDelegate$ReadmeHtmlVelocityDelegateBuilder;"
 line="64"><counter type="INSTRUCTION" missed="0" covered="5"/><counter 
type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method 
name="render" desc="(Ljava/io/Writer;)Ljava/io/Writer;" line="75"><counter 
type="INSTRUCTION" missed="0" covered="84"/><counter type="LINE" missed="0" 
covered="19"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" 
missed="0" covered="101"/><counter type="LINE" missed="0" 
covered="25"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter 
type="METH
 OD" missed="0" covered="3"/><counter type="CLASS" missed="0" 
covered="1"/></class><sourcefile name="HeaderHtmlVelocityDelegate.java"><line 
nr="48" mi="0" ci="5" mb="0" cb="0"/><line nr="58" mi="0" ci="4" mb="0" 
cb="0"/><line nr="59" mi="0" ci="4" mb="0" cb="0"/><line nr="60" mi="0" ci="5" 
mb="0" cb="0"/><line nr="61" mi="0" ci="2" mb="0" cb="0"/><line nr="62" mi="0" 
ci="4" mb="0" cb="0"/><line nr="63" mi="0" ci="4" mb="0" cb="0"/><line nr="64" 
mi="0" ci="4" mb="0" cb="0"/><line nr="65" mi="0" ci="2" mb="0" cb="0"/><line 
nr="85" mi="0" ci="5" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" 
covered="39"/><counter type="LINE" missed="0" covered="10"/><counter 
type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" 
covered="3"/><counter type="CLASS" missed="0" 
covered="2"/></sourcefile><sourcefile 
name="ReadmeHtmlVelocityDelegate.java"><line nr="52" mi="0" ci="2" mb="0" 
cb="0"/><line nr="53" mi="0" ci="3" mb="0" cb="0"/><line nr="54" mi="0" ci="3" 
mb="0" cb="0"
 /><line nr="55" mi="0" ci="3" mb="0" cb="0"/><line nr="56" mi="0" ci="1" 
mb="0" cb="0"/><line nr="64" mi="0" ci="5" mb="0" cb="0"/><line nr="75" mi="0" 
ci="4" mb="0" cb="0"/><line nr="76" mi="0" ci="4" mb="0" cb="0"/><line nr="77" 
mi="0" ci="5" mb="0" cb="0"/><line nr="78" mi="0" ci="2" mb="0" cb="0"/><line 
nr="79" mi="0" ci="4" mb="0" cb="0"/><line nr="80" mi="0" ci="5" mb="0" 
cb="0"/><line nr="81" mi="0" ci="4" mb="0" cb="0"/><line nr="82" mi="0" ci="4" 
mb="0" cb="0"/><line nr="83" mi="0" ci="4" mb="0" cb="0"/><line nr="84" mi="0" 
ci="5" mb="0" cb="0"/><line nr="86" mi="0" ci="4" mb="0" cb="0"/><line nr="87" 
mi="0" ci="4" mb="0" cb="0"/><line nr="88" mi="0" ci="5" mb="0" cb="0"/><line 
nr="89" mi="0" ci="6" mb="0" cb="0"/><line nr="90" mi="0" ci="6" mb="0" 
cb="0"/><line nr="91" mi="0" ci="6" mb="0" cb="0"/><line nr="92" mi="0" ci="6" 
mb="0" cb="0"/><line nr="93" mi="0" ci="4" mb="0" cb="0"/><line nr="94" mi="0" 
ci="2" mb="0" cb="0"/><line nr="122" mi="0" ci="3" mb="0" cb="0"/><line
  nr="123" mi="0" ci="2" mb="0" cb="0"/><line nr="132" mi="0" ci="3" mb="0" 
cb="0"/><line nr="133" mi="0" ci="2" mb="0" cb="0"/><line nr="142" mi="0" 
ci="3" mb="0" cb="0"/><line nr="143" mi="0" ci="2" mb="0" cb="0"/><line 
nr="151" mi="0" ci="11" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" 
covered="127"/><counter type="LINE" missed="0" covered="32"/><counter 
type="COMPLEXITY" missed="0" covered="7"/><counter type="METHOD" missed="0" 
covered="7"/><counter type="CLASS" missed="0" 
covered="2"/></sourcefile><counter type="INSTRUCTION" missed="0" 
covered="166"/><counter type="LINE" missed="0" covered="42"/><counter 
type="COMPLEXITY" missed="0" covered="10"/><counter type="METHOD" missed="0" 
covered="10"/><counter type="CLASS" missed="0" covered="4"/></package><package 
name="org/apache/commons/release/plugin/mojos"><class 
name="org/apache/commons/release/plugin/mojos/CommonsDistributionStagingMojo"><method
 name="&lt;init&gt;" desc="()V" line="64"><counter type="INSTRUCTION" missed
 ="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter 
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="execute" desc="()V" line="165"><counter 
type="INSTRUCTION" missed="139" covered="158"/><counter type="BRANCH" 
missed="8" covered="6"/><counter type="LINE" missed="20" covered="29"/><counter 
type="COMPLEXITY" missed="6" covered="2"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="listNotHiddenFilesAndDirectories" 
desc="(Ljava/io/File;Ljava/util/List;)V" line="240"><counter type="INSTRUCTION" 
missed="0" covered="45"/><counter type="BRANCH" missed="3" 
covered="7"/><counter type="LINE" missed="0" covered="8"/><counter 
type="COMPLEXITY" missed="3" covered="3"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="copyReleaseNotesToWorkingDirectory" 
desc="()Ljava/io/File;" line="263"><counter type="INSTRUCTION" missed="0" 
covered="26"/><counter type="LINE" missed="0" cov
 ered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method 
name="copyDistributionsIntoScmDirectoryStructureAndAddToSvn" 
desc="(Ljava/io/File;Lorg/apache/maven/scm/provider/ScmProvider;Lorg/apache/maven/scm/repository/ScmRepository;)Ljava/util/List;"
 line="305"><counter type="INSTRUCTION" missed="18" covered="121"/><counter 
type="BRANCH" missed="1" covered="7"/><counter type="LINE" missed="3" 
covered="21"/><counter type="COMPLEXITY" missed="1" covered="4"/><counter 
type="METHOD" missed="0" covered="1"/></method><method 
name="copySiteToScmDirectory" desc="()Ljava/util/List;" line="343"><counter 
type="INSTRUCTION" missed="16" covered="25"/><counter type="BRANCH" missed="1" 
covered="1"/><counter type="LINE" missed="4" covered="5"/><counter 
type="COMPLEXITY" missed="1" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="buildReadmeAndHeaderHtmlFiles" 
desc="()Ljava/util/List;" line="377"><coun
 ter type="INSTRUCTION" missed="42" covered="83"/><counter type="LINE" 
missed="8" covered="18"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method 
name="copyHeaderAndReadmeToSubdirectories" 
desc="(Ljava/io/File;Ljava/io/File;)Ljava/util/List;" line="425"><counter 
type="INSTRUCTION" missed="0" covered="80"/><counter type="LINE" missed="0" 
covered="16"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method name="setBaseDir" 
desc="(Ljava/io/File;)V" line="451"><counter type="INSTRUCTION" missed="0" 
covered="4"/><counter type="LINE" missed="0" covered="2"/><counter 
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><counter type="INSTRUCTION" missed="215" 
covered="545"/><counter type="BRANCH" missed="13" covered="21"/><counter 
type="LINE" missed="35" covered="105"/><counter type="COMPLEXITY" missed="11" 
covered="15"/><
 counter type="METHOD" missed="0" covered="9"/><counter type="CLASS" missed="0" 
covered="1"/></class><class 
name="org/apache/commons/release/plugin/mojos/CommonsDistributionDetachmentMojo"><method
 name="&lt;init&gt;" desc="()V" line="54"><counter type="INSTRUCTION" 
missed="0" covered="18"/><counter type="LINE" missed="0" covered="4"/><counter 
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="execute" desc="()V" line="120"><counter 
type="INSTRUCTION" missed="10" covered="93"/><counter type="BRANCH" missed="3" 
covered="11"/><counter type="LINE" missed="4" covered="23"/><counter 
type="COMPLEXITY" missed="3" covered="5"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="putAttachedArtifactInSha1Map" 
desc="(Lorg/apache/maven/artifact/Artifact;)V" line="162"><counter 
type="INSTRUCTION" missed="30" covered="21"/><counter type="LINE" missed="6" 
covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><co
 unter type="METHOD" missed="0" covered="1"/></method><method 
name="putAttachedArtifactInSha256Map" 
desc="(Lorg/apache/maven/artifact/Artifact;)V" line="188"><counter 
type="INSTRUCTION" missed="30" covered="21"/><counter type="LINE" missed="6" 
covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method 
name="writeAllArtifactsInSha1PropertiesFile" desc="()V" line="212"><counter 
type="INSTRUCTION" missed="7" covered="32"/><counter type="LINE" missed="2" 
covered="6"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method 
name="writeAllArtifactsInSha256PropertiesFile" desc="()V" line="227"><counter 
type="INSTRUCTION" missed="7" covered="32"/><counter type="LINE" missed="2" 
covered="6"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method 
name="copyRemovedArtifactsToWorkingDirectory" desc="()V" line="2
 45"><counter type="INSTRUCTION" missed="0" covered="74"/><counter 
type="BRANCH" missed="0" covered="2"/><counter type="LINE" missed="0" 
covered="13"/><counter type="COMPLEXITY" missed="0" covered="2"/><counter 
type="METHOD" missed="0" covered="1"/></method><method name="hashArtifacts" 
desc="()V" line="268"><counter type="INSTRUCTION" missed="16" 
covered="96"/><counter type="BRANCH" missed="0" covered="4"/><counter 
type="LINE" missed="2" covered="16"/><counter type="COMPLEXITY" missed="0" 
covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method 
name="getMd5FilePath" desc="(Ljava/io/File;Ljava/io/File;)Ljava/lang/String;" 
line="302"><counter type="INSTRUCTION" missed="22" covered="0"/><counter 
type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="1" 
covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method 
name="getSha1FilePath" desc="(Ljava/io/File;Ljava/io/File;)Ljava/lang/String;" 
line="317"><counter type="INSTRUCTION" missed=
 "0" covered="22"/><counter type="LINE" missed="0" covered="5"/><counter 
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="getSha256FilePath" 
desc="(Ljava/io/File;Ljava/io/File;)Ljava/lang/String;" line="332"><counter 
type="INSTRUCTION" missed="0" covered="22"/><counter type="LINE" missed="0" 
covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method name="getArtifactKey" 
desc="(Lorg/apache/maven/artifact/Artifact;)Ljava/lang/String;" 
line="347"><counter type="INSTRUCTION" missed="7" covered="27"/><counter 
type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="1" 
covered="6"/><counter type="COMPLEXITY" missed="1" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" 
desc="()V" line="65"><counter type="INSTRUCTION" missed="0" 
covered="24"/><counter type="LINE" missed="0" covered="7"/><counter type="C
 OMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><counter type="INSTRUCTION" missed="129" 
covered="482"/><counter type="BRANCH" missed="4" covered="18"/><counter 
type="LINE" missed="28" covered="101"/><counter type="COMPLEXITY" missed="5" 
covered="19"/><counter type="METHOD" missed="1" covered="12"/><counter 
type="CLASS" missed="0" covered="1"/></class><class 
name="org/apache/commons/release/plugin/mojos/CommonsSiteCompressionMojo"><method
 name="&lt;init&gt;" desc="()V" line="53"><counter type="INSTRUCTION" 
missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter 
type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="execute" desc="()V" line="100"><counter 
type="INSTRUCTION" missed="38" covered="51"/><counter type="BRANCH" missed="2" 
covered="6"/><counter type="LINE" missed="8" covered="13"/><counter 
type="COMPLEXITY" missed="2" covered="3"/><counter type="METHOD" 
 missed="0" covered="1"/></method><method name="getAllSiteFiles" 
desc="(Ljava/io/File;Ljava/util/List;)V" line="140"><counter type="INSTRUCTION" 
missed="4" covered="27"/><counter type="BRANCH" missed="1" 
covered="3"/><counter type="LINE" missed="1" covered="5"/><counter 
type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="writeZipFile" 
desc="(Ljava/io/File;Ljava/io/File;Ljava/util/List;)V" line="161"><counter 
type="INSTRUCTION" missed="0" covered="42"/><counter type="BRANCH" missed="1" 
covered="3"/><counter type="LINE" missed="0" covered="7"/><counter 
type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="0" 
covered="1"/></method><method name="addToZip" 
desc="(Ljava/io/File;Ljava/io/File;Ljava/util/zip/ZipOutputStream;)V" 
line="182"><counter type="INSTRUCTION" missed="0" covered="32"/><counter 
type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" 
covered="1"/><counter type="METHOD" missed
 ="0" covered="1"/></method><counter type="INSTRUCTION" missed="42" 
covered="155"/><counter type="BRANCH" missed="4" covered="12"/><counter 
type="LINE" missed="9" covered="33"/><counter type="COMPLEXITY" missed="4" 
covered="9"/><counter type="METHOD" missed="0" covered="5"/><counter 
type="CLASS" missed="0" covered="1"/></class><sourcefile 
name="CommonsDistributionDetachmentMojo.java"><line nr="54" mi="0" ci="2" 
mb="0" cb="0"/><line nr="65" mi="0" ci="4" mb="0" cb="0"/><line nr="66" mi="0" 
ci="4" mb="0" cb="0"/><line nr="67" mi="0" ci="4" mb="0" cb="0"/><line nr="68" 
mi="0" ci="4" mb="0" cb="0"/><line nr="69" mi="0" ci="4" mb="0" cb="0"/><line 
nr="70" mi="0" ci="3" mb="0" cb="0"/><line nr="71" mi="0" ci="1" mb="0" 
cb="0"/><line nr="77" mi="0" ci="5" mb="0" cb="0"/><line nr="84" mi="0" ci="5" 
mb="0" cb="0"/><line nr="91" mi="0" ci="6" mb="0" cb="0"/><line nr="120" mi="0" 
ci="4" mb="1" cb="1"/><line nr="121" mi="4" ci="0" mb="0" cb="0"/><line 
nr="123" mi="1" ci="0" mb="0" cb="0"/><line 
 nr="125" mi="0" ci="4" mb="0" cb="2"/><line nr="126" mi="0" ci="4" mb="0" 
cb="0"/><line nr="127" mi="0" ci="1" mb="0" cb="0"/><line nr="129" mi="0" 
ci="4" mb="0" cb="0"/><line nr="130" mi="0" ci="11" mb="0" cb="2"/><line 
nr="131" mi="0" ci="4" mb="0" cb="0"/><line nr="132" mi="0" ci="4" mb="0" 
cb="0"/><line nr="133" mi="0" ci="6" mb="0" cb="2"/><line nr="134" mi="0" 
ci="6" mb="0" cb="0"/><line nr="136" mi="0" ci="1" mb="0" cb="0"/><line 
nr="137" mi="0" ci="4" mb="1" cb="1"/><line nr="138" mi="4" ci="0" mb="0" 
cb="0"/><line nr="139" mi="1" ci="0" mb="0" cb="0"/><line nr="141" mi="0" 
ci="11" mb="0" cb="2"/><line nr="142" mi="0" ci="6" mb="0" cb="0"/><line 
nr="143" mi="0" ci="1" mb="0" cb="0"/><line nr="144" mi="0" ci="4" mb="1" 
cb="1"/><line nr="145" mi="0" ci="5" mb="0" cb="0"/><line nr="147" mi="0" 
ci="2" mb="0" cb="0"/><line nr="148" mi="0" ci="2" mb="0" cb="0"/><line 
nr="149" mi="0" ci="2" mb="0" cb="0"/><line nr="150" mi="0" ci="4" mb="0" 
cb="0"/><line nr="151" mi="0" ci="2" mb="
 0" cb="0"/><line nr="152" mi="0" ci="1" mb="0" cb="0"/><line nr="162" mi="0" 
ci="4" mb="0" cb="0"/><line nr="163" mi="0" ci="8" mb="0" cb="0"/><line 
nr="164" mi="0" ci="7" mb="0" cb="0"/><line nr="166" mi="1" ci="0" mb="0" 
cb="0"/><line nr="167" mi="8" ci="0" mb="0" cb="0"/><line nr="169" mi="5" 
ci="0" mb="0" cb="0"/><line nr="171" mi="5" ci="0" mb="0" cb="0"/><line 
nr="173" mi="5" ci="0" mb="0" cb="0"/><line nr="175" mi="6" ci="0" mb="0" 
cb="0"/><line nr="177" mi="0" ci="1" mb="0" cb="0"/><line nr="178" mi="0" 
ci="1" mb="0" cb="0"/><line nr="188" mi="0" ci="4" mb="0" cb="0"/><line 
nr="189" mi="0" ci="8" mb="0" cb="0"/><line nr="190" mi="0" ci="7" mb="0" 
cb="0"/><line nr="192" mi="1" ci="0" mb="0" cb="0"/><line nr="193" mi="8" 
ci="0" mb="0" cb="0"/><line nr="195" mi="5" ci="0" mb="0" cb="0"/><line 
nr="197" mi="5" ci="0" mb="0" cb="0"/><line nr="199" mi="5" ci="0" mb="0" 
cb="0"/><line nr="201" mi="6" ci="0" mb="0" cb="0"/><line nr="203" mi="0" 
ci="1" mb="0" cb="0"/><line nr="204" mi=
 "0" ci="1" mb="0" cb="0"/><line nr="212" mi="0" ci="7" mb="0" cb="0"/><line 
nr="213" mi="0" ci="11" mb="0" cb="0"/><line nr="214" mi="0" ci="7" mb="0" 
cb="0"/><line nr="215" mi="0" ci="5" mb="0" cb="0"/><line nr="216" mi="1" 
ci="0" mb="0" cb="0"/><line nr="217" mi="6" ci="0" mb="0" cb="0"/><line 
nr="218" mi="0" ci="1" mb="0" cb="0"/><line nr="219" mi="0" ci="1" mb="0" 
cb="0"/><line nr="227" mi="0" ci="7" mb="0" cb="0"/><line nr="228" mi="0" 
ci="11" mb="0" cb="0"/><line nr="229" mi="0" ci="7" mb="0" cb="0"/><line 
nr="230" mi="0" ci="5" mb="0" cb="0"/><line nr="231" mi="1" ci="0" mb="0" 
cb="0"/><line nr="232" mi="6" ci="0" mb="0" cb="0"/><line nr="233" mi="0" 
ci="1" mb="0" cb="0"/><line nr="234" mi="0" ci="1" mb="0" cb="0"/><line 
nr="245" mi="0" ci="4" mb="0" cb="0"/><line nr="246" mi="0" ci="10" mb="0" 
cb="0"/><line nr="247" mi="0" ci="7" mb="0" cb="0"/><line nr="248" mi="0" 
ci="11" mb="0" cb="2"/><line nr="249" mi="0" ci="3" mb="0" cb="0"/><line 
nr="250" mi="0" ci="5" mb="0" cb="0"/
 ><line nr="251" mi="0" ci="4" mb="0" cb="0"/><line nr="252" mi="0" ci="5" 
 >mb="0" cb="0"/><line nr="253" mi="0" ci="6" mb="0" cb="0"/><line nr="254" 
 >mi="0" ci="12" mb="0" cb="0"/><line nr="255" mi="0" ci="5" mb="0" 
 >cb="0"/><line nr="256" mi="0" ci="1" mb="0" cb="0"/><line nr="257" mi="0" 
 >ci="1" mb="0" cb="0"/><line nr="268" mi="0" ci="11" mb="0" cb="2"/><line 
 >nr="269" mi="0" ci="6" mb="0" cb="2"/><line nr="270" mi="0" ci="4" mb="0" 
 >cb="0"/><line nr="274" mi="0" ci="6" mb="0" cb="0"/><line nr="275" mi="0" 
 >ci="15" mb="0" cb="0"/><line nr="276" mi="0" ci="8" mb="0" cb="0"/><line 
 >nr="277" mi="0" ci="4" mb="0" cb="0"/><line nr="278" mi="0" ci="3" mb="0" 
 >cb="0"/><line nr="281" mi="0" ci="6" mb="0" cb="0"/><line nr="282" mi="0" 
 >ci="15" mb="0" cb="0"/><line nr="283" mi="0" ci="8" mb="0" cb="0"/><line 
 >nr="284" mi="0" ci="4" mb="0" cb="0"/><line nr="285" mi="0" ci="3" mb="0" 
 >cb="0"/><line nr="287" mi="1" ci="0" mb="0" cb="0"/><line nr="288" mi="15" 
 >ci="0" mb="0" cb="0"/><line nr="289" mi="0" c
 i="1" mb="0" cb="0"/><line nr="291" mi="0" ci="1" mb="0" cb="0"/><line 
nr="292" mi="0" ci="1" mb="0" cb="0"/><line nr="302" mi="6" ci="0" mb="0" 
cb="0"/><line nr="303" mi="4" ci="0" mb="0" cb="0"/><line nr="304" mi="5" 
ci="0" mb="0" cb="0"/><line nr="305" mi="4" ci="0" mb="0" cb="0"/><line 
nr="306" mi="3" ci="0" mb="0" cb="0"/><line nr="317" mi="0" ci="6" mb="0" 
cb="0"/><line nr="318" mi="0" ci="4" mb="0" cb="0"/><line nr="319" mi="0" 
ci="5" mb="0" cb="0"/><line nr="320" mi="0" ci="4" mb="0" cb="0"/><line 
nr="321" mi="0" ci="3" mb="0" cb="0"/><line nr="332" mi="0" ci="6" mb="0" 
cb="0"/><line nr="333" mi="0" ci="4" mb="0" cb="0"/><line nr="334" mi="0" 
ci="5" mb="0" cb="0"/><line nr="335" mi="0" ci="4" mb="0" cb="0"/><line 
nr="336" mi="0" ci="3" mb="0" cb="0"/><line nr="347" mi="0" ci="4" mb="0" 
cb="0"/><line nr="348" mi="0" ci="7" mb="0" cb="0"/><line nr="349" mi="0" 
ci="5" mb="0" cb="0"/><line nr="350" mi="0" ci="3" mb="1" cb="1"/><line 
nr="351" mi="7" ci="0" mb="0" cb="0"/><line nr
 ="353" mi="0" ci="5" mb="0" cb="0"/><line nr="354" mi="0" ci="3" mb="0" 
cb="0"/><counter type="INSTRUCTION" missed="129" covered="482"/><counter 
type="BRANCH" missed="4" covered="18"/><counter type="LINE" missed="28" 
covered="101"/><counter type="COMPLEXITY" missed="5" covered="19"/><counter 
type="METHOD" missed="1" covered="12"/><counter type="CLASS" missed="0" 
covered="1"/></sourcefile><sourcefile 
name="CommonsDistributionStagingMojo.java"><line nr="64" mi="0" ci="3" mb="0" 
cb="0"/><line nr="165" mi="0" ci="4" mb="0" cb="2"/><line nr="166" mi="0" 
ci="4" mb="0" cb="0"/><line nr="168" mi="0" ci="1" mb="0" cb="0"/><line 
nr="170" mi="0" ci="4" mb="1" cb="1"/><line nr="171" mi="4" ci="0" mb="0" 
cb="0"/><line nr="172" mi="1" ci="0" mb="0" cb="0"/><line nr="174" mi="0" 
ci="4" mb="1" cb="1"/><line nr="175" mi="4" ci="0" mb="0" cb="0"/><line 
nr="176" mi="1" ci="0" mb="0" cb="0"/><line nr="178" mi="0" ci="4" mb="0" 
cb="0"/><line nr="180" mi="0" ci="4" mb="0" cb="0"/><line nr="181" mi="0" ci
 ="6" mb="0" cb="0"/><line nr="182" mi="0" ci="5" mb="0" cb="0"/><line nr="183" 
mi="0" ci="4" mb="0" cb="0"/><line nr="184" mi="0" ci="4" mb="0" cb="0"/><line 
nr="185" mi="0" ci="4" mb="0" cb="0"/><line nr="186" mi="0" ci="4" mb="0" 
cb="0"/><line nr="187" mi="0" ci="19" mb="0" cb="0"/><line nr="189" mi="0" 
ci="4" mb="1" cb="1"/><line nr="190" mi="0" ci="5" mb="0" cb="0"/><line 
nr="192" mi="0" ci="6" mb="0" cb="0"/><line nr="193" mi="0" ci="12" mb="0" 
cb="0"/><line nr="194" mi="0" ci="5" mb="0" cb="0"/><line nr="195" mi="0" 
ci="3" mb="0" cb="0"/><line nr="196" mi="0" ci="6" mb="0" cb="0"/><line 
nr="198" mi="0" ci="4" mb="0" cb="0"/><line nr="199" mi="0" ci="5" mb="0" 
cb="0"/><line nr="200" mi="0" ci="4" mb="1" cb="1"/><line nr="201" mi="7" 
ci="0" mb="0" cb="0"/><line nr="202" mi="5" ci="0" mb="0" cb="0"/><line 
nr="206" mi="3" ci="0" mb="2" cb="0"/><line nr="207" mi="5" ci="0" mb="0" 
cb="0"/><line nr="209" mi="19" ci="0" mb="0" cb="0"/><line nr="210" mi="12" 
ci="0" mb="0" cb="0"/><line
  nr="213" mi="9" ci="0" mb="0" cb="0"/><line nr="215" mi="3" ci="0" mb="2" 
cb="0"/><line nr="216" mi="12" ci="0" mb="0" cb="0"/><line nr="217" mi="8" 
ci="0" mb="0" cb="0"/><line nr="218" mi="5" ci="0" mb="0" cb="0"/><line 
nr="221" mi="12" ci="0" mb="0" cb="0"/><line nr="222" mi="1" ci="0" mb="0" 
cb="0"/><line nr="223" mi="0" ci="12" mb="0" cb="0"/><line nr="224" mi="0" 
ci="10" mb="0" cb="0"/><line nr="225" mi="0" ci="9" mb="0" cb="0"/><line 
nr="227" mi="1" ci="0" mb="0" cb="0"/><line nr="228" mi="13" ci="0" mb="0" 
cb="0"/><line nr="229" mi="14" ci="0" mb="0" cb="0"/><line nr="230" mi="0" 
ci="1" mb="0" cb="0"/><line nr="231" mi="0" ci="1" mb="0" cb="0"/><line 
nr="240" mi="0" ci="3" mb="0" cb="0"/><line nr="241" mi="0" ci="16" mb="0" 
cb="2"/><line nr="242" mi="0" ci="6" mb="1" cb="3"/><line nr="243" mi="0" 
ci="5" mb="0" cb="0"/><line nr="244" mi="0" ci="6" mb="2" cb="2"/><line 
nr="245" mi="0" ci="4" mb="0" cb="0"/><line nr="246" mi="0" ci="4" mb="0" 
cb="0"/><line nr="249" mi="0" ci="1
 " mb="0" cb="0"/><line nr="263" mi="0" ci="5" mb="0" cb="0"/><line nr="264" 
mi="0" ci="4" mb="0" cb="0"/><line nr="265" mi="0" ci="9" mb="0" cb="0"/><line 
nr="266" mi="0" ci="6" mb="0" cb="0"/><line nr="267" mi="0" ci="2" mb="0" 
cb="0"/><line nr="305" mi="0" ci="5" mb="0" cb="0"/><line nr="306" mi="0" 
ci="4" mb="0" cb="0"/><line nr="307" mi="0" ci="7" mb="0" cb="0"/><line 
nr="308" mi="0" ci="7" mb="0" cb="0"/><line nr="309" mi="0" ci="4" mb="0" 
cb="0"/><line nr="310" mi="0" ci="4" mb="0" cb="0"/><line nr="312" mi="0" 
ci="10" mb="0" cb="2"/><line nr="313" mi="0" ci="5" mb="0" cb="2"/><line 
nr="314" mi="0" ci="7" mb="0" cb="0"/><line nr="315" mi="0" ci="5" mb="0" 
cb="0"/><line nr="316" mi="0" ci="5" mb="0" cb="0"/><line nr="317" mi="0" 
ci="5" mb="0" cb="2"/><line nr="318" mi="0" ci="7" mb="0" cb="0"/><line 
nr="319" mi="0" ci="5" mb="0" cb="0"/><line nr="320" mi="0" ci="5" mb="0" 
cb="0"/><line nr="321" mi="0" ci="18" mb="1" cb="1"/><line nr="322" mi="0" 
ci="5" mb="0" cb="0"/><line nr="
 325" mi="9" ci="0" mb="0" cb="0"/><line nr="326" mi="5" ci="0" mb="0" 
cb="0"/><line nr="327" mi="4" ci="0" mb="0" cb="0"/><line nr="329" mi="0" 
ci="1" mb="0" cb="0"/><line nr="330" mi="0" ci="5" mb="0" cb="0"/><line 
nr="331" mi="0" ci="5" mb="0" cb="0"/><line nr="332" mi="0" ci="2" mb="0" 
cb="0"/><line nr="343" mi="0" ci="4" mb="1" cb="1"/><line nr="344" mi="4" 
ci="0" mb="0" cb="0"/><line nr="345" mi="5" ci="0" mb="0" cb="0"/><line 
nr="350" mi="0" ci="5" mb="0" cb="0"/><line nr="351" mi="1" ci="0" mb="0" 
cb="0"/><line nr="352" mi="6" ci="0" mb="0" cb="0"/><line nr="353" mi="0" 
ci="1" mb="0" cb="0"/><line nr="354" mi="0" ci="7" mb="0" cb="0"/><line 
nr="355" mi="0" ci="8" mb="0" cb="0"/><line nr="377" mi="0" ci="4" mb="0" 
cb="0"/><line nr="378" mi="0" ci="7" mb="0" cb="0"/><line nr="382" mi="0" 
ci="11" mb="0" cb="0"/><line nr="383" mi="0" ci="5" mb="0" cb="0"/><line 
nr="384" mi="1" ci="0" mb="0" cb="0"/><line nr="385" mi="9" ci="0" mb="0" 
cb="0"/><line nr="386" mi="5" ci="0" mb="0" cb
 ="0"/><line nr="387" mi="6" ci="0" mb="0" cb="0"/><line nr="388" mi="0" ci="1" 
mb="0" cb="0"/><line nr="389" mi="0" ci="4" mb="0" cb="0"/><line nr="393" 
mi="0" ci="7" mb="0" cb="0"/><line nr="394" mi="0" ci="11" mb="0" cb="0"/><line 
nr="396" mi="0" ci="3" mb="0" cb="0"/><line nr="397" mi="0" ci="4" mb="0" 
cb="0"/><line nr="398" mi="0" ci="4" mb="0" cb="0"/><line nr="399" mi="0" 
ci="2" mb="0" cb="0"/><line nr="400" mi="0" ci="2" mb="0" cb="0"/><line 
nr="402" mi="0" ci="4" mb="0" cb="0"/><line nr="403" mi="1" ci="0" mb="0" 
cb="0"/><line nr="404" mi="9" ci="0" mb="0" cb="0"/><line nr="405" mi="5" 
ci="0" mb="0" cb="0"/><line nr="406" mi="6" ci="0" mb="0" cb="0"/><line 
nr="407" mi="0" ci="1" mb="0" cb="0"/><line nr="408" mi="0" ci="4" mb="0" 
cb="0"/><line nr="409" mi="0" ci="7" mb="0" cb="0"/><line nr="410" mi="0" 
ci="2" mb="0" cb="0"/><line nr="425" mi="0" ci="4" mb="0" cb="0"/><line 
nr="426" mi="0" ci="7" mb="0" cb="0"/><line nr="427" mi="0" ci="7" mb="0" 
cb="0"/><line nr="428" mi="0" 
 ci="6" mb="0" cb="0"/><line nr="429" mi="0" ci="6" mb="0" cb="0"/><line 
nr="430" mi="0" ci="6" mb="0" cb="0"/><line nr="431" mi="0" ci="6" mb="0" 
cb="0"/><line nr="432" mi="0" ci="5" mb="0" cb="0"/><line nr="433" mi="0" 
ci="4" mb="0" cb="0"/><line nr="434" mi="0" ci="5" mb="0" cb="0"/><line 
nr="435" mi="0" ci="4" mb="0" cb="0"/><line nr="436" mi="0" ci="5" mb="0" 
cb="0"/><line nr="437" mi="0" ci="4" mb="0" cb="0"/><line nr="438" mi="0" 
ci="5" mb="0" cb="0"/><line nr="439" mi="0" ci="4" mb="0" cb="0"/><line 
nr="440" mi="0" ci="2" mb="0" cb="0"/><line nr="451" mi="0" ci="3" mb="0" 
cb="0"/><line nr="452" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" 
missed="215" covered="545"/><counter type="BRANCH" missed="13" 
covered="21"/><counter type="LINE" missed="35" covered="105"/><counter 
type="COMPLEXITY" missed="11" covered="15"/><counter type="METHOD" missed="0" 
covered="9"/><counter type="CLASS" missed="0" 
covered="1"/></sourcefile><sourcefile name="CommonsSiteCompressionMojo.ja
 va"><line nr="53" mi="0" ci="3" mb="0" cb="0"/><line nr="100" mi="0" ci="4" 
mb="1" cb="1"/><line nr="101" mi="4" ci="0" mb="0" cb="0"/><line nr="103" 
mi="1" ci="0" mb="0" cb="0"/><line nr="105" mi="0" ci="4" mb="1" cb="1"/><line 
nr="106" mi="4" ci="0" mb="0" cb="0"/><line nr="107" mi="1" ci="0" mb="0" 
cb="0"/><line nr="109" mi="0" ci="4" mb="0" cb="2"/><line nr="110" mi="0" 
ci="4" mb="0" cb="0"/><line nr="111" mi="0" ci="5" mb="0" cb="0"/><line 
nr="115" mi="0" ci="4" mb="0" cb="2"/><line nr="116" mi="0" ci="4" mb="0" 
cb="0"/><line nr="117" mi="0" ci="1" mb="0" cb="0"/><line nr="120" mi="0" 
ci="5" mb="0" cb="0"/><line nr="121" mi="0" ci="6" mb="0" cb="0"/><line 
nr="122" mi="0" ci="8" mb="0" cb="0"/><line nr="123" mi="1" ci="0" mb="0" 
cb="0"/><line nr="124" mi="13" ci="0" mb="0" cb="0"/><line nr="125" mi="8" 
ci="0" mb="0" cb="0"/><line nr="126" mi="6" ci="0" mb="0" cb="0"/><line 
nr="129" mi="0" ci="1" mb="0" cb="0"/><line nr="130" mi="0" ci="1" mb="0" 
cb="0"/><line nr="140" mi="0" ci=
 "3" mb="0" cb="0"/><line nr="141" mi="0" ci="16" mb="0" cb="2"/><line nr="142" 
mi="0" ci="4" mb="0" cb="0"/><line nr="143" mi="0" ci="3" mb="1" cb="1"/><line 
nr="144" mi="4" ci="0" mb="0" cb="0"/><line nr="147" mi="0" ci="1" mb="0" 
cb="0"/><line nr="161" mi="0" ci="17" mb="0" cb="0"/><line nr="162" mi="0" 
ci="5" mb="0" cb="0"/><line nr="163" mi="0" ci="10" mb="0" cb="2"/><line 
nr="164" mi="0" ci="3" mb="1" cb="1"/><line nr="165" mi="0" ci="5" mb="0" 
cb="0"/><line nr="167" mi="0" ci="1" mb="0" cb="0"/><line nr="169" mi="0" 
ci="1" mb="0" cb="0"/><line nr="182" mi="0" ci="7" mb="0" cb="0"/><line 
nr="185" mi="0" ci="10" mb="0" cb="0"/><line nr="186" mi="0" ci="2" mb="0" 
cb="0"/><line nr="187" mi="0" ci="5" mb="0" cb="0"/><line nr="188" mi="0" 
ci="3" mb="0" cb="0"/><line nr="189" mi="0" ci="4" mb="0" cb="0"/><line 
nr="191" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="42" 
covered="155"/><counter type="BRANCH" missed="4" covered="12"/><counter 
type="LINE" missed="9" cov
 ered="33"/><counter type="COMPLEXITY" missed="4" covered="9"/><counter 
type="METHOD" missed="0" covered="5"/><counter type="CLASS" missed="0" 
covered="1"/></sourcefile><counter type="INSTRUCTION" missed="386" 
covered="1182"/><counter type="BRANCH" missed="21" covered="51"/><counter 
type="LINE" missed="72" covered="239"/><counter type="COMPLEXITY" missed="20" 
covered="43"/><counter type="METHOD" missed="1" covered="26"/><counter 
type="CLASS" missed="0" covered="3"/></package><package 
name="org/apache/commons/release/plugin"><class 
name="org/apache/commons/release/plugin/SharedFunctions"><method 
name="initDirectory" 
desc="(Lorg/apache/maven/plugin/logging/Log;Ljava/io/File;)V" 
line="57"><counter type="INSTRUCTION" missed="27" covered="10"/><counter 
type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="7" 
covered="4"/><counter type="COMPLEXITY" missed="2" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><method name="copyFile" 
desc="(Lorg/apache/maven/p
 lugin/logging/Log;Ljava/io/File;Ljava/io/File;)V" line="83"><counter 
type="INSTRUCTION" missed="28" covered="5"/><counter type="LINE" missed="4" 
covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter 
type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" 
missed="55" covered="15"/><counter type="BRANCH" missed="2" 
covered="2"/><counter type="LINE" missed="11" covered="7"/><counter 
type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="0" 
covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile 
name="SharedFunctions.java"><line nr="57" mi="0" ci="3" mb="1" cb="1"/><line 
nr="59" mi="2" ci="0" mb="0" cb="0"/><line nr="60" mi="1" ci="0" mb="0" 
cb="0"/><line nr="61" mi="12" ci="0" mb="0" cb="0"/><line nr="62" mi="2" ci="0" 
mb="0" cb="0"/><line nr="63" mi="3" ci="0" mb="0" cb="0"/><line nr="64" mi="6" 
ci="0" mb="0" cb="0"/><line nr="65" mi="1" ci="0" mb="0" cb="0"/><line nr="67" 
mi="0" ci="3" mb="1" cb="1"/><line
  nr="68" mi="0" ci="3" mb="0" cb="0"/><line nr="70" mi="0" ci="1" mb="0" 
cb="0"/><line nr="83" mi="0" ci="3" mb="0" cb="0"/><line nr="84" mi="1" ci="0" 
mb="0" cb="0"/><line nr="85" mi="18" ci="0" mb="0" cb="0"/><line nr="86" mi="3" 
ci="0" mb="0" cb="0"/><line nr="87" mi="6" ci="0" mb="0" cb="0"/><line nr="88" 
mi="0" ci="1" mb="0" cb="0"/><line nr="89" mi="0" ci="1" mb="0" 
cb="0"/><counter type="INSTRUCTION" missed="55" covered="15"/><counter 
type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="11" 
covered="7"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter 
type="METHOD" missed="0" covered="2"/><counter type="CLASS" missed="0" 
covered="1"/></sourcefile><counter type="INSTRUCTION" missed="55" 
covered="15"/><counter type="BRANCH" missed="2" covered="2"/><counter 
type="LINE" missed="11" covered="7"/><counter type="COMPLEXITY" missed="2" 
covered="2"/><counter type="METHOD" missed="0" covered="2"/><counter 
type="CLASS" missed="0" covered="1"/></package><counter 
 type="INSTRUCTION" missed="441" covered="1363"/><counter type="BRANCH" 
missed="23" covered="53"/><counter type="LINE" missed="83" 
covered="288"/><counter type="COMPLEXITY" missed="22" covered="55"/><counter 
type="METHOD" missed="1" covered="38"/><counter type="CLASS" missed="0" 
covered="8"/></report>
\ No newline at end of file

Added: 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionDetachmentMojo.html
==============================================================================
--- 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionDetachmentMojo.html
 (added)
+++ 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionDetachmentMojo.html
 Fri Jun 15 16:12:15 2018
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD 
XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml"; lang="en"><head><meta 
http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link 
rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link 
rel="shortcut icon" href="../jacoco-resources/report.gif" 
type="image/gif"/><title>CommonsDistributionDetachmentMojo</title><script 
type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body 
onload="initialSort(['breadcrumb'])"><div class="breadcrumb" 
id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" 
class="el_session">Sessions</a></span><a href="../index.html" 
class="el_report">Apache Commons Release Plugin</a> &gt; <a href="index.html" 
class="el_package">org.apache.commons.release.plugin.mojos</a> &gt; <span 
class="el_class">CommonsDistributionDetachmentMojo</span></div><h1>CommonsDistri
 butionDetachmentMojo</h1><table class="coverage" cellspacing="0" 
id="coveragetable"><thead><tr><td class="sortable" id="a" 
onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" 
onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" 
id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" 
onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" 
onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" 
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" 
onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" 
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" 
onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" 
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" 
onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td
 class="bar">129 of 611</td><td class="ctr2">78%</td><td class="b
 ar">4 of 22</td><td class="ctr2">81%</td><td class="ctr1">5</td><td 
class="ctr2">24</td><td class="ctr1">28</td><td class="ctr2">129</td><td 
class="ctr1">1</td><td class="ctr2">13</td></tr></tfoot><tbody><tr><td 
id="a8"><a href="CommonsDistributionDetachmentMojo.java.html#L162" 
class="el_method">putAttachedArtifactInSha1Map(Artifact)</a></td><td 
class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="32" 
height="10" title="30" alt="30"/><img src="../jacoco-resources/greenbar.gif" 
width="22" height="10" title="21" alt="21"/></td><td class="ctr2" 
id="c10">41%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td 
class="ctr1" id="f3">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" 
id="h0">6</td><td class="ctr2" id="i3">11</td><td class="ctr1" 
id="j1">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a9"><a 
href="CommonsDistributionDetachmentMojo.java.html#L188" 
class="el_method">putAttachedArtifactInSha256Map(Artifact)</a></td><td 
class="bar" id="b1">
 <img src="../jacoco-resources/redbar.gif" width="32" height="10" title="30" 
alt="30"/><img src="../jacoco-resources/greenbar.gif" width="22" height="10" 
title="21" alt="21"/></td><td class="ctr2" id="c11">41%</td><td class="bar" 
id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f4">0</td><td 
class="ctr2" id="g5">1</td><td class="ctr1" id="h1">6</td><td class="ctr2" 
id="i4">11</td><td class="ctr1" id="j2">0</td><td class="ctr2" 
id="k1">1</td></tr><tr><td id="a4"><a 
href="CommonsDistributionDetachmentMojo.java.html#L302" 
class="el_method">getMd5FilePath(File, File)</a></td><td class="bar" 
id="b2"><img src="../jacoco-resources/redbar.gif" width="23" height="10" 
title="22" alt="22"/></td><td class="ctr2" id="c12">0%</td><td class="bar" 
id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f1">1</td><td 
class="ctr2" id="g6">1</td><td class="ctr1" id="h2">5</td><td class="ctr2" 
id="i9">5</td><td class="ctr1" id="j0">1</td><td class="ctr2" 
id="k2">1</td></tr><tr><td i
 d="a7"><a href="CommonsDistributionDetachmentMojo.java.html#L268" 
class="el_method">hashArtifacts()</a></td><td class="bar" id="b3"><img 
src="../jacoco-resources/redbar.gif" width="17" height="10" title="16" 
alt="16"/><img src="../jacoco-resources/greenbar.gif" width="102" height="10" 
title="96" alt="96"/></td><td class="ctr2" id="c6">85%</td><td class="bar" 
id="d2"><img src="../jacoco-resources/greenbar.gif" width="34" height="10" 
title="4" alt="4"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" 
id="f5">0</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h4">2</td><td 
class="ctr2" id="i1">18</td><td class="ctr1" id="j3">0</td><td class="ctr2" 
id="k3">1</td></tr><tr><td id="a2"><a 
href="CommonsDistributionDetachmentMojo.java.html#L120" 
class="el_method">execute()</a></td><td class="bar" id="b4"><img 
src="../jacoco-resources/redbar.gif" width="10" height="10" title="10" 
alt="10"/><img src="../jacoco-resources/greenbar.gif" width="99" height="10" 
title="93" alt="93"/></
 td><td class="ctr2" id="c5">90%</td><td class="bar" id="d0"><img 
src="../jacoco-resources/redbar.gif" width="25" height="10" title="3" 
alt="3"/><img src="../jacoco-resources/greenbar.gif" width="94" height="10" 
title="11" alt="11"/></td><td class="ctr2" id="e2">78%</td><td class="ctr1" 
id="f0">3</td><td class="ctr2" id="g0">8</td><td class="ctr1" id="h3">4</td><td 
class="ctr2" id="i0">27</td><td class="ctr1" id="j4">0</td><td class="ctr2" 
id="k4">1</td></tr><tr><td id="a11"><a 
href="CommonsDistributionDetachmentMojo.java.html#L212" 
class="el_method">writeAllArtifactsInSha1PropertiesFile()</a></td><td 
class="bar" id="b5"><img src="../jacoco-resources/redbar.gif" width="7" 
height="10" title="7" alt="7"/><img src="../jacoco-resources/greenbar.gif" 
width="34" height="10" title="32" alt="32"/></td><td class="ctr2" 
id="c7">82%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td 
class="ctr1" id="f6">0</td><td class="ctr2" id="g7">1</td><td class="ctr1" 
id="h5">2</td><td class
 ="ctr2" id="i5">8</td><td class="ctr1" id="j5">0</td><td class="ctr2" 
id="k5">1</td></tr><tr><td id="a12"><a 
href="CommonsDistributionDetachmentMojo.java.html#L227" 
class="el_method">writeAllArtifactsInSha256PropertiesFile()</a></td><td 
class="bar" id="b6"><img src="../jacoco-resources/redbar.gif" width="7" 
height="10" title="7" alt="7"/><img src="../jacoco-resources/greenbar.gif" 
width="34" height="10" title="32" alt="32"/></td><td class="ctr2" 
id="c8">82%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td 
class="ctr1" id="f7">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" 
id="h6">2</td><td class="ctr2" id="i6">8</td><td class="ctr1" id="j6">0</td><td 
class="ctr2" id="k6">1</td></tr><tr><td id="a3"><a 
href="CommonsDistributionDetachmentMojo.java.html#L347" 
class="el_method">getArtifactKey(Artifact)</a></td><td class="bar" id="b7"><img 
src="../jacoco-resources/redbar.gif" width="7" height="10" title="7" 
alt="7"/><img src="../jacoco-resources/greenbar.gif" width
 ="28" height="10" title="27" alt="27"/></td><td class="ctr2" 
id="c9">79%</td><td class="bar" id="d1"><img 
src="../jacoco-resources/redbar.gif" width="8" height="10" title="1" 
alt="1"/><img src="../jacoco-resources/greenbar.gif" width="8" height="10" 
title="1" alt="1"/></td><td class="ctr2" id="e3">50%</td><td class="ctr1" 
id="f2">1</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h7">1</td><td 
class="ctr2" id="i7">7</td><td class="ctr1" id="j7">0</td><td class="ctr2" 
id="k7">1</td></tr><tr><td id="a1"><a 
href="CommonsDistributionDetachmentMojo.java.html#L245" 
class="el_method">copyRemovedArtifactsToWorkingDirectory()</a></td><td 
class="bar" id="b8"><img src="../jacoco-resources/greenbar.gif" width="79" 
height="10" title="74" alt="74"/></td><td class="ctr2" id="c0">100%</td><td 
class="bar" id="d3"><img src="../jacoco-resources/greenbar.gif" width="17" 
height="10" title="2" alt="2"/></td><td class="ctr2" id="e1">100%</td><td 
class="ctr1" id="f8">0</td><td class="ctr2" id="g3">2
 </td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i2">13</td><td 
class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td 
id="a10"><a href="CommonsDistributionDetachmentMojo.java.html#L65" 
class="el_method">static {...}</a></td><td class="bar" id="b9"><img 
src="../jacoco-resources/greenbar.gif" width="25" height="10" title="24" 
alt="24"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d9"/><td 
class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">0</td><td class="ctr2" 
id="g9">1</td><td class="ctr1" id="h9">0</td><td class="ctr2" id="i8">7</td><td 
class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td 
id="a5"><a href="CommonsDistributionDetachmentMojo.java.html#L317" 
class="el_method">getSha1FilePath(File, File)</a></td><td class="bar" 
id="b10"><img src="../jacoco-resources/greenbar.gif" width="23" height="10" 
title="22" alt="22"/></td><td class="ctr2" id="c2">100%</td><td class="bar" 
id="d10"/><td class="ctr2" id="e10">n/a</td><td cla
 ss="ctr1" id="f10">0</td><td class="ctr2" id="g10">1</td><td class="ctr1" 
id="h10">0</td><td class="ctr2" id="i10">5</td><td class="ctr1" 
id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a6"><a 
href="CommonsDistributionDetachmentMojo.java.html#L332" 
class="el_method">getSha256FilePath(File, File)</a></td><td class="bar" 
id="b11"><img src="../jacoco-resources/greenbar.gif" width="23" height="10" 
title="22" alt="22"/></td><td class="ctr2" id="c3">100%</td><td class="bar" 
id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td 
class="ctr2" id="g11">1</td><td class="ctr1" id="h11">0</td><td class="ctr2" 
id="i11">5</td><td class="ctr1" id="j11">0</td><td class="ctr2" 
id="k11">1</td></tr><tr><td id="a0"><a 
href="CommonsDistributionDetachmentMojo.java.html#L54" 
class="el_method">CommonsDistributionDetachmentMojo()</a></td><td class="bar" 
id="b12"><img src="../jacoco-resources/greenbar.gif" width="19" height="10" 
title="18" alt="18"/></td><td class="ct
 r2" id="c4">100%</td><td class="bar" id="d12"/><td class="ctr2" 
id="e12">n/a</td><td class="ctr1" id="f12">0</td><td class="ctr2" 
id="g12">1</td><td class="ctr1" id="h12">0</td><td class="ctr2" 
id="i12">4</td><td class="ctr1" id="j12">0</td><td class="ctr2" 
id="k12">1</td></tr></tbody></table><div class="footer"><span 
class="right">Created with <a href="http://www.jacoco.org/jacoco";>JaCoCo</a> 
0.8.0.201801022044</span></div></body></html>
\ No newline at end of file

Added: 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionDetachmentMojo.java.html
==============================================================================
--- 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionDetachmentMojo.java.html
 (added)
+++ 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionDetachmentMojo.java.html
 Fri Jun 15 16:12:15 2018
@@ -0,0 +1,357 @@
+<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD 
XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml"; lang="en"><head><meta 
http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link 
rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link 
rel="shortcut icon" href="../jacoco-resources/report.gif" 
type="image/gif"/><title>CommonsDistributionDetachmentMojo.java</title><link 
rel="stylesheet" href="../jacoco-resources/prettify.css" 
type="text/css"/><script type="text/javascript" 
src="../jacoco-resources/prettify.js"></script></head><body 
onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" 
id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" 
class="el_session">Sessions</a></span><a href="../index.html" 
class="el_report">Apache Commons Release Plugin</a> &gt; <a 
href="index.source.html" class="el_package">org.apache.commons.release.p
 lugin.mojos</a> &gt; <span 
class="el_source">CommonsDistributionDetachmentMojo.java</span></div><h1>CommonsDistributionDetachmentMojo.java</h1><pre
 class="source lang-java linenums">/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the &quot;License&quot;); you may not use this file except in compliance 
with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.release.plugin.mojos;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Properties;
+import java.util.Set;
+
+import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.release.plugin.SharedFunctions;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+
+/**
+ * The purpose of this Maven mojo is to detach the artifacts generated by the 
maven-assembly-plugin,
+ * which for the Apache Commons Project do not get uploaded to Nexus, and 
putting those artifacts
+ * in the dev distribution location for Apache projects.
+ *
+ * @author chtompki
+ * @since 1.0
+ */
+@Mojo(name = &quot;detach-distributions&quot;,
+        defaultPhase = LifecyclePhase.VERIFY,
+        threadSafe = true,
+        aggregator = true)
+<span class="fc" id="L54">public class CommonsDistributionDetachmentMojo 
extends AbstractMojo {</span>
+
+    /**
+     * A list of &quot;artifact types&quot; in the Maven vernacular, to
+     * be detached from the deployment. For the time being we want
+     * all artifacts generated by the maven-assembly-plugin to be detached
+     * from the deployment, namely *-src.zip, *-src.tar.gz, *-bin.zip,
+     * *-bin.tar.gz, and the corresponding .asc pgp signatures.
+     */
+    private static final Set&lt;String&gt; ARTIFACT_TYPES_TO_DETACH;
+    static {
+<span class="fc" id="L65">        Set&lt;String&gt; hashSet = new 
HashSet&lt;&gt;();</span>
+<span class="fc" id="L66">        hashSet.add(&quot;zip&quot;);</span>
+<span class="fc" id="L67">        hashSet.add(&quot;tar.gz&quot;);</span>
+<span class="fc" id="L68">        hashSet.add(&quot;zip.asc&quot;);</span>
+<span class="fc" id="L69">        hashSet.add(&quot;tar.gz.asc&quot;);</span>
+<span class="fc" id="L70">        ARTIFACT_TYPES_TO_DETACH = 
Collections.unmodifiableSet(hashSet);</span>
+<span class="fc" id="L71">    }</span>
+
+    /**
+     * This list is supposed to hold the Maven references to the 
aforementioned artifacts so that we
+     * can upload them to svn after they've been detached from the Maven 
deployment.
+     */
+<span class="fc" id="L77">    private final List&lt;Artifact&gt; 
detachedArtifacts = new ArrayList&lt;&gt;();</span>
+
+    /**
+     * A {@link Properties} of {@link Artifact} → {@link String} containing 
the sha1 signatures
+     * for the individual artifacts, where the {@link Artifact} is represented 
as:
+     * &lt;code&gt;groupId:artifactId:version:type=sha1&lt;/code&gt;.
+     */
+<span class="fc" id="L84">    private final Properties artifactSha1s = new 
Properties();</span>
+
+    /**
+     * A {@link Properties} of {@link Artifact} → {@link String} containing 
the sha256 signatures
+     * for the individual artifacts, where the {@link Artifact} is represented 
as:
+     * &lt;code&gt;groupId:artifactId:version:type=sha1&lt;/code&gt;.
+     */
+<span class="fc" id="L91">    private final Properties artifactSha256s = new 
Properties();</span>
+
+    /**
+     * The maven project context injection so that we can get a hold of the 
variables at hand.
+     */
+    @Parameter(defaultValue = &quot;${project}&quot;, required = true)
+    private MavenProject project;
+
+    /**
+     * The working directory in &lt;code&gt;target&lt;/code&gt; that we use as 
a sandbox for the plugin.
+     */
+    @Parameter(defaultValue = 
&quot;${project.build.directory}/commons-release-plugin&quot;,
+            property = &quot;commons.outputDirectory&quot;)
+    private File workingDirectory;
+
+    /**
+     * The subversion staging url to which we upload all of our staged 
artifacts.
+     */
+    @Parameter(defaultValue = &quot;&quot;, property = 
&quot;commons.distSvnStagingUrl&quot;)
+    private String distSvnStagingUrl;
+
+    /**
+     * A parameter to generally avoid running unless it is specifically turned 
on by the consuming module.
+     */
+    @Parameter(defaultValue = &quot;false&quot;, property = 
&quot;commons.release.isDistModule&quot;)
+    private Boolean isDistModule;
+
+    @Override
+    public void execute() throws MojoExecutionException {
+<span class="pc bpc" id="L120" title="1 of 2 branches missed.">        if 
(!isDistModule) {</span>
+<span class="nc" id="L121">            getLog().info(&quot;This module is 
marked as a non distribution &quot;</span>
+                    + &quot;or assembly module, and the plugin will not 
run.&quot;);
+<span class="nc" id="L123">            return;</span>
+        }
+<span class="fc bfc" id="L125" title="All 2 branches covered.">        if 
(StringUtils.isEmpty(distSvnStagingUrl)) {</span>
+<span class="fc" id="L126">            
getLog().warn(&quot;commons.distSvnStagingUrl is not set, the 
commons-release-plugin will not run.&quot;);</span>
+<span class="fc" id="L127">            return;</span>
+        }
+<span class="fc" id="L129">        getLog().info(&quot;Detaching 
Assemblies&quot;);</span>
+<span class="fc bfc" id="L130" title="All 2 branches covered.">        for 
(Object attachedArtifact : project.getAttachedArtifacts()) {</span>
+<span class="fc" id="L131">            putAttachedArtifactInSha1Map((Artifact) 
attachedArtifact);</span>
+<span class="fc" id="L132">            
putAttachedArtifactInSha256Map((Artifact) attachedArtifact);</span>
+<span class="fc bfc" id="L133" title="All 2 branches covered.">            if 
(ARTIFACT_TYPES_TO_DETACH.contains(((Artifact) attachedArtifact).getType())) 
{</span>
+<span class="fc" id="L134">                detachedArtifacts.add((Artifact) 
attachedArtifact);</span>
+            }
+<span class="fc" id="L136">        }</span>
+<span class="pc bpc" id="L137" title="1 of 2 branches missed.">        if 
(detachedArtifacts.isEmpty()) {</span>
+<span class="nc" id="L138">            getLog().info(&quot;Current project 
contains no distributions. Not executing.&quot;);</span>
+<span class="nc" id="L139">            return;</span>
+        }
+<span class="fc bfc" id="L141" title="All 2 branches covered.">        for 
(Artifact artifactToRemove : detachedArtifacts) {</span>
+<span class="fc" id="L142">            
project.getAttachedArtifacts().remove(artifactToRemove);</span>
+<span class="fc" id="L143">        }</span>
+<span class="pc bpc" id="L144" title="1 of 2 branches missed.">        if 
(!workingDirectory.exists()) {</span>
+<span class="fc" id="L145">            SharedFunctions.initDirectory(getLog(), 
workingDirectory);</span>
+        }
+<span class="fc" id="L147">        
writeAllArtifactsInSha1PropertiesFile();</span>
+<span class="fc" id="L148">        
writeAllArtifactsInSha256PropertiesFile();</span>
+<span class="fc" id="L149">        
copyRemovedArtifactsToWorkingDirectory();</span>
+<span class="fc" id="L150">        getLog().info(&quot;&quot;);</span>
+<span class="fc" id="L151">        hashArtifacts();</span>
+<span class="fc" id="L152">    }</span>
+
+    /**
+     * Takes an attached artifact and puts the signature in the map.
+     * @param artifact is a Maven {@link Artifact} taken from the project at 
start time of mojo.
+     * @throws MojoExecutionException if an {@link IOException} occurs when 
getting the sha1 of the
+     *                                artifact.
+     */
+    private void putAttachedArtifactInSha1Map(Artifact artifact) throws 
MojoExecutionException {
+        try {
+<span class="fc" id="L162">            String artifactKey = 
getArtifactKey(artifact);</span>
+<span class="fc" id="L163">            try (FileInputStream fis = new 
FileInputStream(artifact.getFile())) {</span>
+<span class="fc" id="L164">                artifactSha1s.put(artifactKey, 
DigestUtils.sha1Hex(fis));</span>
+            }
+<span class="nc" id="L166">        } catch (IOException e) {</span>
+<span class="nc" id="L167">            throw new MojoExecutionException(</span>
+                &quot;Could not find artifact signature for: &quot;
+<span class="nc" id="L169">                    + 
artifact.getArtifactId()</span>
+                    + &quot;-&quot;
+<span class="nc" id="L171">                    + 
artifact.getClassifier()</span>
+                    + &quot;-&quot;
+<span class="nc" id="L173">                    + artifact.getVersion()</span>
+                    + &quot; type: &quot;
+<span class="nc" id="L175">                    + artifact.getType(),</span>
+                e);
+<span class="fc" id="L177">        }</span>
+<span class="fc" id="L178">    }</span>
+
+    /**
+     * Takes an attached artifact and puts the signature in the map.
+     * @param artifact is a Maven {@link Artifact} taken from the project at 
start time of mojo.
+     * @throws MojoExecutionException if an {@link IOException} occurs when 
getting the sha1 of the
+     *                                artifact.
+     */
+    private void putAttachedArtifactInSha256Map(Artifact artifact) throws 
MojoExecutionException {
+        try {
+<span class="fc" id="L188">            String artifactKey = 
getArtifactKey(artifact);</span>
+<span class="fc" id="L189">            try (FileInputStream fis = new 
FileInputStream(artifact.getFile())) {</span>
+<span class="fc" id="L190">                artifactSha256s.put(artifactKey, 
DigestUtils.sha256Hex(fis));</span>
+            }
+<span class="nc" id="L192">        } catch (IOException e) {</span>
+<span class="nc" id="L193">            throw new MojoExecutionException(</span>
+                &quot;Could not find artifact signature for: &quot;
+<span class="nc" id="L195">                    + 
artifact.getArtifactId()</span>
+                    + &quot;-&quot;
+<span class="nc" id="L197">                    + 
artifact.getClassifier()</span>
+                    + &quot;-&quot;
+<span class="nc" id="L199">                    + artifact.getVersion()</span>
+                    + &quot; type: &quot;
+<span class="nc" id="L201">                    + artifact.getType(),</span>
+                e);
+<span class="fc" id="L203">        }</span>
+<span class="fc" id="L204">    }</span>
+
+    /**
+     * Writes to ./target/commons-release-plugin/sha1.properties the artifact 
sha1's.
+     *
+     * @throws MojoExecutionException if we can't write the file due to an 
{@link IOException}.
+     */
+    private void writeAllArtifactsInSha1PropertiesFile() throws 
MojoExecutionException {
+<span class="fc" id="L212">        File propertiesFile = new 
File(workingDirectory, &quot;sha1.properties&quot;);</span>
+<span class="fc" id="L213">        getLog().info(&quot;Writting &quot; + 
propertiesFile);</span>
+<span class="fc" id="L214">        try (FileOutputStream fileWriter = new 
FileOutputStream(propertiesFile)) {</span>
+<span class="fc" id="L215">            artifactSha1s.store(fileWriter, 
&quot;Release SHA-1s&quot;);</span>
+<span class="nc" id="L216">        } catch (IOException e) {</span>
+<span class="nc" id="L217">            throw new 
MojoExecutionException(&quot;Failure to write SHA-1's&quot;, e);</span>
+<span class="fc" id="L218">        }</span>
+<span class="fc" id="L219">    }</span>
+
+    /**
+     * Writes to ./target/commons-release-plugin/sha256.properties the 
artifact sha256's.
+     *
+     * @throws MojoExecutionException if we can't write the file due to an 
{@link IOException}.
+     */
+    private void writeAllArtifactsInSha256PropertiesFile() throws 
MojoExecutionException {
+<span class="fc" id="L227">        File propertiesFile = new 
File(workingDirectory, &quot;sha256.properties&quot;);</span>
+<span class="fc" id="L228">        getLog().info(&quot;Writting &quot; + 
propertiesFile);</span>
+<span class="fc" id="L229">        try (FileOutputStream fileWriter = new 
FileOutputStream(propertiesFile)) {</span>
+<span class="fc" id="L230">            artifactSha256s.store(fileWriter, 
&quot;Release SHA-256s&quot;);</span>
+<span class="nc" id="L231">        } catch (IOException e) {</span>
+<span class="nc" id="L232">            throw new 
MojoExecutionException(&quot;Failure to write SHA-256's&quot;, e);</span>
+<span class="fc" id="L233">        }</span>
+<span class="fc" id="L234">    }</span>
+
+    /**
+     * A helper method to copy the newly detached artifacts to 
&lt;code&gt;target/commons-release-plugin&lt;/code&gt;
+     * so that the {@link CommonsDistributionStagingMojo} can find the 
artifacts later.
+     *
+     * @throws MojoExecutionException if some form of an {@link IOException} 
occurs, we want it
+     *                                properly wrapped so that Maven can 
handle it.
+     */
+    private void copyRemovedArtifactsToWorkingDirectory() throws 
MojoExecutionException {
+        StringBuffer copiedArtifactAbsolutePath;
+<span class="fc" id="L245">        final String wdAbsolutePath = 
workingDirectory.getAbsolutePath();</span>
+<span class="fc" id="L246">        getLog().info(</span>
+<span class="fc" id="L247">                &quot;Copying &quot; + 
detachedArtifacts.size() + &quot; detached artifacts to working directory 
&quot; + wdAbsolutePath);</span>
+<span class="fc bfc" id="L248" title="All 2 branches covered.">        for 
(Artifact artifact: detachedArtifacts) {</span>
+<span class="fc" id="L249">            File artifactFile = 
artifact.getFile();</span>
+<span class="fc" id="L250">            copiedArtifactAbsolutePath = new 
StringBuffer(wdAbsolutePath);</span>
+<span class="fc" id="L251">            
copiedArtifactAbsolutePath.append(&quot;/&quot;);</span>
+<span class="fc" id="L252">            
copiedArtifactAbsolutePath.append(artifactFile.getName());</span>
+<span class="fc" id="L253">            File copiedArtifact = new 
File(copiedArtifactAbsolutePath.toString());</span>
+<span class="fc" id="L254">            getLog().info(&quot;Copying: &quot; + 
artifactFile.getName());</span>
+<span class="fc" id="L255">            SharedFunctions.copyFile(getLog(), 
artifactFile, copiedArtifact);</span>
+<span class="fc" id="L256">        }</span>
+<span class="fc" id="L257">    }</span>
+
+    /**
+     *  A helper method that creates md5, sha1, and sha256  signature files 
for our detached artifacts in the
+     *  &lt;code&gt;target/commons-release-plugin&lt;/code&gt; directory for 
the purpose of being uploaded by
+     *  the {@link CommonsDistributionStagingMojo}.
+     *
+     * @throws MojoExecutionException if some form of an {@link IOException} 
occurs, we want it
+     *                                properly wrapped so that Maven can 
handle it.
+     */
+    private void hashArtifacts() throws MojoExecutionException {
+<span class="fc bfc" id="L268" title="All 2 branches covered.">        for 
(Artifact artifact : detachedArtifacts) {</span>
+<span class="fc bfc" id="L269" title="All 2 branches covered.">            if 
(!artifact.getFile().getName().contains(&quot;asc&quot;)) {</span>
+<span class="fc" id="L270">                String artifactKey = 
getArtifactKey(artifact);</span>
+                try {
+                    String digest;
+                    // SHA-1
+<span class="fc" id="L274">                    digest = 
artifactSha1s.getProperty(artifactKey.toString());</span>
+<span class="fc" id="L275">                    
getLog().info(artifact.getFile().getName() + &quot; sha1: &quot; + 
digest);</span>
+<span class="fc" id="L276">                    try (PrintWriter printWriter = 
new PrintWriter(</span>
+<span class="fc" id="L277">                            
getSha1FilePath(workingDirectory, artifact.getFile()))) {</span>
+<span class="fc" id="L278">                        
printWriter.println(digest);</span>
+                    }
+                    // SHA-256
+<span class="fc" id="L281">                    digest = 
artifactSha256s.getProperty(artifactKey.toString());</span>
+<span class="fc" id="L282">                    
getLog().info(artifact.getFile().getName() + &quot; sha256: &quot; + 
digest);</span>
+<span class="fc" id="L283">                    try (PrintWriter printWriter = 
new PrintWriter(</span>
+<span class="fc" id="L284">                            
getSha256FilePath(workingDirectory, artifact.getFile()))) {</span>
+<span class="fc" id="L285">                        
printWriter.println(digest);</span>
+                    }
+<span class="nc" id="L287">                } catch (IOException e) {</span>
+<span class="nc" id="L288">                    throw new 
MojoExecutionException(&quot;Could not sign file: &quot; + 
artifact.getFile().getName(), e);</span>
+<span class="fc" id="L289">                }</span>
+            }
+<span class="fc" id="L291">        }</span>
+<span class="fc" id="L292">    }</span>
+
+    /**
+     * A helper method to create a file path for the 
&lt;code&gt;md5&lt;/code&gt; signature file from a given file.
+     *
+     * @param directory is the {@link File} for the directory in which to make 
the &lt;code&gt;.md5&lt;/code&gt; file.
+     * @param file the {@link File} whose name we should use to create the 
&lt;code&gt;.md5&lt;/code&gt; file.
+     * @return a {@link String} that is the absolute path to the 
&lt;code&gt;.md5&lt;/code&gt; file.
+     */
+    private String getMd5FilePath(File directory, File file) {
+<span class="nc" id="L302">        StringBuffer buffer = new 
StringBuffer(directory.getAbsolutePath());</span>
+<span class="nc" id="L303">        buffer.append(&quot;/&quot;);</span>
+<span class="nc" id="L304">        buffer.append(file.getName());</span>
+<span class="nc" id="L305">        buffer.append(&quot;.md5&quot;);</span>
+<span class="nc" id="L306">        return buffer.toString();</span>
+    }
+
+    /**
+     * A helper method to create a file path for the 
&lt;code&gt;sha1&lt;/code&gt; signature file from a given file.
+     *
+     * @param directory is the {@link File} for the directory in which to make 
the &lt;code&gt;.sha1&lt;/code&gt; file.
+     * @param file the {@link File} whose name we should use to create the 
&lt;code&gt;.sha1&lt;/code&gt; file.
+     * @return a {@link String} that is the absolute path to the 
&lt;code&gt;.sha1&lt;/code&gt; file.
+     */
+    private String getSha1FilePath(File directory, File file) {
+<span class="fc" id="L317">        StringBuffer buffer = new 
StringBuffer(directory.getAbsolutePath());</span>
+<span class="fc" id="L318">        buffer.append(&quot;/&quot;);</span>
+<span class="fc" id="L319">        buffer.append(file.getName());</span>
+<span class="fc" id="L320">        buffer.append(&quot;.sha1&quot;);</span>
+<span class="fc" id="L321">        return buffer.toString();</span>
+    }
+
+    /**
+     * A helper method to create a file path for the 
&lt;code&gt;sha1&lt;/code&gt; signature file from a given file.
+     *
+     * @param directory is the {@link File} for the directory in which to make 
the &lt;code&gt;.sha1&lt;/code&gt; file.
+     * @param file the {@link File} whose name we should use to create the 
&lt;code&gt;.sha1&lt;/code&gt; file.
+     * @return a {@link String} that is the absolute path to the 
&lt;code&gt;.sha1&lt;/code&gt; file.
+     */
+    private String getSha256FilePath(File directory, File file) {
+<span class="fc" id="L332">        StringBuffer buffer = new 
StringBuffer(directory.getAbsolutePath());</span>
+<span class="fc" id="L333">        buffer.append(&quot;/&quot;);</span>
+<span class="fc" id="L334">        buffer.append(file.getName());</span>
+<span class="fc" id="L335">        buffer.append(&quot;.sha256&quot;);</span>
+<span class="fc" id="L336">        return buffer.toString();</span>
+    }
+
+    /**
+     * Generates the unique artifact key for storage in our sha1 map and 
sha256 map. For example,
+     * commons-test-1.4-src.tar.gz should have it's name as the key.
+     *
+     * @param artifact the {@link Artifact} that we wish to generate a key for.
+     * @return the generated key
+     */
+    private String getArtifactKey(Artifact artifact) {
+<span class="fc" id="L347">        StringBuffer artifactKey = new 
StringBuffer();</span>
+<span class="fc" id="L348">        
artifactKey.append(artifact.getArtifactId()).append('-')</span>
+<span class="fc" id="L349">                
.append(artifact.getVersion()).append('-');</span>
+<span class="pc bpc" id="L350" title="1 of 2 branches missed.">        if 
(artifact.hasClassifier()) {</span>
+<span class="nc" id="L351">            
artifactKey.append(artifact.getClassifier()).append('-');</span>
+        }
+<span class="fc" id="L353">        
artifactKey.append(artifact.getType());</span>
+<span class="fc" id="L354">        return artifactKey.toString();</span>
+    }
+}
+</pre><div class="footer"><span class="right">Created with <a 
href="http://www.jacoco.org/jacoco";>JaCoCo</a> 
0.8.0.201801022044</span></div></body></html>
\ No newline at end of file

Added: 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionStagingMojo.html
==============================================================================
--- 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionStagingMojo.html
 (added)
+++ 
dev/commons/commons-release-plugin/1.3-RC1/site/jacoco/org.apache.commons.release.plugin.mojos/CommonsDistributionStagingMojo.html
 Fri Jun 15 16:12:15 2018
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD 
XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml"; lang="en"><head><meta 
http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link 
rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link 
rel="shortcut icon" href="../jacoco-resources/report.gif" 
type="image/gif"/><title>CommonsDistributionStagingMojo</title><script 
type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body 
onload="initialSort(['breadcrumb'])"><div class="breadcrumb" 
id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" 
class="el_session">Sessions</a></span><a href="../index.html" 
class="el_report">Apache Commons Release Plugin</a> &gt; <a href="index.html" 
class="el_package">org.apache.commons.release.plugin.mojos</a> &gt; <span 
class="el_class">CommonsDistributionStagingMojo</span></div><h1>CommonsDistribution
 StagingMojo</h1><table class="coverage" cellspacing="0" 
id="coveragetable"><thead><tr><td class="sortable" id="a" 
onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" 
onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" 
id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" 
onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" 
onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" 
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" 
onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" 
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" 
onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" 
onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" 
onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td
 class="bar">215 of 760</td><td class="ctr2">71%</td><td class="bar">13 of
  34</td><td class="ctr2">61%</td><td class="ctr1">11</td><td 
class="ctr2">26</td><td class="ctr1">35</td><td class="ctr2">140</td><td 
class="ctr1">0</td><td class="ctr2">9</td></tr></tfoot><tbody><tr><td 
id="a6"><a href="CommonsDistributionStagingMojo.java.html#L165" 
class="el_method">execute()</a></td><td class="bar" id="b0"><img 
src="../jacoco-resources/redbar.gif" width="56" height="10" title="139" 
alt="139"/><img src="../jacoco-resources/greenbar.gif" width="63" height="10" 
title="158" alt="158"/></td><td class="ctr2" id="c8">53%</td><td class="bar" 
id="d0"><img src="../jacoco-resources/redbar.gif" width="68" height="10" 
title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="51" 
height="10" title="6" alt="6"/></td><td class="ctr2" id="e3">42%</td><td 
class="ctr1" id="f0">6</td><td class="ctr2" id="g0">8</td><td class="ctr1" 
id="h0">20</td><td class="ctr2" id="i0">49</td><td class="ctr1" 
id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="Com
 monsDistributionStagingMojo.java.html#L377" 
class="el_method">buildReadmeAndHeaderHtmlFiles()</a></td><td class="bar" 
id="b1"><img src="../jacoco-resources/redbar.gif" width="16" height="10" 
title="42" alt="42"/><img src="../jacoco-resources/greenbar.gif" width="33" 
height="10" title="83" alt="83"/></td><td class="ctr2" id="c6">66%</td><td 
class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" 
id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h1">8</td><td 
class="ctr2" id="i1">26</td><td class="ctr1" id="j1">0</td><td class="ctr2" 
id="k1">1</td></tr><tr><td id="a2"><a 
href="CommonsDistributionStagingMojo.java.html#L305" 
class="el_method">copyDistributionsIntoScmDirectoryStructureAndAddToSvn(File, 
ScmProvider, ScmRepository)</a></td><td class="bar" id="b2"><img 
src="../jacoco-resources/redbar.gif" width="7" height="10" title="18" 
alt="18"/><img src="../jacoco-resources/greenbar.gif" width="48" height="10" 
title="121" alt="121"/></td><td class="ctr2" id
 ="c5">87%</td><td class="bar" id="d2"><img 
src="../jacoco-resources/redbar.gif" width="8" height="10" title="1" 
alt="1"/><img src="../jacoco-resources/greenbar.gif" width="60" height="10" 
title="7" alt="7"/></td><td class="ctr2" id="e0">87%</td><td class="ctr1" 
id="f2">1</td><td class="ctr2" id="g2">5</td><td class="ctr1" id="h3">3</td><td 
class="ctr2" id="i2">24</td><td class="ctr1" id="j2">0</td><td class="ctr2" 
id="k2">1</td></tr><tr><td id="a5"><a 
href="CommonsDistributionStagingMojo.java.html#L343" 
class="el_method">copySiteToScmDirectory()</a></td><td class="bar" id="b3"><img 
src="../jacoco-resources/redbar.gif" width="6" height="10" title="16" 
alt="16"/><img src="../jacoco-resources/greenbar.gif" width="10" height="10" 
title="25" alt="25"/></td><td class="ctr2" id="c7">60%</td><td class="bar" 
id="d3"><img src="../jacoco-resources/redbar.gif" width="8" height="10" 
title="1" alt="1"/><img src="../jacoco-resources/greenbar.gif" width="8" 
height="10" title="1" alt="1"/></td><td c
 lass="ctr2" id="e2">50%</td><td class="ctr1" id="f3">1</td><td class="ctr2" 
id="g3">2</td><td class="ctr1" id="h2">4</td><td class="ctr2" id="i4">9</td><td 
class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td 
id="a3"><a href="CommonsDistributionStagingMojo.java.html#L425" 
class="el_method">copyHeaderAndReadmeToSubdirectories(File, File)</a></td><td 
class="bar" id="b4"><img src="../jacoco-resources/greenbar.gif" width="32" 
height="10" title="80" alt="80"/></td><td class="ctr2" id="c0">100%</td><td 
class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" 
id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h4">0</td><td 
class="ctr2" id="i3">16</td><td class="ctr1" id="j4">0</td><td class="ctr2" 
id="k4">1</td></tr><tr><td id="a7"><a 
href="CommonsDistributionStagingMojo.java.html#L240" 
class="el_method">listNotHiddenFilesAndDirectories(File, List)</a></td><td 
class="bar" id="b5"><img src="../jacoco-resources/greenbar.gif" width="18" 
height="1
 0" title="45" alt="45"/></td><td class="ctr2" id="c1">100%</td><td class="bar" 
id="d1"><img src="../jacoco-resources/redbar.gif" width="25" height="10" 
title="3" alt="3"/><img src="../jacoco-resources/greenbar.gif" width="60" 
height="10" title="7" alt="7"/></td><td class="ctr2" id="e1">70%</td><td 
class="ctr1" id="f1">3</td><td class="ctr2" id="g1">6</td><td class="ctr1" 
id="h5">0</td><td class="ctr2" id="i5">8</td><td class="ctr1" id="j5">0</td><td 
class="ctr2" id="k5">1</td></tr><tr><td id="a4"><a 
href="CommonsDistributionStagingMojo.java.html#L263" 
class="el_method">copyReleaseNotesToWorkingDirectory()</a></td><td class="bar" 
id="b6"><img src="../jacoco-resources/greenbar.gif" width="10" height="10" 
title="26" alt="26"/></td><td class="ctr2" id="c2">100%</td><td class="bar" 
id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td 
class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" 
id="i6">5</td><td class="ctr1" id="j6">0</td><td class="c
 tr2" id="k6">1</td></tr><tr><td id="a8"><a 
href="CommonsDistributionStagingMojo.java.html#L451" 
class="el_method">setBaseDir(File)</a></td><td class="bar" id="b7"><img 
src="../jacoco-resources/greenbar.gif" width="1" height="10" title="4" 
alt="4"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d7"/><td 
class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" 
id="g7">1</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i7">2</td><td 
class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td 
id="a1"><a href="CommonsDistributionStagingMojo.java.html#L64" 
class="el_method">CommonsDistributionStagingMojo()</a></td><td class="bar" 
id="b8"><img src="../jacoco-resources/greenbar.gif" width="1" height="10" 
title="3" alt="3"/></td><td class="ctr2" id="c4">100%</td><td class="bar" 
id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td 
class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" 
id="i8">1</td><
 td class="ctr1" id="j8">0</td><td class="ctr2" 
id="k8">1</td></tr></tbody></table><div class="footer"><span 
class="right">Created with <a href="http://www.jacoco.org/jacoco";>JaCoCo</a> 
0.8.0.201801022044</span></div></body></html>
\ No newline at end of file


Reply via email to