# Copyright (C) 2021 Square, Inc. # # 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 # # https://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. [versions] # We would like to use Kotlin 1.4 language features but keep Kotlin 1.3 library APIs # The benefit is that depending clients do not have to upgrade to Kotlin 1.4 kotlinCompiler = "1.4.21" kotlinLib = "1.3.72" androidXTest = "1.1.0" androidXJunit = "1.1.3" workManager = "2.7.0" [libraries] gradlePlugin-android = { module = "com.android.tools.build:gradle", version = "4.2.2" } gradlePlugin-kotlin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlinCompiler" } gradlePlugin-dokka = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version = "1.6.20" } gradlePlugin-binaryCompatibility = { module = "org.jetbrains.kotlinx:binary-compatibility-validator", version = "0.8.0" } gradlePlugin-mavenPublish = { module = "com.vanniktech:gradle-maven-publish-plugin", version = "0.18.0" } gradlePlugin-detekt = { module = "io.gitlab.arturbosch.detekt:detekt-gradle-plugin", version = "1.6.0" } gradlePlugin-keeper = { module = "com.slack.keeper:keeper", version = "0.7.0" } kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlinLib" } kotlin-reflect = { module = "org.jetbrains.kotlin:kotlin-reflect", version.ref = "kotlinLib" } # We don't need the latest version of AndroidX (there are no bugs that impact what LeakCanary # relies on), we're sticking a bit older because most apps will be using a more recent version # and they'll automatically resolve to higher version without having to necessarily resort to a # resolution strategy. androidX-fragment = { module = "androidx.fragment:fragment", version = "1.0.0" } # Exposed transitively, avoid increasing androidX-startup = { module = "androidx.startup:startup-runtime", version = "1.0.0" } androidX-test-core = { module = "androidx.test:core", version = "1.4.0" } androidX-test-rules = { module = "androidx.test:rules", version.ref = "androidXTest" } # Exposed transitively, avoid increasing androidX-test-runner = { module = "androidx.test:runner", version = "1.4.0" } androidX-test-orchestrator = { module = "androidx.test:orchestrator", version = "1.4.1" } androidX-test-espresso = { module = "androidx.test.espresso:espresso-core", version = "3.4.0" } androidX-test-junit = { module = "androidx.test.ext:junit", version.ref = "androidXJunit" } androidX-test-junitKtx = { module = "androidx.test.ext:junit-ktx", version.ref = "androidXJunit" } androidX-work-runtime = { module = "androidx.work:work-runtime", version.ref = "workManager" } androidX-work-multiprocess = { module = "androidx.work:work-multiprocess", version.ref = "workManager" } androidSupport = { module = "com.android.support:support-v4", version = "28.0.0" } assertjCore = { module = "org.assertj:assertj-core", version = "3.9.1" } clikt = { module = "com.github.ajalt:clikt", version = "2.3.0" } neo4j = { module = "org.neo4j:neo4j", version = "4.4.6" } curtains = { module = "com.squareup.curtains:curtains", version = "1.2.4" } jline = { module = "jline:jline", version = "2.14.6" } junit = { module = "junit:junit", version = "4.12" } kotlinStatistics = { module = "org.nield:kotlin-statistics", version = "1.2.1" } mockito = { module = "org.mockito:mockito-core", version = "3.5.10" } mockitoKotlin = { module = "com.nhaarman.mockitokotlin2:mockito-kotlin", version = "2.2.0" } robolectric = { module = "org.robolectric:robolectric", version = "4.0-alpha-3" } okio2 = { module = "com.squareup.okio:okio", version = "2.2.2" } okio1 = { module = "com.squareup.okio:okio", version = "1.14.0" }