From 240ac10c00ea59a889ca397b1962525aa51d52ec Mon Sep 17 00:00:00 2001 From: troosan Date: Tue, 13 Apr 2021 00:46:40 +0200 Subject: [PATCH 1/6] Add maven parameter to control which reports to generate --- .../org/jacoco/maven/AbstractReportMojo.java | 42 +++++++++++++++++-- .../org/jacoco/maven/ReportAggregateMojo.java | 6 +-- .../src/org/jacoco/maven/ReportITMojo.java | 6 +-- .../src/org/jacoco/maven/ReportMojo.java | 6 +-- 4 files changed, 45 insertions(+), 15 deletions(-) diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java index 97f1974ec9..ce63ed8903 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java @@ -12,6 +12,7 @@ *******************************************************************************/ package org.jacoco.maven; +import java.io.File; import java.io.IOException; import java.util.List; import java.util.Locale; @@ -33,12 +34,23 @@ public abstract class AbstractReportMojo extends AbstractMojo implements MavenMultiPageReport { + static final String REPORT_XML = "XML"; + static final String REPORT_HTML = "HTML"; + static final String REPORT_CSV = "CSV"; + /** * Encoding of the generated reports. */ @Parameter(property = "project.reporting.outputEncoding", defaultValue = "UTF-8") String outputEncoding; + /** + * A list of report formats to generate. Supported formats are HTML, XML and + * CSV. Defaults to all formats if no values are given + */ + @Parameter + List formats; + /** * Name of the root node HTML report pages. * @@ -140,6 +152,8 @@ public boolean canGenerateReport() { abstract boolean canGenerateReportRegardingClassesDirectory(); + abstract File getOutputDirectory(); + public void generate( @SuppressWarnings("deprecation") final org.codehaus.doxia.sink.Sink sink, final Locale locale) throws MavenReportException { @@ -186,12 +200,34 @@ private void executeReport(final Locale locale) } } + private void addFormatters(final ReportSupport support, final Locale locale) + throws IOException { + if (formats == null || formats.isEmpty()) { + support.addAllFormatters(getOutputDirectory(), outputEncoding, + footer, locale); + } else { + getOutputDirectory().mkdirs(); + if (formats.contains(REPORT_CSV)) { + support.addCsvFormatter( + new File(getOutputDirectory(), "jacoco.csv"), + outputEncoding); + } + if (formats.contains(REPORT_XML)) { + support.addXmlFormatter( + new File(getOutputDirectory(), "jacoco.xml"), + outputEncoding); + } + if (formats.contains(REPORT_HTML)) { + support.addHtmlFormatter(getOutputDirectory(), outputEncoding, + footer, locale); + } + } + + } + abstract void loadExecutionData(final ReportSupport support) throws IOException; - abstract void addFormatters(final ReportSupport support, - final Locale locale) throws IOException; - abstract void createReport(final IReportGroupVisitor visitor, final ReportSupport support) throws IOException; diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportAggregateMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportAggregateMojo.java index 46accf4ea6..c63569f140 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/ReportAggregateMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportAggregateMojo.java @@ -123,10 +123,8 @@ private void loadExecutionData(final ReportSupport support, } @Override - void addFormatters(final ReportSupport support, final Locale locale) - throws IOException { - support.addAllFormatters(outputDirectory, outputEncoding, footer, - locale); + File getOutputDirectory() { + return outputDirectory; } @Override diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportITMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportITMojo.java index 58be27ac8a..0ca4970b99 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/ReportITMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportITMojo.java @@ -67,10 +67,8 @@ void loadExecutionData(final ReportSupport support) throws IOException { } @Override - void addFormatters(final ReportSupport support, final Locale locale) - throws IOException { - support.addAllFormatters(outputDirectory, outputEncoding, footer, - locale); + File getOutputDirectory() { + return outputDirectory; } @Override diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportMojo.java index a5e6cba2cc..522fec3f44 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/ReportMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportMojo.java @@ -62,10 +62,8 @@ void loadExecutionData(final ReportSupport support) throws IOException { } @Override - void addFormatters(final ReportSupport support, final Locale locale) - throws IOException { - support.addAllFormatters(outputDirectory, outputEncoding, footer, - locale); + File getOutputDirectory() { + return outputDirectory; } @Override From f632c2177ab4fccbef8ab50998e301e2650fe672 Mon Sep 17 00:00:00 2001 From: "Marc R. Hoffmann" Date: Fri, 16 Apr 2021 10:46:06 +0200 Subject: [PATCH 2/6] WIP: Add tests --- .../it/it-report-select-formats/pom.xml | 52 +++++++++++++++++++ .../src/main/java/Example.java | 15 ++++++ .../src/test/java/ExampleTest.java | 22 ++++++++ .../it/it-report-select-formats/verify.bsh | 28 ++++++++++ 4 files changed, 117 insertions(+) create mode 100644 jacoco-maven-plugin.test/it/it-report-select-formats/pom.xml create mode 100644 jacoco-maven-plugin.test/it/it-report-select-formats/src/main/java/Example.java create mode 100644 jacoco-maven-plugin.test/it/it-report-select-formats/src/test/java/ExampleTest.java create mode 100644 jacoco-maven-plugin.test/it/it-report-select-formats/verify.bsh diff --git a/jacoco-maven-plugin.test/it/it-report-select-formats/pom.xml b/jacoco-maven-plugin.test/it/it-report-select-formats/pom.xml new file mode 100644 index 0000000000..a3520a4575 --- /dev/null +++ b/jacoco-maven-plugin.test/it/it-report-select-formats/pom.xml @@ -0,0 +1,52 @@ + + + + 4.0.0 + + + jacoco + setup-parent + 1.0-SNAPSHOT + + + it-report-select-formats + + + + + @project.groupId@ + jacoco-maven-plugin + + + + prepare-agent + + + + report + + report + + + + XML + CSV + + + + + + + + diff --git a/jacoco-maven-plugin.test/it/it-report-select-formats/src/main/java/Example.java b/jacoco-maven-plugin.test/it/it-report-select-formats/src/main/java/Example.java new file mode 100644 index 0000000000..b603539cae --- /dev/null +++ b/jacoco-maven-plugin.test/it/it-report-select-formats/src/main/java/Example.java @@ -0,0 +1,15 @@ +/******************************************************************************* + * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors + * This program and the accompanying materials are made available under + * the terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Marc R. Hoffmann - initial API and implementation + * + *******************************************************************************/ +public class Example { + +} diff --git a/jacoco-maven-plugin.test/it/it-report-select-formats/src/test/java/ExampleTest.java b/jacoco-maven-plugin.test/it/it-report-select-formats/src/test/java/ExampleTest.java new file mode 100644 index 0000000000..deb8fde721 --- /dev/null +++ b/jacoco-maven-plugin.test/it/it-report-select-formats/src/test/java/ExampleTest.java @@ -0,0 +1,22 @@ +/******************************************************************************* + * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors + * This program and the accompanying materials are made available under + * the terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Marc R. Hoffmann - initial API and implementation + * + *******************************************************************************/ +import org.junit.Test; + +public class ExampleTest { + + @Test + public void test() { + new Example(); + } + +} diff --git a/jacoco-maven-plugin.test/it/it-report-select-formats/verify.bsh b/jacoco-maven-plugin.test/it/it-report-select-formats/verify.bsh new file mode 100644 index 0000000000..9b4f559db7 --- /dev/null +++ b/jacoco-maven-plugin.test/it/it-report-select-formats/verify.bsh @@ -0,0 +1,28 @@ +/******************************************************************************* + * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors + * This program and the accompanying materials are made available under + * the terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Marc R. Hoffmann - initial API and implementation + * + *******************************************************************************/ +import java.io.*; + +File htmlReportFile = new File( basedir, "target/site/jacoco/index.html" ); +if ( htmlReportFile.isFile() ) { + throw new RuntimeException( "Unexpected HTML report was created" ); +} + +File xmlReportFile = new File( basedir, "target/site/jacoco/jacoco.xml" ); +if ( !xmlReportFile.isFile() ) { + throw new RuntimeException( "XML report was not created" ); +} + +File csvReportFile = new File( basedir, "target/site/jacoco/jacoco.csv" ); +if ( !csvReportFile.isFile() ) { + throw new RuntimeException( "CSV report was not created" ); +} From 4d65fc9160a5eaf195723ca51127adb759d2e55c Mon Sep 17 00:00:00 2001 From: "Marc R. Hoffmann" Date: Fri, 16 Apr 2021 10:56:18 +0200 Subject: [PATCH 3/6] WIP: Use Enum type instead of strings. --- .../org/jacoco/maven/AbstractReportMojo.java | 12 +++---- .../src/org/jacoco/maven/ReportFormat.java | 35 +++++++++++++++++++ 2 files changed, 39 insertions(+), 8 deletions(-) create mode 100644 jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java index ce63ed8903..82e9e3383c 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java @@ -34,10 +34,6 @@ public abstract class AbstractReportMojo extends AbstractMojo implements MavenMultiPageReport { - static final String REPORT_XML = "XML"; - static final String REPORT_HTML = "HTML"; - static final String REPORT_CSV = "CSV"; - /** * Encoding of the generated reports. */ @@ -49,7 +45,7 @@ public abstract class AbstractReportMojo extends AbstractMojo * CSV. Defaults to all formats if no values are given */ @Parameter - List formats; + List formats; /** * Name of the root node HTML report pages. @@ -207,17 +203,17 @@ private void addFormatters(final ReportSupport support, final Locale locale) footer, locale); } else { getOutputDirectory().mkdirs(); - if (formats.contains(REPORT_CSV)) { + if (formats.contains(ReportFormat.CSV)) { support.addCsvFormatter( new File(getOutputDirectory(), "jacoco.csv"), outputEncoding); } - if (formats.contains(REPORT_XML)) { + if (formats.contains(ReportFormat.XML)) { support.addXmlFormatter( new File(getOutputDirectory(), "jacoco.xml"), outputEncoding); } - if (formats.contains(REPORT_HTML)) { + if (formats.contains(ReportFormat.HTML)) { support.addHtmlFormatter(getOutputDirectory(), outputEncoding, footer, locale); } diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java new file mode 100644 index 0000000000..538de54dcb --- /dev/null +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java @@ -0,0 +1,35 @@ +/******************************************************************************* + * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors + * This program and the accompanying materials are made available under + * the terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * Marc R. Hoffmann - initial API and implementation + * + *******************************************************************************/ +package org.jacoco.maven; + +/** + * Configurable output formats for the report goals. + */ +public enum ReportFormat { + + /** + * Multi-page html report. + */ + HTML, + + /** + * Single-file XML report. + */ + XML, + + /** + * Single-file CSV report. + */ + CSV + +} From 44e97de5f814c38954b4b24c4208cf3afa847474 Mon Sep 17 00:00:00 2001 From: "Marc R. Hoffmann" Date: Fri, 16 Apr 2021 17:18:26 +0200 Subject: [PATCH 4/6] WIP: Use Maven default mechanism --- .../org/jacoco/maven/AbstractReportMojo.java | 38 +++++++++---------- .../src/org/jacoco/maven/ReportSupport.java | 8 ---- 2 files changed, 17 insertions(+), 29 deletions(-) diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java index 82e9e3383c..a7b9b825b4 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java @@ -42,9 +42,11 @@ public abstract class AbstractReportMojo extends AbstractMojo /** * A list of report formats to generate. Supported formats are HTML, XML and - * CSV. Defaults to all formats if no values are given + * CSV. Defaults to all formats if no values are given. + * + * @since 0.8.7 */ - @Parameter + @Parameter(defaultValue = "HTML,XML,CSV") List formats; /** @@ -198,27 +200,21 @@ private void executeReport(final Locale locale) private void addFormatters(final ReportSupport support, final Locale locale) throws IOException { - if (formats == null || formats.isEmpty()) { - support.addAllFormatters(getOutputDirectory(), outputEncoding, + getOutputDirectory().mkdirs(); + if (formats.contains(ReportFormat.CSV)) { + support.addCsvFormatter( + new File(getOutputDirectory(), "jacoco.csv"), + outputEncoding); + } + if (formats.contains(ReportFormat.XML)) { + support.addXmlFormatter( + new File(getOutputDirectory(), "jacoco.xml"), + outputEncoding); + } + if (formats.contains(ReportFormat.HTML)) { + support.addHtmlFormatter(getOutputDirectory(), outputEncoding, footer, locale); - } else { - getOutputDirectory().mkdirs(); - if (formats.contains(ReportFormat.CSV)) { - support.addCsvFormatter( - new File(getOutputDirectory(), "jacoco.csv"), - outputEncoding); - } - if (formats.contains(ReportFormat.XML)) { - support.addXmlFormatter( - new File(getOutputDirectory(), "jacoco.xml"), - outputEncoding); - } - if (formats.contains(ReportFormat.HTML)) { - support.addHtmlFormatter(getOutputDirectory(), outputEncoding, - footer, locale); - } } - } abstract void loadExecutionData(final ReportSupport support) diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java index f110090296..c4baab012e 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java @@ -115,14 +115,6 @@ public void addHtmlFormatter(final File targetdir, final String encoding, .createVisitor(new FileMultiReportOutput(targetdir))); } - public void addAllFormatters(final File targetdir, final String encoding, - final String footer, final Locale locale) throws IOException { - targetdir.mkdirs(); - addXmlFormatter(new File(targetdir, "jacoco.xml"), encoding); - addCsvFormatter(new File(targetdir, "jacoco.csv"), encoding); - addHtmlFormatter(targetdir, encoding, footer, locale); - } - public void addRulesChecker(final List rules, final IViolationsOutput output) { final RulesChecker checker = new RulesChecker(); From f2271c9f4cc9d6b1ab0dfd2d4870447f93486ce6 Mon Sep 17 00:00:00 2001 From: "Marc R. Hoffmann" Date: Fri, 16 Apr 2021 17:49:44 +0200 Subject: [PATCH 5/6] WIP: Use enum specialization instead of if-cascade --- .../org/jacoco/maven/AbstractReportMojo.java | 16 ++---- .../src/org/jacoco/maven/ReportFormat.java | 51 +++++++++++++++++-- .../src/org/jacoco/maven/ReportSupport.java | 32 +----------- 3 files changed, 53 insertions(+), 46 deletions(-) diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java index a7b9b825b4..097ecb100f 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/AbstractReportMojo.java @@ -8,6 +8,7 @@ * * Contributors: * Evgeny Mandrikov - initial API and implementation + * troosan - add support for format selection * *******************************************************************************/ package org.jacoco.maven; @@ -201,19 +202,8 @@ private void executeReport(final Locale locale) private void addFormatters(final ReportSupport support, final Locale locale) throws IOException { getOutputDirectory().mkdirs(); - if (formats.contains(ReportFormat.CSV)) { - support.addCsvFormatter( - new File(getOutputDirectory(), "jacoco.csv"), - outputEncoding); - } - if (formats.contains(ReportFormat.XML)) { - support.addXmlFormatter( - new File(getOutputDirectory(), "jacoco.xml"), - outputEncoding); - } - if (formats.contains(ReportFormat.HTML)) { - support.addHtmlFormatter(getOutputDirectory(), outputEncoding, - footer, locale); + for (final ReportFormat f : formats) { + support.addVisitor(f.createVisitor(this, locale)); } } diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java index 538de54dcb..9406996f99 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportFormat.java @@ -12,6 +12,17 @@ *******************************************************************************/ package org.jacoco.maven; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.Locale; + +import org.jacoco.report.FileMultiReportOutput; +import org.jacoco.report.IReportVisitor; +import org.jacoco.report.csv.CSVFormatter; +import org.jacoco.report.html.HTMLFormatter; +import org.jacoco.report.xml.XMLFormatter; + /** * Configurable output formats for the report goals. */ @@ -20,16 +31,50 @@ public enum ReportFormat { /** * Multi-page html report. */ - HTML, + HTML() { + @Override + IReportVisitor createVisitor(final AbstractReportMojo mojo, + final Locale locale) throws IOException { + final HTMLFormatter htmlFormatter = new HTMLFormatter(); + htmlFormatter.setOutputEncoding(mojo.outputEncoding); + htmlFormatter.setLocale(locale); + if (mojo.footer != null) { + htmlFormatter.setFooterText(mojo.footer); + } + return htmlFormatter.createVisitor( + new FileMultiReportOutput(mojo.getOutputDirectory())); + } + }, /** * Single-file XML report. */ - XML, + XML() { + @Override + IReportVisitor createVisitor(final AbstractReportMojo mojo, + final Locale locale) throws IOException { + final XMLFormatter xml = new XMLFormatter(); + xml.setOutputEncoding(mojo.outputEncoding); + return xml.createVisitor(new FileOutputStream( + new File(mojo.getOutputDirectory(), "jacoco.xml"))); + } + }, /** * Single-file CSV report. */ - CSV + CSV() { + @Override + IReportVisitor createVisitor(final AbstractReportMojo mojo, + final Locale locale) throws IOException { + final CSVFormatter csv = new CSVFormatter(); + csv.setOutputEncoding(mojo.outputEncoding); + return csv.createVisitor(new FileOutputStream( + new File(mojo.getOutputDirectory(), "jacoco.csv"))); + } + }; + + abstract IReportVisitor createVisitor(AbstractReportMojo mojo, + final Locale locale) throws IOException; } diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java b/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java index c4baab012e..c484309ef1 100644 --- a/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java +++ b/jacoco-maven-plugin/src/org/jacoco/maven/ReportSupport.java @@ -17,14 +17,12 @@ import java.io.File; import java.io.FileInputStream; -import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; import java.util.ArrayList; import java.util.Collection; import java.util.List; -import java.util.Locale; import org.apache.maven.plugin.logging.Log; import org.apache.maven.project.MavenProject; @@ -33,7 +31,6 @@ import org.jacoco.core.analysis.IBundleCoverage; import org.jacoco.core.analysis.IClassCoverage; import org.jacoco.core.tools.ExecFileLoader; -import org.jacoco.report.FileMultiReportOutput; import org.jacoco.report.IReportGroupVisitor; import org.jacoco.report.IReportVisitor; import org.jacoco.report.ISourceFileLocator; @@ -41,9 +38,6 @@ import org.jacoco.report.check.IViolationsOutput; import org.jacoco.report.check.Rule; import org.jacoco.report.check.RulesChecker; -import org.jacoco.report.csv.CSVFormatter; -import org.jacoco.report.html.HTMLFormatter; -import org.jacoco.report.xml.XMLFormatter; /** * Encapsulates the tasks to create reports for Maven projects. Instances are @@ -89,30 +83,8 @@ public void loadExecutionData(final File execFile) throws IOException { loader.load(execFile); } - public void addXmlFormatter(final File targetfile, final String encoding) - throws IOException { - final XMLFormatter xml = new XMLFormatter(); - xml.setOutputEncoding(encoding); - formatters.add(xml.createVisitor(new FileOutputStream(targetfile))); - } - - public void addCsvFormatter(final File targetfile, final String encoding) - throws IOException { - final CSVFormatter csv = new CSVFormatter(); - csv.setOutputEncoding(encoding); - formatters.add(csv.createVisitor(new FileOutputStream(targetfile))); - } - - public void addHtmlFormatter(final File targetdir, final String encoding, - final String footer, final Locale locale) throws IOException { - final HTMLFormatter htmlFormatter = new HTMLFormatter(); - htmlFormatter.setOutputEncoding(encoding); - htmlFormatter.setLocale(locale); - if (footer != null) { - htmlFormatter.setFooterText(footer); - } - formatters.add(htmlFormatter - .createVisitor(new FileMultiReportOutput(targetdir))); + public void addVisitor(final IReportVisitor visitor) { + formatters.add(visitor); } public void addRulesChecker(final List rules, From 8b1a2fa9c4981d4e740fa21b237c344ea7bd6cb6 Mon Sep 17 00:00:00 2001 From: "Marc R. Hoffmann" Date: Fri, 16 Apr 2021 18:03:31 +0200 Subject: [PATCH 6/6] WIP: Adjust change log --- org.jacoco.doc/docroot/doc/changes.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/org.jacoco.doc/docroot/doc/changes.html b/org.jacoco.doc/docroot/doc/changes.html index d0cdea7ce1..0e22c119dd 100644 --- a/org.jacoco.doc/docroot/doc/changes.html +++ b/org.jacoco.doc/docroot/doc/changes.html @@ -27,6 +27,9 @@

New Features

#1097).
  • Experimental support for Java 17 class files (GitHub #1132).
  • +
  • New formats parameter for Maven report goals to specify the + generated report formats. Contributed by troosan. + (GitHub #1175).
  • Branch added by the Kotlin compiler version 1.4.0 and above for "unsafe" cast operator is filtered out during generation of report (GitHub #1143).