JaCoCo v0.8.2 Release Notes
Release Date: 2018-08-22 // over 5 years ago-
๐ New Features
- ๐ Experimental support for Java 11 and Java 12 class files, including JEP 12 "preview features" (GitHub #719, #738, #743).
- Branches and instructions generated by javac 11 for try-with-resources statement are filtered out (GitHub #669).
- Synthetic classes are filtered out during generation of report (GitHub #668).
- Part of bytecode generated by ECJ for
switch
statements onjava.lang.String
values is filtered out during generation of report (GitHub #735, #741, #746). - Methods added by the Kotlin compiler that do not have line numbers are filtered out during generation of report. Idea and implementation by Nikolay Krasko (GitHub #689).
- Branch added by the Kotlin compiler for reading from
lateinit
property is filtered out during generation of report. Implementation by Fabian Mastenbroek (GitHub #707). - Bytecode generated by Kotlin compiler for implicit
else
ofwhen
expressions that list all cases ofenum
orsealed class
is filtered out during generation of report (GitHub #721, #729, #749). - โ Additional bytecode generated by Kotlin compiler for when expressions on
kotlin.String
values is filtered out during generation of report (GitHub #737, #746). - Classes and methods annotated with annotation whose retention policy is
runtime
orclass
and whose simple name isGenerated
are filtered out during generation of report (GitHub #731). - Maven goal report-aggregate now also considers dependencies specified using version range. Idea and implementation by Lukas Krejc (GitHub #658).
๐ Fixed Bugs
- ๐ Don't insert stackmap frames into class files with version < 1.6, this fixes regression which was introduced in version 0.6.5 (GitHub #667).
- Question mark in filter expressions now correctly matches exactly one character (GitHub #672).
- Part of bytecode that javac generates for
switch
statement onjava.lang.String
values with a small number cases is now correctly filtered out during generation of report (GitHub #730).
Non-functional Changes
- JaCoCo now depends on ASM 6.2.1 (GitHub #706, #725).
- ๐ Improved error message when already instrumented classes are used for instrumentation or analysis (GitHub #703).
- ๐ JaCoCo build now requires at least Maven 3.3.9 and JDK 8 (GitHub #711).
API Changes - โก๏ธ The XML report now has an optional attribute
sourcefilename
on theclass
element to allow unambiguously relate classes to source files. The JaCoCo DTD version has been updated to 1.1 (GitHub #702).