diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 916f0973ca5f7f10461592014578487efa8326f8..bc783b9ca2d3844763dac234ebab88a277178eab 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -109,7 +109,7 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.2.60"))
+  implementation(kotlin("stdlib", "1.3.10"))
 
   // App Compat
   implementation("com.google.android.material", "material", "1.0.0-rc01")
@@ -137,12 +137,12 @@ dependencies {
   // Utility
   implementation("io.reactivex.rxjava2", "rxandroid", "2.0.2")
   implementation("io.reactivex.rxjava2", "rxjava", "2.1.9")
-  implementation("org.threeten", "threetenbp", "1.3.6", classifier = "no-tzdb")
-  implementation("org.jetbrains", "annotations", "16.0.1")
-  implementation("com.google.code.gson", "gson", "2.8.2")
+  implementation("org.threeten", "threetenbp", "1.3.8", classifier = "no-tzdb")
+  implementation("org.jetbrains", "annotations", "16.0.3")
+  implementation("com.google.code.gson", "gson", "2.8.5")
   implementation("commons-codec", "commons-codec", "1.11")
-  implementation("com.squareup.retrofit2", "retrofit", "2.4.0")
-  implementation("com.squareup.retrofit2", "converter-gson", "2.4.0")
+  implementation("com.squareup.retrofit2", "retrofit", "2.5.0")
+  implementation("com.squareup.retrofit2", "converter-gson", "2.5.0")
   withVersion("9.0.0-rc1") {
     implementation("com.jakewharton", "butterknife", version)
     kapt("com.jakewharton", "butterknife-compiler", version)
@@ -156,7 +156,7 @@ dependencies {
   }
 
   // UI
-  implementation("me.zhanghai.android.materialprogressbar", "library", "1.4.2")
+  implementation("me.zhanghai.android.materialprogressbar", "library", "1.6.0")
   withVersion("0.9.6.0") {
     implementation("com.afollestad.material-dialogs", "core", version)
     implementation("com.afollestad.material-dialogs", "commons", version)
@@ -169,7 +169,7 @@ dependencies {
 
   // Quality Assurance
   implementation(project(":malheur"))
-  withVersion("1.5.4") {
+  withVersion("1.6.2") {
     debugImplementation("com.squareup.leakcanary", "leakcanary-android", version)
     releaseImplementation("com.squareup.leakcanary", "leakcanary-android-no-op", version)
     testImplementation("com.squareup.leakcanary", "leakcanary-android-no-op", version)
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 5d4a7e48c3256ed0a4399a9a968d4887655b6311..bcbaf4e513609f887056b7f4e44210695837a7a4 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -43,10 +43,7 @@
 # Dagger
 -dontwarn com.google.errorprone.annotations.*
 # Retrofit
-# Platform calls Class.forName on types which do not exist on Android to determine platform.
--dontnote retrofit2.Platform
-# Platform used when running on Java 8 VMs. Will not be used at runtime.
--dontwarn retrofit2.Platform$Java8
+-dontwarn retrofit2.**
 # Annotation used by Retrofit on Java 8 VMs
 -dontwarn javax.annotation.Nullable
 -dontwarn javax.annotation.ParametersAreNonnullByDefault
@@ -58,3 +55,5 @@
 # Okio
 -dontwarn okio.**
 -dontwarn org.conscrypt.**
+# OkHttp3
+-dontwarn okhttp3.**
diff --git a/app/sampledata/libraries.json b/app/sampledata/libraries.json
index d2886bada37fe47fa775851d9361d2999dec02ac..1c15fc706c1719864a899ffa6c054138db581644 100644
--- a/app/sampledata/libraries.json
+++ b/app/sampledata/libraries.json
@@ -161,7 +161,7 @@
     },
     {
       "name": "Kotlin Standard Library",
-      "version": "1.2.60",
+      "version": "1.3.10",
       "license": {
         "short_name": "Apache-2.0",
         "full_name": "Apache License"
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/about/AboutFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/about/AboutFragment.kt
index 6805cd88e734f34d45143de70a4abdd3295672e7..e557ca9b224d7997a955199ce118a0d9a0df21d8 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/about/AboutFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/about/AboutFragment.kt
@@ -196,7 +196,7 @@ class AboutFragment : DaggerFragment() {
       ),
       Library(
         name = "Kotlin Standard Library",
-        version = "1.2.60",
+        version = "1.3.10",
         license = apache2,
         url = "https://kotlinlang.org/"
       ),
diff --git a/build.gradle.kts b/build.gradle.kts
index ea718ef4372dd873f6f7764ecaaffd105324a1cd..081ebb6f34e47c1fea1381d85de4eddf02fc089c 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -24,7 +24,7 @@ buildscript {
   }
   dependencies {
     classpath("com.android.tools.build:gradle:3.2.1")
-    classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.60")
+    classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.10")
   }
 }
 
diff --git a/invokergenerator/build.gradle.kts b/invokergenerator/build.gradle.kts
index e323790a3a082ce92833aaafa1f7b8da2cdf098b..793361ecad312b1a1a20d2475e4ed3dd8474061a 100644
--- a/invokergenerator/build.gradle.kts
+++ b/invokergenerator/build.gradle.kts
@@ -28,5 +28,5 @@ plugins {
 dependencies {
   implementation(project(":invokerannotations"))
   implementation("com.google.auto.service:auto-service:1.0-rc4")
-  implementation("com.squareup:javapoet:1.10.0")
+  implementation("com.squareup:javapoet:1.11.1")
 }
diff --git a/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/InvokerProcessor.java b/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/InvokerProcessor.java
index b0497183d0e9c890722338b72f7116512d753be6..0cb9343ff52e946d595691501d69529958aaa8c8 100644
--- a/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/InvokerProcessor.java
+++ b/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/InvokerProcessor.java
@@ -109,7 +109,7 @@ public class InvokerProcessor extends AbstractProcessor {
     ClassName type = ClassName.get(packageName, invokerName);
     ClassName wrongObjectTypeException = ClassName.get("de.kuschku.libquassel.quassel.exceptions", "WrongObjectTypeException");
     ClassName unknownMethodException = ClassName.get("de.kuschku.libquassel.quassel.exceptions", "UnknownMethodException");
-    ClassName nonNullAnnotation = ClassName.get("android.support.annotation", "NonNull");
+    ClassName nonNullAnnotation = ClassName.get("androidx.annotation", "NonNull");
 
     MethodSpec methodSpecConstructor = MethodSpec
       .constructorBuilder()
diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts
index 90f914790f7173e0c2863b73ca6ddd088ef70253..b47a83d6bcce0e283e2a21d8ec63a329df4f32d0 100644
--- a/lib/build.gradle.kts
+++ b/lib/build.gradle.kts
@@ -29,13 +29,11 @@ plugins {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.2.60"))
+  implementation(kotlin("stdlib", "1.3.10"))
 
-  withVersion("27.1.1") {
-    implementation("com.android.support", "support-annotations", version)
-  }
+  implementation("androidx.annotation", "annotation", "1.0.0")
 
-  implementation("org.threeten", "threetenbp", "1.3.6")
+  implementation("org.threeten", "threetenbp", "1.3.8")
   implementation("io.reactivex.rxjava2", "rxjava", "2.1.9")
 
   implementation(project(":invokerannotations"))
diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt
index 543925d72fd576e5c5e2d05b36eaa5b1e4f0030d..7c2ad2d593fceb4f9747b6d66fd932b04fee38ac 100644
--- a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt
@@ -401,7 +401,7 @@ class IrcChannel(
 
   private val live_userModes = BehaviorSubject.createDefault(mutableMapOf<IrcUser, String>())
   private var _userModes: MutableMap<IrcUser, String>
-    get() = live_userModes.value
+    get() = live_userModes.value!!
     set(value) {
       updateUsers()
     }
diff --git a/lifecycle-ktx/build.gradle.kts b/lifecycle-ktx/build.gradle.kts
index 183854ebbb906468ea9c028ab6fde6207e92e90c..b091ba0e284a0ae04acc0a337eb420c4d97215e8 100644
--- a/lifecycle-ktx/build.gradle.kts
+++ b/lifecycle-ktx/build.gradle.kts
@@ -27,7 +27,7 @@ plugins {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.2.60"))
+  implementation(kotlin("stdlib", "1.3.10"))
 
   implementation("androidx.annotation", "annotation", "1.0.0")
 
diff --git a/malheur/build.gradle.kts b/malheur/build.gradle.kts
index 9db295fabc8399b6d627e6912628ff25a7f442ab..6fb6fee4e0fe248d084b266c6729147dccc4916f 100644
--- a/malheur/build.gradle.kts
+++ b/malheur/build.gradle.kts
@@ -44,7 +44,7 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.2.60"))
+  implementation(kotlin("stdlib", "1.3.10"))
 
-  implementation("com.google.code.gson", "gson", "2.8.2")
+  implementation("com.google.code.gson", "gson", "2.8.5")
 }
diff --git a/persistence/build.gradle.kts b/persistence/build.gradle.kts
index d71940c29ff726fd9339ba84e25d70104437aff7..9aad9299059b659bb64d592ddb8484499e8e54d4 100644
--- a/persistence/build.gradle.kts
+++ b/persistence/build.gradle.kts
@@ -51,7 +51,7 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.2.60"))
+  implementation(kotlin("stdlib", "1.3.10"))
 
   implementation("androidx.appcompat", "appcompat", "1.0.0")
 
@@ -63,8 +63,8 @@ dependencies {
   implementation("androidx.paging", "paging-runtime", "2.0.0-rc01")
 
   // Utility
-  implementation("org.threeten", "threetenbp", "1.3.6", classifier = "no-tzdb")
-  implementation("org.jetbrains", "annotations", "16.0.1")
+  implementation("org.threeten", "threetenbp", "1.3.8", classifier = "no-tzdb")
+  implementation("org.jetbrains", "annotations", "16.0.3")
 
   // Quassel
   implementation(project(":lib")) {
diff --git a/viewmodel/build.gradle.kts b/viewmodel/build.gradle.kts
index 7edf82a8601cd18c7a0beb7058a5eca20ea35dcf..683547f0264c2e93b8aa67f6848ee24e6bfdcf69 100644
--- a/viewmodel/build.gradle.kts
+++ b/viewmodel/build.gradle.kts
@@ -44,7 +44,7 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.2.60"))
+  implementation(kotlin("stdlib", "1.3.10"))
 
   implementation("androidx.appcompat", "appcompat", "1.0.0")
 
@@ -54,8 +54,8 @@ dependencies {
   // Utility
   implementation("io.reactivex.rxjava2", "rxandroid", "2.0.2")
   implementation("io.reactivex.rxjava2", "rxjava", "2.1.9")
-  implementation("org.threeten", "threetenbp", "1.3.6", classifier = "no-tzdb")
-  implementation("org.jetbrains", "annotations", "16.0.1")
+  implementation("org.threeten", "threetenbp", "1.3.8", classifier = "no-tzdb")
+  implementation("org.jetbrains", "annotations", "16.0.3")
 
   // Quassel
   implementation(project(":persistence"))