JaCoCo v0.8.6 Release Notes

Release Date: 2020-09-15 // over 3 years ago
  • ๐Ÿ†• New Features

    • ๐Ÿ‘ JaCoCo now officially supports Java 14.
    • ๐Ÿ‘ Experimental support for Java 15 class files (GitHub #992).
    • ๐Ÿ‘ Experimental support for Java 16 class files (GitHub #1059).
    • Methods toString, hashCode and equals generated by compiler for records are filtered out during generation of report (GitHub #990).
    • Bridge methods are filtered out during generation of report (GitHub #1010).
    • Methods generated by Kotlin compiler for non-overridden non-abstract methods of interfaces are filtered out during generation of report (GitHub #1012).
    • Branches added by the Kotlin compiler version 1.3.60 for suspending functions with tail call optimization are filtered out during generation of report (GitHub #1016).

    ๐Ÿ›  Fixed bugs

    • Compression method of zip entries is now preserved when instrumenting archives. This allows to use JaCoCo with frameworks that expect uncompressed entries (GitHub #1018).

    Non-functional Changes

    • ๐Ÿ‘Œ Support for Pack200 was removed in JDK 14. JaCoCo will now throw a detailed exception when Pack200 archives are processed with the latest JDKs (GitHub #984).
    • JaCoCo now depends on ASM 8.0.1 (GitHub #1032, #1043).

    API Changes

    • ๐Ÿšš URLStreamHandlerRuntime removed (GitHub #471).

Previous changes from v0.8.5

  • ๐Ÿ†• New Features

    • ๐Ÿ‘ JaCoCo now officially supports Java 13
    • ๐Ÿ‘ Experimental support for Java 14 class files (GitHub #897).
    • 0๏ธโƒฃ Branches added by the Kotlin compiler for open functions with default arguments are filtered out during generation of report (GitHub #887).

    ๐Ÿ›  Fixed bugs

    • 0๏ธโƒฃ synthetic constructors that contain values of default arguments in Kotlin should not be ignored (GitHub #888).
    • โšก๏ธ Instrumentation should update indexes of local variables in annotations (GitHub #894).
    • 0๏ธโƒฃ Branches added by the Kotlin compiler for functions with default arguments and containing arguments of type long or double should be filtered out during generation of report (GitHub #908).
    • synthetic methods that contain bodies of anonymous functions in Scala should not be ignored (GitHub #912).
    • To avoid failures with invalid class files report generation now checks that source references are actually files (GitHub #941).
    • NullPointerException during filtering (GitHub #942, #944).

    Non-functional Changes

    • JaCoCo now distributed under the terms and conditions of the Eclipse Public License Version 2.0 (GitHub #943).
    • Prevent startup when JaCoCo runtime cannot be initialized to avoid subsequent faults (GitHub #910).
    • JaCoCo now depends on ASM 7.2 (GitHub #947).

    API Changes

    • ๐Ÿ”ง The coverage check API and tools (Ant, Maven) now report an error, when a coverage ratio limit is configured outside the range [0,1] to avoid common configuration mistakes (GitHub #783).
    • ๐Ÿ‘ Unsupported class file versions are now consistently reported as exceptions by all methods of Analyzer and Instrumenter and thus also during report generation and offline instrumentation (GitHub #952).

    All Resolved Issues