build: Upgrade all dependencies (#803)

* build: upgrade all dependencies

We've accumulated a fat backlog here that's gonna need some heavy testing

* build: adjust for WhatTheStack upgrade

This is now automatically initialized

* build: downgrade security-crypto

* build: upgrade to Gradle 6.4

* idea: sync from AS 4.1.x

* build: bump AGP to 4.0.0

* build: disable Jetifier

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com>
This commit is contained in:
Harsh Shandilya 2020-05-31 13:12:15 +05:30 committed by GitHub
parent 81c4960dd6
commit 523f2afc53
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 67 additions and 33 deletions

30
.idea/jarRepositories.xml Normal file
View file

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven" />
<option name="name" value="maven" />
<option name="url" value="https://jitpack.io" />
</remote-repository>
<remote-repository>
<option name="id" value="Google" />
<option name="name" value="Google" />
<option name="url" value="https://dl.google.com/dl/android/maven2/" />
</remote-repository>
</component>
</project>

View file

@ -22,7 +22,7 @@ android {
} }
} }
viewBinding.enabled = true buildFeatures.viewBinding = true
defaultConfig { defaultConfig {
applicationId 'dev.msfjarvis.aps' applicationId 'dev.msfjarvis.aps'
@ -107,12 +107,13 @@ dependencies {
implementation deps.third_party.ssh_auth implementation deps.third_party.ssh_auth
implementation deps.third_party.timber implementation deps.third_party.timber
implementation deps.third_party.timberkt implementation deps.third_party.timberkt
implementation deps.third_party.whatthestack
if (isSnapshot()) { if (isSnapshot()) {
implementation deps.third_party.leakcanary implementation deps.third_party.leakcanary
implementation deps.third_party.whatthestack
} else { } else {
debugImplementation deps.third_party.leakcanary debugImplementation deps.third_party.leakcanary
debugImplementation deps.third_party.whatthestack
} }
// Testing-only dependencies // Testing-only dependencies

View file

@ -13,7 +13,6 @@ import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_YES
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import com.github.ajalt.timberkt.Timber.DebugTree import com.github.ajalt.timberkt.Timber.DebugTree
import com.github.ajalt.timberkt.Timber.plant import com.github.ajalt.timberkt.Timber.plant
import com.haroldadmin.whatthestack.WhatTheStack
import org.bouncycastle.jce.provider.BouncyCastleProvider import org.bouncycastle.jce.provider.BouncyCastleProvider
import java.security.Security import java.security.Security
@ -27,7 +26,6 @@ class Application : android.app.Application(), SharedPreferences.OnSharedPrefere
prefs = PreferenceManager.getDefaultSharedPreferences(this) prefs = PreferenceManager.getDefaultSharedPreferences(this)
if (BuildConfig.ENABLE_DEBUG_FEATURES || prefs?.getBoolean("enable_debug_logging", false) == true) { if (BuildConfig.ENABLE_DEBUG_FEATURES || prefs?.getBoolean("enable_debug_logging", false) == true) {
plant(DebugTree()) plant(DebugTree())
WhatTheStack(this).init()
} }
prefs?.registerOnSharedPreferenceChangeListener(this) prefs?.registerOnSharedPreferenceChangeListener(this)
setNightMode() setNightMode()

View file

@ -63,6 +63,7 @@ subprojects {
} }
tasks.wrapper { tasks.wrapper {
gradleVersion = "6.4"
distributionType = Wrapper.DistributionType.ALL distributionType = Wrapper.DistributionType.ALL
distributionSha256Sum = "0f316a67b971b7b571dac7215dcf2591a30994b3450e0629925ffcfe2c68cc5c" distributionSha256Sum = "d08f7e24d061910382c2fda9915e6ed42dd1480ae2e99211f92c70190cb697e0"
} }

View file

@ -11,64 +11,65 @@ ext.versions = [
ext.deps = [ ext.deps = [
gradle_plugin: [ gradle_plugin: [
android: 'com.android.tools.build:gradle:3.6.3', android: 'com.android.tools.build:gradle:4.0.0',
kotlin: 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.72', kotlin: 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.72',
], ],
kotlin: [ kotlin: [
coroutines: [ coroutines: [
android: 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.5', android: 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.7',
core: 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.5', core: 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.7',
], ],
stdlib8: 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.71' stdlib8: 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.72'
], ],
androidx: [ androidx: [
annotation: 'androidx.annotation:annotation:1.1.0', annotation: 'androidx.annotation:annotation:1.2.0-alpha01',
activity_ktx: 'androidx.activity:activity-ktx:1.2.0-alpha03', activity_ktx: 'androidx.activity:activity-ktx:1.2.0-alpha05',
appcompat: 'androidx.appcompat:appcompat:1.2.0-beta01', appcompat: 'androidx.appcompat:appcompat:1.3.0-alpha01',
biometric: 'androidx.biometric:biometric:1.0.1', biometric: 'androidx.biometric:biometric:1.0.1',
constraint_layout: 'androidx.constraintlayout:constraintlayout:2.0.0-beta4', constraint_layout: 'androidx.constraintlayout:constraintlayout:2.0.0-beta6',
core_ktx: 'androidx.core:core-ktx:1.3.0-rc01', core_ktx: 'androidx.core:core-ktx:1.4.0-alpha01',
documentfile: 'androidx.documentfile:documentfile:1.0.1', documentfile: 'androidx.documentfile:documentfile:1.0.1',
fragment_ktx: 'androidx.fragment:fragment-ktx:1.3.0-alpha03', fragment_ktx: 'androidx.fragment:fragment-ktx:1.3.0-alpha05',
lifecycle_common: 'androidx.lifecycle:lifecycle-common-java8:2.3.0-alpha01', lifecycle_common: 'androidx.lifecycle:lifecycle-common-java8:2.3.0-alpha03',
lifecycle_livedata_ktx: 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.0-alpha01', lifecycle_livedata_ktx: 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.0-alpha03',
lifecycle_viewmodel_ktx: 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0-alpha01', lifecycle_viewmodel_ktx: 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0-alpha03',
local_broadcast_manager: 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0-alpha01', local_broadcast_manager: 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0-alpha01',
material: 'com.google.android.material:material:1.2.0-alpha06', material: 'com.google.android.material:material:1.2.0-alpha06',
preference: 'androidx.preference:preference:1.1.1', preference: 'androidx.preference:preference:1.1.1',
recycler_view: 'androidx.recyclerview:recyclerview:1.2.0-alpha02', recycler_view: 'androidx.recyclerview:recyclerview:1.2.0-alpha03',
recycler_view_selection: 'androidx.recyclerview:recyclerview-selection:1.1.0-rc01', recycler_view_selection: 'androidx.recyclerview:recyclerview-selection:1.1.0-rc01',
// Frozen at 1.0.0-beta01 for the foreseeable future due to Tink and R8 interacting badly
security: 'androidx.security:security-crypto:1.0.0-beta01', security: 'androidx.security:security-crypto:1.0.0-beta01',
swiperefreshlayout: 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-rc01' swiperefreshlayout: 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-rc01'
], ],
third_party: [ third_party: [
bouncycastle: 'org.bouncycastle:bcprov-jdk15on:1.65',
commons_io: 'commons-io:commons-io:2.5', commons_io: 'commons-io:commons-io:2.5',
commons_codec: 'commons-codec:commons-codec:1.13', commons_codec: 'commons-codec:commons-codec:1.13',
fastscroll: 'me.zhanghai.android.fastscroll:library:1.1.3', fastscroll: 'me.zhanghai.android.fastscroll:library:1.1.4',
jsch: 'com.jcraft:jsch:0.1.55', jsch: 'com.jcraft:jsch:0.1.55',
jgit: 'org.eclipse.jgit:org.eclipse.jgit:3.7.1.201504261725-r', jgit: 'org.eclipse.jgit:org.eclipse.jgit:3.7.1.201504261725-r',
sshj: 'com.hierynomus:sshj:0.29.0', leakcanary: 'com.squareup.leakcanary:leakcanary-android:2.3',
bouncycastle: 'org.bouncycastle:bcprov-jdk15on:1.65',
leakcanary: 'com.squareup.leakcanary:leakcanary-android:2.2',
openpgp_ktx: 'com.github.android-password-store:openpgp-ktx:2.0.0', openpgp_ktx: 'com.github.android-password-store:openpgp-ktx:2.0.0',
sshj: 'com.hierynomus:sshj:0.29.0',
ssh_auth: 'org.sufficientlysecure:sshauthentication-api:1.0', ssh_auth: 'org.sufficientlysecure:sshauthentication-api:1.0',
timber: 'com.jakewharton.timber:timber:4.7.1', timber: 'com.jakewharton.timber:timber:4.7.1',
timberkt: 'com.github.ajalt:timberkt:1.5.1', timberkt: 'com.github.ajalt:timberkt:1.5.1',
whatthestack: 'com.github.haroldadmin:WhatTheStack:0.0.1', whatthestack: 'com.github.haroldadmin:WhatTheStack:0.0.2',
], ],
testing: [ testing: [
junit: 'junit:junit:4.13', junit: 'junit:junit:4.13',
kotlin_test_junit: 'org.jetbrains.kotlin:kotlin-test-junit:1.3.71', kotlin_test_junit: 'org.jetbrains.kotlin:kotlin-test-junit:1.3.72',
androidx: [ androidx: [
runner: 'androidx.test:runner:1.3.0-alpha05', runner: 'androidx.test:runner:1.3.0-beta02',
rules: 'androidx.test:rules:1.3.0-alpha05', rules: 'androidx.test:rules:1.3.0-beta02',
junit: 'androidx.test.ext:junit:1.1.2-alpha05', junit: 'androidx.test.ext:junit:1.1.2-beta02',
espresso_core: 'androidx.test.espresso:espresso-core:3.3.0-alpha05', espresso_core: 'androidx.test.espresso:espresso-core:3.3.0-beta02',
espresso_intents: 'androidx.test.espresso:espresso-intents:3.3.0-alpha05' espresso_intents: 'androidx.test.espresso:espresso-intents:3.3.0-beta02'
] ]
] ]
] ]

View file

@ -1,5 +1,5 @@
# AndroidX # AndroidX
android.enableJetifier=true android.enableJetifier=false
android.useAndroidX=true android.useAndroidX=true
# R8 Full mode # R8 Full mode

Binary file not shown.

View file

@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionSha256Sum=0f316a67b971b7b571dac7215dcf2591a30994b3450e0629925ffcfe2c68cc5c distributionSha256Sum=d08f7e24d061910382c2fda9915e6ed42dd1480ae2e99211f92c70190cb697e0
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip distributionUrl=https\://services.gradle.org/distributions/gradle-6.4-all.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists

2
gradlew vendored
View file

@ -82,6 +82,7 @@ esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM. # Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
@ -129,6 +130,7 @@ fi
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"` APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"` JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath # We build the pattern for arguments to be converted via cygpath

1
gradlew.bat vendored
View file

@ -84,6 +84,7 @@ set CMD_LINE_ARGS=%*
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle @rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%