infer v0.16.0 Release Notes

Release Date: 2019-04-23 // about 5 years ago
  • ๐Ÿš€ This is a binary release of Infer for Linux and MacOS. To use it follow these instructions.

    ๐Ÿš€ It's been a long time since the previous release, here are some new features and improvements you can find in this new release:

    Backend analyses:

    • 0๏ธโƒฃ A brand new analysis to compute the runtime cost of methods and functions: passing --cost (off by default) to Infer will output a costs-report.json file describing, among others, the computational complexity of each function in the code using the big-O notation, eg O(1), O(list.length), ...
    • 0๏ธโƒฃ The deadlock detection analysis has been ported to C++ and Objective-C and mainly focuses on self-deadlocks (taking a mutex twice). Activate with --starvation (off by default).
    • ๐Ÿ”’ The data race detector RacerD has been ported to Objective-C and detects races on fields protected by a C++ mutex. It reports "Thread Safety Violation" and "GuardedBy Violation" errors on Java and "Lock Consistency Violation" on C++ and Objective-C. Activate with --racerd (on by default).
    • A progress bar is displayed while the analysis is running
    • Countless improvements and tweaks, in particular in RacerD and in analyses for C++.

    Frontends:

    • Infer now ships with clang version 7.0.1
    • ๐Ÿ‘Œ Support for Java up to version 11

    The sha256 checksums of the tarballs are:

    $ shasum -a 256 infer-*-v0.16.0.tar.xz
    435c415a9a22f41e7f2074b542b035b972a2a8c237d5490285d763bf333a817b infer-linux64-v0.16.0.tar.xz
    471f06c72754a45d73433623e8092bf9ea1315884b8ebff24d3f79f9a8b0380a infer-osx-v0.16.0.tar.xz
    

    ๐Ÿš€ The facebook-clang-plugins version used for this release is facebook/facebook-clang-plugins@36266f6.