Rewrite Gradle configuration to simplify further (#581)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
This commit is contained in:
parent
bf9892c047
commit
df0c886152
4 changed files with 97 additions and 81 deletions
|
@ -2,8 +2,6 @@
|
|||
* Copyright © 2014-2019 The Android Password Store Authors. All Rights Reserved.
|
||||
* SPDX-License-Identifier: GPL-3.0-only
|
||||
*/
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
|
||||
plugins {
|
||||
id 'kotlin-android'
|
||||
id 'kotlin-kapt'
|
||||
|
@ -68,43 +66,34 @@ android {
|
|||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'androidx.appcompat:appcompat:' + versions.appcompat
|
||||
implementation 'androidx.cardview:cardview:' + versions.cardview
|
||||
implementation 'androidx.core:core-ktx:' + versions.coreKtx
|
||||
implementation 'androidx.constraintlayout:constraintlayout:' + versions.constraintLayout
|
||||
implementation 'androidx.documentfile:documentfile:' + versions.documentfile
|
||||
implementation 'androidx.preference:preference:' + versions.preference
|
||||
implementation ('androidx.recyclerview:recyclerview:' + versions.recyclerview) {
|
||||
implementation deps.androidx.annotation
|
||||
implementation deps.androidx.appcompat
|
||||
implementation deps.androidx.biometric
|
||||
implementation deps.androidx.cardview
|
||||
implementation deps.androidx.core_ktx
|
||||
implementation deps.androidx.constraint_layout
|
||||
implementation deps.androidx.documentfile
|
||||
implementation deps.androidx.preference
|
||||
implementation (deps.androidx.recycler_view) {
|
||||
force = true
|
||||
}
|
||||
implementation 'com.google.android.material:material:' + versions.material
|
||||
implementation 'androidx.annotation:annotation:' + versions.annotation
|
||||
implementation 'androidx.biometric:biometric:' + versions.biometric
|
||||
implementation 'com.github.android-password-store:openpgp-ktx:' + versions.openpgp
|
||||
implementation('org.eclipse.jgit:org.eclipse.jgit:' + versions.jgit) {
|
||||
implementation deps.androidx.material
|
||||
implementation deps.third_party.commons_io
|
||||
implementation deps.third_party.commons_codec
|
||||
|
||||
implementation(deps.third_party.jgit) {
|
||||
exclude group: 'org.apache.httpcomponents', module: 'httpclient'
|
||||
}
|
||||
implementation 'com.jcraft:jsch:' + versions.jsch
|
||||
implementation 'commons-io:commons-io:' + versions.commons_io
|
||||
implementation 'commons-codec:commons-codec:' + versions.commons_codec
|
||||
implementation 'org.sufficientlysecure:sshauthentication-api:' + versions.sshauth
|
||||
implementation deps.third_party.jsch
|
||||
implementation deps.third_party.openpgp_ktx
|
||||
implementation deps.third_party.ssh_auth
|
||||
|
||||
// Testing-only dependencies
|
||||
androidTestImplementation 'junit:junit:4.13-rc-1'
|
||||
androidTestImplementation 'org.mockito:mockito-core:3.1.0'
|
||||
androidTestImplementation 'androidx.test:runner:1.3.0-alpha02'
|
||||
androidTestImplementation 'androidx.test:rules:1.3.0-alpha02'
|
||||
androidTestImplementation 'androidx.test.ext:junit:1.1.2-alpha02'
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0-alpha02'
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-intents:3.3.0-alpha02'
|
||||
}
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
options.compilerArgs << '-Xlint:unchecked'
|
||||
options.deprecation = true
|
||||
}
|
||||
tasks.withType(KotlinCompile) {
|
||||
kotlinOptions {
|
||||
jvmTarget = '1.8'
|
||||
}
|
||||
androidTestImplementation deps.testing.junit
|
||||
androidTestImplementation deps.testing.mockito_core
|
||||
androidTestImplementation deps.testing.androidx.runner
|
||||
androidTestImplementation deps.testing.androidx.rules
|
||||
androidTestImplementation deps.testing.androidx.junit
|
||||
androidTestImplementation deps.testing.androidx.espresso_core
|
||||
androidTestImplementation deps.testing.androidx.espresso_intents
|
||||
}
|
||||
|
|
19
build.gradle
19
build.gradle
|
@ -3,7 +3,7 @@
|
|||
* SPDX-License-Identifier: GPL-3.0-only
|
||||
*/
|
||||
buildscript {
|
||||
apply from: rootProject.file('versions.gradle')
|
||||
apply from: rootProject.file('dependencies.gradle')
|
||||
repositories {
|
||||
google()
|
||||
jcenter()
|
||||
|
@ -11,9 +11,9 @@ buildscript {
|
|||
maven { url 'https://plugins.gradle.org/m2/' }
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:' + versions.gradlePlugin
|
||||
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:' + versions.kotlin
|
||||
classpath 'com.diffplug.spotless:spotless-plugin-gradle:' + versions.spotless
|
||||
classpath deps.gradle_plugin.android
|
||||
classpath deps.gradle_plugin.kotlin
|
||||
classpath deps.gradle_plugin.spotless
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -26,7 +26,7 @@ allprojects {
|
|||
}
|
||||
|
||||
subprojects {
|
||||
apply from: rootProject.file('versions.gradle')
|
||||
apply from: rootProject.file('dependencies.gradle')
|
||||
apply from: rootProject.file('spotless.gradle')
|
||||
repositories {
|
||||
google()
|
||||
|
@ -56,6 +56,15 @@ subprojects {
|
|||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
}
|
||||
tasks.withType(JavaCompile) {
|
||||
options.compilerArgs << '-Xlint:unchecked'
|
||||
options.deprecation = true
|
||||
}
|
||||
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile) {
|
||||
kotlinOptions {
|
||||
jvmTarget = '1.8'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
apply from: rootProject.file('spotless.root.gradle')
|
||||
|
|
59
dependencies.gradle
Normal file
59
dependencies.gradle
Normal file
|
@ -0,0 +1,59 @@
|
|||
/*
|
||||
* Copyright © 2014-2019 The Android Password Store Authors. All Rights Reserved.
|
||||
* SPDX-License-Identifier: GPL-3.0-only
|
||||
*/
|
||||
ext.versions = [
|
||||
minSdk: 21,
|
||||
targetSdk: 29,
|
||||
compileSdk: 29,
|
||||
versionCode: 10303,
|
||||
versionName: '1.3.3',
|
||||
buildTools: '29.0.2'
|
||||
]
|
||||
|
||||
ext.deps = [
|
||||
gradle_plugin: [
|
||||
android: 'com.android.tools.build:gradle:3.5.2',
|
||||
kotlin: 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.60',
|
||||
spotless: 'com.diffplug.spotless:spotless-plugin-gradle:3.26.0'
|
||||
],
|
||||
|
||||
kotlin: [
|
||||
stdlib8: 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
|
||||
],
|
||||
|
||||
androidx: [
|
||||
annotation: 'androidx.annotation:annotation:1.1.0',
|
||||
appcompat: 'androidx.appcompat:appcompat:1.1.0',
|
||||
biometric: 'androidx.biometric:biometric:1.0.0',
|
||||
cardview: 'androidx.cardview:cardview:1.0.0',
|
||||
constraint_layout: 'androidx.constraintlayout:constraintlayout:2.0.0-beta3',
|
||||
core_ktx: 'androidx.core:core-ktx:1.2.0-beta02',
|
||||
documentfile: 'androidx.documentfile:documentfile:1.0.1',
|
||||
material: 'com.google.android.material:material:1.2.0-alpha01',
|
||||
preference: 'androidx.preference:preference:1.1.0',
|
||||
recycler_view: 'androidx.recyclerview:recyclerview:1.0.0'
|
||||
],
|
||||
|
||||
third_party: [
|
||||
commons_io: 'commons-io:commons-io:2.5',
|
||||
commons_codec: 'commons-codec:commons-codec:1.13',
|
||||
jsch: 'com.jcraft:jsch:0.1.55',
|
||||
jgit: 'org.eclipse.jgit:org.eclipse.jgit:3.7.1.201504261725-r',
|
||||
openpgp_ktx: 'com.github.android-password-store:openpgp-ktx:0.1.0',
|
||||
ssh_auth: 'org.sufficientlysecure:sshauthentication-api:1.0'
|
||||
],
|
||||
|
||||
testing: [
|
||||
junit: 'junit:junit:4.13-rc-1',
|
||||
koin_test: 'org.koin:koin-test:2.0.1',
|
||||
mockito_core: 'org.mockito:mockito-core:3.1.0',
|
||||
androidx: [
|
||||
runner: 'androidx.test:runner:1.3.0-alpha02',
|
||||
rules: 'androidx.test:rules:1.3.0-alpha02',
|
||||
junit: 'androidx.test.ext:junit:1.1.2-alpha02',
|
||||
espresso_core: 'androidx.test.espresso:espresso-core:3.3.0-alpha02',
|
||||
espresso_intents: 'androidx.test.espresso:espresso-intents:3.3.0-alpha02'
|
||||
]
|
||||
]
|
||||
]
|
|
@ -1,41 +0,0 @@
|
|||
/*
|
||||
* Copyright © 2014-2019 The Android Password Store Authors. All Rights Reserved.
|
||||
* SPDX-License-Identifier: GPL-3.0-only
|
||||
*/
|
||||
ext {
|
||||
versions = [
|
||||
// Project
|
||||
minSdk: 21,
|
||||
targetSdk: 29,
|
||||
compileSdk: 29,
|
||||
versionCode: 10303,
|
||||
versionName: '1.3.3',
|
||||
buildTools: '29.0.2',
|
||||
|
||||
// Plugins
|
||||
gradlePlugin: '3.5.2',
|
||||
kotlin: '1.3.60',
|
||||
spotless: '3.26.0',
|
||||
|
||||
// AndroidX
|
||||
annotation: '1.1.0',
|
||||
appcompat: '1.1.0',
|
||||
biometric: '1.0.0',
|
||||
cardview: '1.0.0',
|
||||
constraintLayout: '2.0.0-beta3',
|
||||
coreKtx: '1.2.0-beta02',
|
||||
documentfile: '1.0.1',
|
||||
fragmentKtx: '1.2.0-rc02',
|
||||
material: '1.2.0-alpha01',
|
||||
preference: '1.1.0',
|
||||
recyclerview: '1.0.0',
|
||||
|
||||
// Third party
|
||||
commons_io: '2.5',
|
||||
commons_codec: '1.13',
|
||||
jgit: '3.7.1.201504261725-r',
|
||||
jsch: '0.1.55',
|
||||
openpgp: '0.1.0',
|
||||
sshauth: '1.0'
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue