@@ -389,6 +389,7 @@ _ci_upload_coverage_files() {
389389 --transform=" flags=r;s|\\ (/jacoco.*\\ ).exec$|\\ 1_${testtype} _${testgroup} .exec|" \
390390 --transform=" flags=r;s|\\ (/tmp/jacocoDir/.*\\ ).exec$|\\ 1_${testtype} _${testgroup} .exec|" \
391391 --exclude=" */META-INF/bundled-dependencies/*" \
392+ --exclude=" */META-INF/versions/*" \
392393 $GITHUB_WORKSPACE /target/classpath_* \
393394 $( find " $GITHUB_WORKSPACE " -path " */target/jacoco*.exec" -printf " %p\n%h/classes\n" | sort | uniq) \
394395 $( [ -d /tmp/jacocoDir ] && echo " /tmp/jacocoDir" ) \
@@ -530,11 +531,11 @@ ci_create_test_coverage_report() {
530531 local classfilesArgs=" --classfiles $( {
531532 {
532533 for classpathEntry in $( cat $completeClasspathFile | { grep -v -f $filterArtifactsFile || true ; } | sort | uniq | { grep -v -E " $excludeJarsPattern " || true ; }) ; do
533- if [[ -f $classpathEntry && -n " $( unzip -Z1C $classpathEntry ' META-INF/bundled-dependencies/*' 2> /dev/null) " ]]; then
534- # file must be processed by removing META-INF/bundled-dependencies
534+ if [[ -f $classpathEntry && -n " $( unzip -Z1C $classpathEntry ' META-INF/bundled-dependencies/*' ' META-INF/versions/* ' 2> /dev/null) " ]]; then
535+ # file must be processed by removing META-INF/bundled-dependencies and META-INF/versions
535536 local jartempfile=$( mktemp -t jarfile.XXXX --suffix=.jar)
536537 cp $classpathEntry $jartempfile
537- zip -q -d $jartempfile ' META-INF/bundled-dependencies/*' & > /dev/null
538+ zip -q -d $jartempfile ' META-INF/bundled-dependencies/*' ' META-INF/versions/* ' & > /dev/null
538539 echo $jartempfile
539540 else
540541 echo $classpathEntry
@@ -596,7 +597,7 @@ ci_create_inttest_coverage_report() {
596597 # remove jar file that causes duplicate classes issue
597598 rm /tmp/jacocoDir/pulsar_lib/org.apache.pulsar-bouncy-castle* || true
598599 # remove any bundled dependencies as part of .jar/.nar files
599- find /tmp/jacocoDir/pulsar_lib ' (' -name " *.jar" -or -name " *.nar" ' )' -exec echo " Processing {}" \; -exec zip -q -d {} ' META-INF/bundled-dependencies/*' \; | grep -E -v " Nothing to do|^$" || true
600+ find /tmp/jacocoDir/pulsar_lib ' (' -name " *.jar" -or -name " *.nar" ' )' -exec echo " Processing {}" \; -exec zip -q -d {} ' META-INF/bundled-dependencies/*' ' META-INF/versions/* ' \; | grep -E -v " Nothing to do|^$" || true
600601 fi
601602 # projects that aren't considered as production code and their own src/main/java source code shouldn't be analysed
602603 local excludeProjectsPattern=" testmocks|testclient|buildtools"
0 commit comments