| import org.gradle.util.VersionNumber |
| |
| /* |
| * Copyright (C) 2017. Uber Technologies |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| // The oldest version of Error Prone that we support running on |
| def oldestErrorProneApi = "2.4.0" |
| |
| if (project.hasProperty("epApiVersion")) { |
| def epApiVNum = VersionNumber.parse(epApiVersion) |
| if (epApiVNum.equals(VersionNumber.UNKNOWN)) { |
| throw new IllegalArgumentException("Invalid Error Prone API version " + epApiVersion) |
| } |
| if (epApiVNum.compareTo(VersionNumber.parse(oldestErrorProneApi)) < 0) { |
| throw new IllegalArgumentException( |
| "Error Prone API version " + epApiVersion + " is too old; " |
| + oldestErrorProneApi + " is the oldest supported version") |
| } |
| } |
| def versions = [ |
| asm : "7.1", |
| checkerFramework : "3.21.1", |
| // The version of Error Prone used to check NullAway's code |
| errorProne : "2.10.0", |
| // The version of Error Prone that NullAway is compiled and tested against |
| errorProneApi : project.hasProperty("epApiVersion") ? epApiVersion : oldestErrorProneApi, |
| support : "27.1.1", |
| wala : "1.5.4", |
| commonscli : "1.4", |
| autoValue : "1.9", |
| autoService : "1.0.1", |
| ] |
| |
| def apt = [ |
| autoValue : "com.google.auto.value:auto-value:${versions.autoValue}", |
| autoValueAnnot : "com.google.auto.value:auto-value-annotations:${versions.autoValue}", |
| autoService : "com.google.auto.service:auto-service:${versions.autoService}", |
| autoServiceAnnot : "com.google.auto.service:auto-service-annotations:${versions.autoService}", |
| jakartaInject : "jakarta.inject:jakarta.inject-api:2.0.0", |
| javaxInject : "javax.inject:javax.inject:1", |
| ] |
| |
| def build = [ |
| asm : "org.ow2.asm:asm:${versions.asm}", |
| asmTree : "org.ow2.asm:asm-tree:${versions.asm}", |
| errorProneCheckApi : "com.google.errorprone:error_prone_check_api:${versions.errorProneApi}", |
| errorProneCore : "com.google.errorprone:error_prone_core:${versions.errorProne}", |
| errorProneCoreForApi : "com.google.errorprone:error_prone_core:${versions.errorProneApi}", |
| errorProneJavac : "com.google.errorprone:javac:9+181-r4173-1", |
| errorProneTestHelpers : "com.google.errorprone:error_prone_test_helpers:${versions.errorProneApi}", |
| checkerDataflow : "org.checkerframework:dataflow-nullaway:${versions.checkerFramework}", |
| guava : "com.google.guava:guava:24.1.1-jre", |
| javaxValidation : "javax.validation:validation-api:2.0.1.Final", |
| jsr305Annotations : "com.google.code.findbugs:jsr305:3.0.2", |
| commonsIO : "commons-io:commons-io:2.4", |
| wala : ["com.ibm.wala:com.ibm.wala.util:${versions.wala}", |
| "com.ibm.wala:com.ibm.wala.shrike:${versions.wala}", |
| "com.ibm.wala:com.ibm.wala.core:${versions.wala}"], |
| commonscli : "commons-cli:commons-cli:${versions.commonscli}", |
| |
| // android stuff |
| buildToolsVersion: "30.0.3", |
| compileSdkVersion: 30, |
| ci: "true" == System.getenv("CI"), |
| minSdkVersion: 16, |
| targetSdkVersion: 30, |
| |
| ] |
| |
| def support = [ |
| appcompat : "com.android.support:appcompat-v7:${versions.support}" |
| ] |
| |
| def test = [ |
| junit4 : "junit:junit:4.12", |
| junit5Jupiter : ["org.junit.jupiter:junit-jupiter-api:5.0.2","org.apiguardian:apiguardian-api:1.0.0"], |
| jetbrainsAnnotations : "org.jetbrains:annotations:13.0", |
| inferAnnotations : "com.facebook.infer.annotation:infer-annotation:0.11.0", |
| cfQual : "org.checkerframework:checker-qual:${versions.checkerFramework}", |
| // 2.5.5 is the last release to contain this artifact |
| cfCompatQual : "org.checkerframework:checker-compat-qual:2.5.5", |
| rxjava2 : "io.reactivex.rxjava2:rxjava:2.1.2", |
| commonsLang3 : "org.apache.commons:commons-lang3:3.8.1", |
| commonsLang : "commons-lang:commons-lang:2.6", |
| lombok : "org.projectlombok:lombok:1.18.12", |
| springBeans : "org.springframework:spring-beans:5.3.7", |
| springContext : "org.springframework:spring-context:5.3.7", |
| grpcCore : "io.grpc:grpc-core:1.15.1", // Should upgrade, but this matches our guava version |
| ] |
| |
| ext.deps = [ |
| "apt": apt, |
| "build": build, |
| "support": support, |
| "test": test, |
| "versions": versions |
| ] |