From cc0f4933f05936b1d5abaf8e7050bc8336b49fae Mon Sep 17 00:00:00 2001
From: Janne Koschinski <janne@kuschku.de>
Date: Fri, 6 Sep 2019 14:48:19 +0200
Subject: [PATCH] Update dependencies

---
 app/build.gradle.kts                          |  44 ++++++-------
 app/sampledata/libraries.json                 |  50 +--------------
 app/src/main/assets/TZDB.dat                  | Bin 100771 -> 102252 bytes
 .../quasseldroid/service/QuasselService.kt    |   6 +-
 .../ui/chat/archive/ArchiveListItem.kt        |  19 ++++++
 .../ui/clientsettings/about/AboutFragment.kt  |  34 ++++++++--
 .../ui/DragInterceptBottomSheetBehavior.kt    |   2 +-
 .../quasseldroid/util/ui/ThemedActivity.kt    |  20 ++----
 .../DaggerPreferenceFragmentCompat.kt         |  11 ++--
 .../res/layout/widget_archive_placeholder.xml |  20 +++++-
 app/src/main/res/layout/widget_header.xml     |  20 +++++-
 build.gradle.kts                              |   2 +-
 desktop/build.gradle.kts                      |  39 ------------
 .../java/de/kuschku/desktop/CliArguments.kt   |  59 ------------------
 .../src/main/java/de/kuschku/desktop/Main.kt  |  27 --------
 invokergenerator/build.gradle.kts             |   6 +-
 .../libquassel/annotations/parser/Parser.kt   |  17 ++++-
 lib/build.gradle.kts                          |   6 +-
 lifecycle-ktx/build.gradle.kts                |   6 +-
 malheur/build.gradle.kts                      |   4 +-
 persistence/build.gradle.kts                  |   6 +-
 settings.gradle                               |   1 -
 ui_spinner/build.gradle.kts                   |   4 +-
 viewmodel/build.gradle.kts                    |  10 +--
 24 files changed, 163 insertions(+), 250 deletions(-)
 delete mode 100644 desktop/build.gradle.kts
 delete mode 100644 desktop/src/main/java/de/kuschku/desktop/CliArguments.kt
 delete mode 100644 desktop/src/main/java/de/kuschku/desktop/Main.kt

diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 428fe0da4..275a8e8f8 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -102,30 +102,32 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
 
   // App Compat
-  implementation("com.google.android.material", "material", "1.1.0-alpha09")
+  implementation("com.google.android.material", "material", "1.1.0-alpha10")
 
-  implementation("androidx.appcompat", "appcompat", "1.0.2")
-  implementation("androidx.browser", "browser", "1.0.0")
+  implementation("androidx.appcompat", "appcompat", "1.1.0")
+  implementation("androidx.browser", "browser", "1.2.0-alpha07")
   implementation("androidx.cardview", "cardview", "1.0.0")
-  implementation("androidx.recyclerview", "recyclerview", "1.0.0")
+  implementation("androidx.recyclerview", "recyclerview", "1.1.0-beta04")
+  implementation("androidx.swiperefreshlayout", "swiperefreshlayout", "1.1.0-alpha02")
   implementation("androidx.preference", "preference", "1.0.0")
+  // Only needed for ringtone preference
   implementation("androidx.legacy", "legacy-preference-v14", "1.0.0")
-  implementation("androidx.constraintlayout", "constraintlayout", "1.1.3")
+  implementation("androidx.constraintlayout", "constraintlayout", "2.0.0-beta1")
 
-  withVersion("2.1.0") {
+  withVersion("2.2.0-rc01") {
     implementation("androidx.room", "room-runtime", version)
     kapt("androidx.room", "room-compiler", version)
     implementation("androidx.room", "room-rxjava2", version)
     testImplementation("androidx.room", "room-testing", version)
   }
-  withVersion("2.0.0") {
+  withVersion("2.1.0") {
     implementation("androidx.lifecycle", "lifecycle-extensions", version)
     implementation("androidx.lifecycle", "lifecycle-reactivestreams", version)
   }
-  testImplementation("androidx.arch.core", "core-testing", "2.0.1")
+  testImplementation("androidx.arch.core", "core-testing", "2.1.0")
   implementation(project(":lifecycle-ktx"))
 
   implementation("androidx.paging", "paging-runtime", "2.1.0")
@@ -134,14 +136,14 @@ dependencies {
 
   // Utility
   implementation("io.reactivex.rxjava2", "rxandroid", "2.1.1")
-  implementation("io.reactivex.rxjava2", "rxjava", "2.2.10")
+  implementation("io.reactivex.rxjava2", "rxjava", "2.2.12")
   implementation("org.threeten", "threetenbp", "1.4.0", classifier = "no-tzdb")
   implementation("org.jetbrains", "annotations", "17.0.0")
   implementation("com.google.code.gson", "gson", "2.8.5")
-  implementation("commons-codec", "commons-codec", "1.12")
-  implementation("com.squareup.retrofit2", "retrofit", "2.6.0")
-  implementation("com.squareup.retrofit2", "converter-gson", "2.6.0")
-  implementation("com.github.pwittchen", "reactivenetwork-rx2", "3.0.3")
+  implementation("commons-codec", "commons-codec", "1.13")
+  implementation("com.squareup.retrofit2", "retrofit", "2.6.1")
+  implementation("com.squareup.retrofit2", "converter-gson", "2.6.1")
+  implementation("com.github.pwittchen", "reactivenetwork-rx2", "3.0.6")
   withVersion("10.1.0") {
     implementation("com.jakewharton", "butterknife", version)
     kapt("com.jakewharton", "butterknife-compiler", version)
@@ -155,7 +157,7 @@ dependencies {
   }
 
   // UI
-  implementation("com.leinardi.android", "speed-dial", "2.0.1")
+  implementation("com.leinardi.android", "speed-dial", "3.0.0")
   implementation("me.zhanghai.android.materialprogressbar", "library", "1.6.1")
   implementation("com.google.android", "flexbox", "1.1.0")
   implementation(project(":ui_spinner"))
@@ -179,7 +181,7 @@ dependencies {
   }
 
   // Dependency Injection
-  withVersion("2.23.2") {
+  withVersion("2.24") {
     implementation("com.google.dagger", "dagger", version)
     kapt("com.google.dagger", "dagger-compiler", version)
     kapt("com.google.dagger", "dagger-android-processor", version)
@@ -193,9 +195,9 @@ dependencies {
   }
 
   androidTestImplementation("junit", "junit", "4.12")
-  androidTestImplementation("androidx.test.espresso", "espresso-core", "3.1.0")
-  androidTestImplementation("androidx.test.espresso", "espresso-contrib", "3.1.0")
-  androidTestImplementation("androidx.test.ext", "junit", "1.0.0")
-  androidTestImplementation("androidx.test", "runner", "1.2.0")
-  androidTestImplementation("androidx.test", "rules", "1.2.0")
+  androidTestImplementation("androidx.test.espresso", "espresso-core", "3.3.0-alpha02")
+  androidTestImplementation("androidx.test.espresso", "espresso-contrib", "3.3.0-alpha02")
+  androidTestImplementation("androidx.test.ext", "junit", "1.1.2-alpha02")
+  androidTestImplementation("androidx.test", "runner", "1.3.0-alpha02")
+  androidTestImplementation("androidx.test", "rules", "1.3.0-alpha02")
 }
diff --git a/app/sampledata/libraries.json b/app/sampledata/libraries.json
index 2158ebce1..5031bdb06 100644
--- a/app/sampledata/libraries.json
+++ b/app/sampledata/libraries.json
@@ -1,58 +1,12 @@
 {
   "data": [
     {
-      "name": "Android Architecture Components: Lifecycle",
-      "version": "1.1.1",
+      "name": "AndroidX",
       "license": {
         "short_name": "Apache-2.0",
         "full_name": "Apache License"
       },
-      "url": "https://android.googlesource.com/platform/frameworks/support/+/master/lifecycle"
-    },
-    {
-      "name": "Android Architecture Components: Paging",
-      "version": "1.0.0-alpha7",
-      "license": {
-        "short_name": "Apache-2.0",
-        "full_name": "Apache License"
-      },
-      "url": "https://android.googlesource.com/platform/frameworks/support/+/master/paging"
-    },
-    {
-      "name": "Android Architecture Components: Persistence",
-      "version": "1.1.0-rc1",
-      "license": {
-        "short_name": "Apache-2.0",
-        "full_name": "Apache License"
-      },
-      "url": "https://android.googlesource.com/platform/frameworks/support/+/master/persistence"
-    },
-    {
-      "name": "Android Architecture Components: Room",
-      "version": "1.1.0-rc1",
-      "license": {
-        "short_name": "Apache-2.0",
-        "full_name": "Apache License"
-      },
-      "url": "https://android.googlesource.com/platform/frameworks/support/+/master/persistence"
-    },
-    {
-      "name": "Android Support Library",
-      "version": "27.1.1",
-      "license": {
-        "short_name": "Apache-2.0",
-        "full_name": "Apache License"
-      },
-      "url": "https://android.googlesource.com/platform/frameworks/support/+/master"
-    },
-    {
-      "name": "Android Support Library: Constraint Layout",
-      "version": "1.1.0-beta6",
-      "license": {
-        "short_name": "Apache-2.0",
-        "full_name": "Apache License"
-      },
-      "url": "https://android.googlesource.com/platform/frameworks/opt/sherpa/+/studio-3.0/constraintlayout"
+      "url": "https://developer.android.com/jetpack/androidx"
     },
     {
       "name": "atinject",
diff --git a/app/src/main/assets/TZDB.dat b/app/src/main/assets/TZDB.dat
index b0128ca4919ca92474f8216336ff3a464226bbf9..a9b6c361e2c345eb75c706874a3ed48edef4013d 100644
GIT binary patch
delta 5337
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
W*r$x7p(F~K@vt%qFDmz9(BA<oX+O&V

delta 3974
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
MC8jf;F<nsM-z+Z>v;Y7A

diff --git a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt
index ced2db261..0b5a021a7 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt
@@ -169,9 +169,9 @@ class QuasselService : DaggerLifecycleService(),
     }
   }
 
-  override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
+  override fun onStartCommand(intent: Intent, flags: Int, startId: Int): Int {
     val result = super.onStartCommand(intent, flags, startId)
-    intent?.let(this@QuasselService::handleIntent)
+    handleIntent(intent)
     return result
   }
 
@@ -493,7 +493,7 @@ class QuasselService : DaggerLifecycleService(),
     super.onDestroy()
   }
 
-  override fun onBind(intent: Intent?): QuasselBinder {
+  override fun onBind(intent: Intent): QuasselBinder {
     super.onBind(intent)
     return QuasselBinder(asyncBackend)
   }
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/archive/ArchiveListItem.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/archive/ArchiveListItem.kt
index 946051b5f..0fd0bdd42 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/archive/ArchiveListItem.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/archive/ArchiveListItem.kt
@@ -1,3 +1,22 @@
+/*
+ * Quasseldroid - Quassel client for Android
+ *
+ * Copyright (c) 2019 Janne Mareike Koschinski
+ * Copyright (c) 2019 The Quassel Project
+ *
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 3 as published
+ * by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
 package de.kuschku.quasseldroid.ui.chat.archive
 
 import de.kuschku.quasseldroid.viewmodel.data.BufferListItem
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 1ba93a140..b95fde5ea 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
@@ -130,6 +130,12 @@ class AboutFragment : DaggerFragment() {
         license = apache2,
         url = "https://code.google.com/archive/p/atinject/"
       ),
+      Library(
+        name = "Apache Commons Codec",
+        version = "1.13",
+        license = apache2,
+        url = "https://commons.apache.org/proper/commons-codec/"
+      ),
       Library(
         name = "AutoService",
         version = "1.0-rc6",
@@ -150,7 +156,7 @@ class AboutFragment : DaggerFragment() {
       ),
       Library(
         name = "Dagger 2",
-        version = "2.23.2",
+        version = "2.24",
         license = apache2,
         url = "https://google.github.io/dagger/"
       ),
@@ -163,6 +169,12 @@ class AboutFragment : DaggerFragment() {
         ),
         url = "https://draculatheme.com/"
       ),
+      Library(
+        name = "FloatingActionButtonSpeedDial",
+        version = "3.0.0",
+        license = apache2,
+        url = "https://github.com/leinardi/FloatingActionButtonSpeedDial"
+      ),
       Library(
         name = "Glide",
         version = "4.9.0",
@@ -186,7 +198,7 @@ class AboutFragment : DaggerFragment() {
       ),
       Library(
         name = "KotlinPoet",
-        version = "1.1.0",
+        version = "1.3.0",
         license = apache2,
         url = "https://github.com/square/kotlinpoet"
       ),
@@ -198,7 +210,7 @@ class AboutFragment : DaggerFragment() {
       ),
       Library(
         name = "Kotlin Standard Library",
-        version = "1.3.41",
+        version = "1.3.50",
         license = apache2,
         url = "https://kotlinlang.org/"
       ),
@@ -208,6 +220,12 @@ class AboutFragment : DaggerFragment() {
         license = apache2,
         url = "https://github.com/square/leakcanary"
       ),
+      Library(
+        name = "Material Components",
+        version = "1.1.0-alpha10",
+        license = apache2,
+        url = "https://github.com/material-components/material-components-android"
+      ),
       Library(
         name = "Material Design Icons: Community",
         license = License(
@@ -259,6 +277,12 @@ class AboutFragment : DaggerFragment() {
         ),
         url = "http://www.reactive-streams.org/"
       ),
+      Library(
+        name = "ReactiveNetwork",
+        version = "3.0.6",
+        license = apache2,
+        url = "https://github.com/pwittchen/ReactiveNetwork"
+      ),
       Library(
         name = "RecyclerView-FastScroll",
         version = "2.0.",
@@ -267,13 +291,13 @@ class AboutFragment : DaggerFragment() {
       ),
       Library(
         name = "Retrofit",
-        version = "2.6.0",
+        version = "2.6.1",
         license = apache2,
         url = "https://square.github.io/retrofit/"
       ),
       Library(
         name = "RxJava",
-        version = "2.2.10",
+        version = "2.2.12",
         license = apache2,
         url = "https://github.com/ReactiveX/RxJava"
       ),
diff --git a/app/src/main/java/de/kuschku/quasseldroid/util/ui/DragInterceptBottomSheetBehavior.kt b/app/src/main/java/de/kuschku/quasseldroid/util/ui/DragInterceptBottomSheetBehavior.kt
index cfdddec27..95d64eaae 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/util/ui/DragInterceptBottomSheetBehavior.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/util/ui/DragInterceptBottomSheetBehavior.kt
@@ -28,7 +28,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior
 
 class DragInterceptBottomSheetBehavior<V : View> : BottomSheetBehavior<V> {
   constructor() : super()
-  constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs)
+  constructor(context: Context, attrs: AttributeSet?) : super(context, attrs)
 
   var allowDragging = true
 
diff --git a/app/src/main/java/de/kuschku/quasseldroid/util/ui/ThemedActivity.kt b/app/src/main/java/de/kuschku/quasseldroid/util/ui/ThemedActivity.kt
index 5d8d820c1..a0ead2461 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/util/ui/ThemedActivity.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/util/ui/ThemedActivity.kt
@@ -23,23 +23,17 @@ import android.content.Context
 import android.content.pm.PackageManager
 import android.os.Bundle
 import androidx.appcompat.app.AppCompatActivity
-import androidx.fragment.app.Fragment
 import dagger.android.AndroidInjection
 import dagger.android.AndroidInjector
 import dagger.android.DispatchingAndroidInjector
-import dagger.android.HasFragmentInjector
-import dagger.android.support.HasSupportFragmentInjector
+import dagger.android.HasAndroidInjector
 import de.kuschku.libquassel.util.helper.nullIf
 import de.kuschku.quasseldroid.settings.AppearanceSettings
 import javax.inject.Inject
 
-abstract class ThemedActivity : AppCompatActivity(), HasSupportFragmentInjector,
-                                HasFragmentInjector {
+abstract class ThemedActivity : AppCompatActivity(), HasAndroidInjector {
   @Inject
-  lateinit var supportFragmentInjector: DispatchingAndroidInjector<Fragment>
-
-  @Inject
-  lateinit var frameworkFragmentInjector: DispatchingAndroidInjector<android.app.Fragment>
+  lateinit var androidInjector: DispatchingAndroidInjector<Any>
 
   @Inject
   lateinit var appearanceSettings: AppearanceSettings
@@ -56,11 +50,7 @@ abstract class ThemedActivity : AppCompatActivity(), HasSupportFragmentInjector,
     super.attachBaseContext(LocaleHelper.setLocale(newBase))
   }
 
-  override fun supportFragmentInjector(): AndroidInjector<Fragment>? {
-    return supportFragmentInjector
-  }
-
-  override fun fragmentInjector(): AndroidInjector<android.app.Fragment>? {
-    return frameworkFragmentInjector
+  override fun androidInjector(): AndroidInjector<Any> {
+    return androidInjector
   }
 }
diff --git a/app/src/main/java/de/kuschku/quasseldroid/util/ui/settings/DaggerPreferenceFragmentCompat.kt b/app/src/main/java/de/kuschku/quasseldroid/util/ui/settings/DaggerPreferenceFragmentCompat.kt
index 4fbbf4e55..b5f023e91 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/util/ui/settings/DaggerPreferenceFragmentCompat.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/util/ui/settings/DaggerPreferenceFragmentCompat.kt
@@ -20,24 +20,23 @@
 package de.kuschku.quasseldroid.util.ui.settings
 
 import android.content.Context
-import androidx.fragment.app.Fragment
 import dagger.android.AndroidInjector
 import dagger.android.DispatchingAndroidInjector
+import dagger.android.HasAndroidInjector
 import dagger.android.support.AndroidSupportInjection
-import dagger.android.support.HasSupportFragmentInjector
 import javax.inject.Inject
 
 abstract class DaggerPreferenceFragmentCompat : AttachingPreferenceFragmentCompat(),
-                                                HasSupportFragmentInjector {
+                                                HasAndroidInjector {
   @Inject
-  lateinit var childFragmentInjector: DispatchingAndroidInjector<Fragment>
+  lateinit var androidInjector: DispatchingAndroidInjector<Any>
 
   override fun onAttach(context: Context) {
     AndroidSupportInjection.inject(this)
     super.onAttach(context)
   }
 
-  override fun supportFragmentInjector(): AndroidInjector<Fragment>? {
-    return childFragmentInjector
+  override fun androidInjector(): AndroidInjector<Any> {
+    return androidInjector
   }
 }
diff --git a/app/src/main/res/layout/widget_archive_placeholder.xml b/app/src/main/res/layout/widget_archive_placeholder.xml
index aa4a6e279..b16ad2939 100644
--- a/app/src/main/res/layout/widget_archive_placeholder.xml
+++ b/app/src/main/res/layout/widget_archive_placeholder.xml
@@ -1,4 +1,22 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?><!--
+  Quasseldroid - Quassel client for Android
+
+  Copyright (c) 2019 Janne Mareike Koschinski
+  Copyright (c) 2019 The Quassel Project
+
+  This program is free software: you can redistribute it and/or modify it
+  under the terms of the GNU General Public License version 3 as published
+  by the Free Software Foundation.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License along
+  with this program. If not, see <http://www.gnu.org/licenses/>.
+  -->
+
 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:id="@+id/content"
diff --git a/app/src/main/res/layout/widget_header.xml b/app/src/main/res/layout/widget_header.xml
index 40a965aa7..654625426 100644
--- a/app/src/main/res/layout/widget_header.xml
+++ b/app/src/main/res/layout/widget_header.xml
@@ -1,4 +1,22 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?><!--
+  Quasseldroid - Quassel client for Android
+
+  Copyright (c) 2019 Janne Mareike Koschinski
+  Copyright (c) 2019 The Quassel Project
+
+  This program is free software: you can redistribute it and/or modify it
+  under the terms of the GNU General Public License version 3 as published
+  by the Free Software Foundation.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License along
+  with this program. If not, see <http://www.gnu.org/licenses/>.
+  -->
+
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
   xmlns:tools="http://schemas.android.com/tools"
diff --git a/build.gradle.kts b/build.gradle.kts
index 4d29c88a9..aba1b9de1 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -26,7 +26,7 @@ buildscript {
   }
   dependencies {
     classpath("com.android.tools.build:gradle:3.4.2")
-    classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.41")
+    classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.50")
   }
 }
 
diff --git a/desktop/build.gradle.kts b/desktop/build.gradle.kts
deleted file mode 100644
index 4d6e52fd3..000000000
--- a/desktop/build.gradle.kts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2019 Janne Mareike Koschinski
- * Copyright (c) 2019 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-plugins {
-  application
-  kotlin("jvm")
-  kotlin("kapt")
-}
-
-application {
-  mainClassName = "de.kuschku.cli.MainKt"
-}
-
-dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
-
-  implementation("io.reactivex.rxjava2", "rxjava", "2.2.10")
-  implementation("info.picocli", "picocli", "3.9.0")
-
-  implementation(project(":lib"))
-
-  testImplementation("junit", "junit", "4.12")
-}
diff --git a/desktop/src/main/java/de/kuschku/desktop/CliArguments.kt b/desktop/src/main/java/de/kuschku/desktop/CliArguments.kt
deleted file mode 100644
index 293543758..000000000
--- a/desktop/src/main/java/de/kuschku/desktop/CliArguments.kt
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2019 Janne Mareike Koschinski
- * Copyright (c) 2019 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.desktop
-
-import picocli.CommandLine
-
-class CliArguments {
-  @CommandLine.Option(names = ["--user"])
-  var user: String = ""
-  @CommandLine.Option(names = ["--pass"])
-  var pass: String = ""
-  @CommandLine.Option(names = ["--host"])
-  var host: String = ""
-  @CommandLine.Option(names = ["--port"])
-  var port: Int = 4242
-
-  override fun toString(): String {
-    return "CliArguments(user='$user', pass='$pass', host='$host', port='$port')"
-  }
-
-  override fun equals(other: Any?): Boolean {
-    if (this === other) return true
-    if (javaClass != other?.javaClass) return false
-
-    other as CliArguments
-
-    if (user != other.user) return false
-    if (pass != other.pass) return false
-    if (host != other.host) return false
-    if (port != other.port) return false
-
-    return true
-  }
-
-  override fun hashCode(): Int {
-    var result = user.hashCode()
-    result = 31 * result + pass.hashCode()
-    result = 31 * result + host.hashCode()
-    result = 31 * result + port.hashCode()
-    return result
-  }
-}
diff --git a/desktop/src/main/java/de/kuschku/desktop/Main.kt b/desktop/src/main/java/de/kuschku/desktop/Main.kt
deleted file mode 100644
index 50e10b6ef..000000000
--- a/desktop/src/main/java/de/kuschku/desktop/Main.kt
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Quasseldroid - Quassel client for Android
- *
- * Copyright (c) 2019 Janne Mareike Koschinski
- * Copyright (c) 2019 The Quassel Project
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3 as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package de.kuschku.desktop
-
-import picocli.CommandLine
-
-fun main(vararg args: String) {
-  val cliArguments = CliArguments()
-  CommandLine(cliArguments).parse(*args)
-}
diff --git a/invokergenerator/build.gradle.kts b/invokergenerator/build.gradle.kts
index daae80c49..5894f28fc 100644
--- a/invokergenerator/build.gradle.kts
+++ b/invokergenerator/build.gradle.kts
@@ -29,10 +29,10 @@ tasks.withType<KotlinCompile> {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
   implementation(project(":invokerannotations"))
-  implementation("org.jetbrains.kotlin", "kotlin-compiler-embeddable", "1.3.41")
-  implementation("com.squareup", "kotlinpoet", "1.1.0")
+  implementation("org.jetbrains.kotlin", "kotlin-compiler-embeddable", "1.3.50")
+  implementation("com.squareup", "kotlinpoet", "1.3.0")
   implementation("com.google.auto.service:auto-service:1.0-rc6")
   kapt("com.google.auto.service:auto-service:1.0-rc6")
 }
diff --git a/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/parser/Parser.kt b/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/parser/Parser.kt
index a482150b1..34d4fea4b 100644
--- a/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/parser/Parser.kt
+++ b/invokergenerator/src/main/java/de/kuschku/libquassel/annotations/parser/Parser.kt
@@ -251,5 +251,20 @@ class Parser(
   }
 
   private fun buildImports(wildcard: List<String>, named: List<Pair<String, String>>) =
-    (wildcard.flatMap(this::resolveWildcardImport) + named).toMap()
+    (
+      wildcard.flatMap(this::resolveWildcardImport) +
+      named +
+      listOf(
+        "Boolean",
+        "Byte",
+        "UByte",
+        "Short",
+        "UShort",
+        "Int",
+        "UInt",
+        "Long",
+        "ULong",
+        "Char"
+      ).map { Pair(it, "kotlin.$it") }
+    ).toMap()
 }
diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts
index 7d7ddb1d0..a30531f7d 100644
--- a/lib/build.gradle.kts
+++ b/lib/build.gradle.kts
@@ -23,12 +23,12 @@ plugins {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
 
-  implementation("androidx.annotation", "annotation", "1.0.0")
+  implementation("androidx.annotation", "annotation", "1.1.0")
 
   implementation("org.threeten", "threetenbp", "1.4.0")
-  implementation("io.reactivex.rxjava2", "rxjava", "2.2.10")
+  implementation("io.reactivex.rxjava2", "rxjava", "2.2.12")
 
   implementation(project(":invokerannotations"))
   kapt(project(":invokergenerator"))
diff --git a/lifecycle-ktx/build.gradle.kts b/lifecycle-ktx/build.gradle.kts
index 78cb19242..04ea573ec 100644
--- a/lifecycle-ktx/build.gradle.kts
+++ b/lifecycle-ktx/build.gradle.kts
@@ -22,9 +22,9 @@ plugins {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
 
-  implementation("androidx.annotation", "annotation", "1.0.0")
+  implementation("androidx.annotation", "annotation", "1.1.0")
 
-  implementation("androidx.lifecycle", "lifecycle-common", "2.0.0")
+  implementation("androidx.lifecycle", "lifecycle-common", "2.1.0")
 }
diff --git a/malheur/build.gradle.kts b/malheur/build.gradle.kts
index 4f7d5eca5..239f49c2c 100644
--- a/malheur/build.gradle.kts
+++ b/malheur/build.gradle.kts
@@ -44,8 +44,8 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
 
   implementation("com.google.code.gson", "gson", "2.8.5")
-  implementation("androidx.annotation", "annotation", "1.0.1")
+  implementation("androidx.annotation", "annotation", "1.1.0")
 }
diff --git a/persistence/build.gradle.kts b/persistence/build.gradle.kts
index b0ad03b43..409b7adf9 100644
--- a/persistence/build.gradle.kts
+++ b/persistence/build.gradle.kts
@@ -51,11 +51,11 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
 
-  implementation("androidx.appcompat", "appcompat", "1.0.2")
+  implementation("androidx.appcompat", "appcompat", "1.1.0")
 
-  withVersion("2.1.0") {
+  withVersion("2.2.0-rc01") {
     implementation("androidx.room", "room-runtime", version)
     kapt("androidx.room", "room-compiler", version)
     implementation("androidx.room", "room-rxjava2", version)
diff --git a/settings.gradle b/settings.gradle
index 748783baa..ba3c6fc22 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -20,7 +20,6 @@
 rootProject.buildFileName = 'build.gradle.kts'
 
 include ':app',
-    ':desktop',
     ':invokerannotations',
     ':invokergenerator',
     ':lib',
diff --git a/ui_spinner/build.gradle.kts b/ui_spinner/build.gradle.kts
index d8373bc54..f64f04c70 100644
--- a/ui_spinner/build.gradle.kts
+++ b/ui_spinner/build.gradle.kts
@@ -44,6 +44,6 @@ android {
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
-  implementation("androidx.appcompat", "appcompat", "1.0.2")
+  implementation(kotlin("stdlib", "1.3.50"))
+  implementation("androidx.appcompat", "appcompat", "1.1.0")
 }
diff --git a/viewmodel/build.gradle.kts b/viewmodel/build.gradle.kts
index 45aae2105..5800e98c8 100644
--- a/viewmodel/build.gradle.kts
+++ b/viewmodel/build.gradle.kts
@@ -39,22 +39,22 @@ android {
 
   lintOptions {
     isWarningsAsErrors = true
-    lintConfig = file("../lint.xml")
+    setLintConfig(file("../lint.xml"))
   }
 }
 
 dependencies {
-  implementation(kotlin("stdlib", "1.3.41"))
+  implementation(kotlin("stdlib", "1.3.50"))
 
-  implementation("androidx.appcompat", "appcompat", "1.0.2")
-  withVersion("2.0.0") {
+  implementation("androidx.appcompat", "appcompat", "1.1.0")
+  withVersion("2.1.0") {
     implementation("androidx.lifecycle", "lifecycle-extensions", version)
     implementation("androidx.lifecycle", "lifecycle-reactivestreams", version)
   }
 
   // Utility
   implementation("io.reactivex.rxjava2", "rxandroid", "2.1.1")
-  implementation("io.reactivex.rxjava2", "rxjava", "2.2.10")
+  implementation("io.reactivex.rxjava2", "rxjava", "2.2.12")
   implementation("org.threeten", "threetenbp", "1.4.0", classifier = "no-tzdb")
   implementation("org.jetbrains", "annotations", "17.0.0")
 
-- 
GitLab