All Projects → uber-archive → Infer Plugin

uber-archive / Infer Plugin

Licence: other
Gradle plugin that allows easy integration with the infer static analyzer.

Programming Languages

groovy
2714 projects

Infer Gradle Plugin

Build Status

This Gradle plug-in creates tasks to run Infer on Android and Java projects.

Deprecated

This plug-in isn't used or maintained by the original authors anymore. For null checking, we recommend migrating to NullAway. If you're still using Infer for additional checks, we recomend investigating other approaches as this plug-in isn't actively being worked on.

Integration

To use this plug-in, you must have Infer installed.

Add the plug-in dependency and apply it in your project's build.gradle:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        ...
        classpath "com.uber:infer-plugin:0.7.4"
    }
}

Applying the Plugin

Android

apply plugin: 'com.android.application'
apply plugin: 'com.uber.infer.android'

Java

apply plugin: 'java'
apply plugin: 'com.uber.infer.java'

Including and Excluding

In the build.gradle of the project that applies the plugin:

inferPlugin {
    infer {
        include = project.files("<PATH_TO_INCLUDE>")
        exclude = project.files("<PATH_TO_EXCLUDE>")
    }
    eradicate {
        include = project.files("<PATH_TO_INCLUDE>")
        exclude = project.files("<PATH_TO_EXCLUDE>")
    }
}

Tasks

  • infer - runs Infer's standard analyzer.
  • eradicate - runs Infer's Eradicate analyzer.

For Android projects, the plug-in will create a task for each build variant in your application or library (for example, debug and release).

  • inferVaraint - runs Infer's standard analyzer.
  • eradicateVariant - runs Infer's Eradicate analyzer.

For a specific list of tasks available on your project, run Gradle's tasks command.

Contributors

We'd love for you to contribute to our open source projects. Before we can accept your contributions, we kindly ask you to sign our Uber Contributor License Agreement.

  • If you find a bug, open an issue or submit a fix via a pull request.
  • If you have a feature request, open an issue or submit an implementation via a pull request
  • If you want to contribute, submit a pull request.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].