Commit 911c6eb6 authored by Mygod's avatar Mygod

Update dependencies

parent 1c08b74f
...@@ -24,6 +24,7 @@ val Project.currentFlavor get() = gradle.startParameter.taskRequests.toString(). ...@@ -24,6 +24,7 @@ val Project.currentFlavor get() = gradle.startParameter.taskRequests.toString().
fun Project.setupCommon() { fun Project.setupCommon() {
android.apply { android.apply {
buildToolsVersion("30.0.2")
compileSdkVersion(30) compileSdkVersion(30)
defaultConfig { defaultConfig {
minSdkVersion(23) minSdkVersion(23)
......
...@@ -66,13 +66,12 @@ tasks.register<Exec>("cargoClean") { ...@@ -66,13 +66,12 @@ tasks.register<Exec>("cargoClean") {
tasks.clean.dependsOn("cargoClean") tasks.clean.dependsOn("cargoClean")
dependencies { dependencies {
val coroutinesVersion = "1.3.6" val coroutinesVersion = "1.3.9"
val roomVersion = "2.2.5" val roomVersion = "2.2.5"
val workVersion = "2.4.0" val workVersion = "2.4.0"
api(project(":plugin")) api(project(":plugin"))
api("androidx.core:core-ktx:1.4.0-alpha01") api("androidx.core:core-ktx:1.4.0-alpha01")
api("com.google.android.material:material:1.2.0-rc01")
api("androidx.fragment:fragment-ktx:1.3.0-alpha07") api("androidx.fragment:fragment-ktx:1.3.0-alpha07")
api("androidx.lifecycle:lifecycle-common-java8:$lifecycleVersion") api("androidx.lifecycle:lifecycle-common-java8:$lifecycleVersion")
...@@ -83,11 +82,11 @@ dependencies { ...@@ -83,11 +82,11 @@ dependencies {
api("androidx.work:work-gcm:$workVersion") api("androidx.work:work-gcm:$workVersion")
api("com.google.android.gms:play-services-oss-licenses:17.0.0") api("com.google.android.gms:play-services-oss-licenses:17.0.0")
api("com.google.code.gson:gson:2.8.6") api("com.google.code.gson:gson:2.8.6")
api("com.google.firebase:firebase-analytics-ktx:17.4.4") api("com.google.firebase:firebase-analytics-ktx:17.5.0")
api("com.google.firebase:firebase-config-ktx:19.2.0") api("com.google.firebase:firebase-config-ktx:19.2.0")
api("com.google.firebase:firebase-crashlytics:17.1.1") api("com.google.firebase:firebase-crashlytics:17.2.1")
api("com.jakewharton.timber:timber:4.7.1") api("com.jakewharton.timber:timber:4.7.1")
api("dnsjava:dnsjava:3.2.1") api("dnsjava:dnsjava:3.2.2")
api("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion") api("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion")
api("org.jetbrains.kotlinx:kotlinx-coroutines-play-services:$coroutinesVersion") api("org.jetbrains.kotlinx:kotlinx-coroutines-play-services:$coroutinesVersion")
kapt("androidx.room:room-compiler:$roomVersion") kapt("androidx.room:room-compiler:$roomVersion")
......
...@@ -30,23 +30,24 @@ class AclTest { ...@@ -30,23 +30,24 @@ class AclTest {
const val INPUT1 = """$BYPASS_BASE const val INPUT1 = """$BYPASS_BASE
1.0.1.0/24 1.0.1.0/24
2000::/8 2000::/8
(?:^|\.)4tern\.com${'$'} (?:^|\.)4tern\.com$
""" """
const val INPUT2 = """[proxy_all] const val INPUT2 = """[proxy_all]
[bypass_list] [bypass_list]
10.3.0.0/16 10.3.0.0/16
10.0.0.0/8 10.0.0.0/8
(?:^|\.)chrome\.com${'$'} (?:^|\.)chrome\.com$
[proxy_list] [proxy_list]
# ignored # ignored
0.0.0.0/0 0.0.0.0/0
(?:^|\.)about\.google${'$'} (?:^|\.)about\.google$
""" """
} }
@Test @Test
fun parse() { fun parse() {
Assert.assertEquals(INPUT1, Acl().fromReader(INPUT1.reader()).toString()) Assert.assertEquals(INPUT1, Acl().fromReader(INPUT1.reader()).toString())
Assert.assertEquals(INPUT2, Acl().fromReader(INPUT2.reader()).toString())
} }
} }
...@@ -136,7 +136,7 @@ object BaseService { ...@@ -136,7 +136,7 @@ object BaseService {
private suspend fun loop() { private suspend fun loop() {
while (true) { while (true) {
delay(bandwidthListeners.values.min() ?: return) delay(bandwidthListeners.values.minOrNull() ?: return)
val proxies = listOfNotNull(data?.proxy, data?.udpFallback) val proxies = listOfNotNull(data?.proxy, data?.udpFallback)
val stats = proxies val stats = proxies
.map { Pair(it.profile.id, it.trafficMonitor?.requestUpdate()) } .map { Pair(it.profile.id, it.trafficMonitor?.requestUpdate()) }
......
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
package com.github.shadowsocks.utils package com.github.shadowsocks.utils
import android.content.ClipData
import androidx.recyclerview.widget.SortedList import androidx.recyclerview.widget.SortedList
private sealed class ArrayIterator<out T> : Iterator<T> { private sealed class ArrayIterator<out T> : Iterator<T> {
...@@ -31,12 +30,6 @@ private sealed class ArrayIterator<out T> : Iterator<T> { ...@@ -31,12 +30,6 @@ private sealed class ArrayIterator<out T> : Iterator<T> {
override fun next(): T = if (hasNext()) this[count++] else throw NoSuchElementException() override fun next(): T = if (hasNext()) this[count++] else throw NoSuchElementException()
} }
private class ClipDataIterator(private val data: ClipData) : ArrayIterator<ClipData.Item>() {
override val size get() = data.itemCount
override fun get(index: Int) = data.getItemAt(index)
}
fun ClipData.asIterable() = Iterable { ClipDataIterator(this) }
private class SortedListIterator<out T>(private val list: SortedList<T>) : ArrayIterator<T>() { private class SortedListIterator<out T>(private val list: SortedList<T>) : ArrayIterator<T>() {
override val size get() = list.size() override val size get() = list.size()
override fun get(index: Int) = list[index] override fun get(index: Int) = list[index]
......
...@@ -21,12 +21,12 @@ ...@@ -21,12 +21,12 @@
package com.github.shadowsocks.utils package com.github.shadowsocks.utils
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.* import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.content.pm.PackageInfo import android.content.pm.PackageInfo
import android.content.res.Resources import android.content.res.Resources
import android.graphics.BitmapFactory
import android.graphics.ImageDecoder
import android.net.Uri
import android.os.Build import android.os.Build
import android.system.Os import android.system.Os
import android.system.OsConstants import android.system.OsConstants
...@@ -117,10 +117,6 @@ fun Context.listenForPackageChanges(onetime: Boolean = true, callback: () -> Uni ...@@ -117,10 +117,6 @@ fun Context.listenForPackageChanges(onetime: Boolean = true, callback: () -> Uni
}) })
} }
fun ContentResolver.openBitmap(uri: Uri) =
if (Build.VERSION.SDK_INT >= 28) ImageDecoder.decodeBitmap(ImageDecoder.createSource(this, uri))
else BitmapFactory.decodeStream(openInputStream(uri))
val PackageInfo.signaturesCompat get() = val PackageInfo.signaturesCompat get() =
if (Build.VERSION.SDK_INT >= 28) signingInfo.apkContentsSigners else @Suppress("DEPRECATION") signatures if (Build.VERSION.SDK_INT >= 28) signingInfo.apkContentsSigners else @Suppress("DEPRECATION") signatures
......
...@@ -248,10 +248,8 @@ formatting: ...@@ -248,10 +248,8 @@ formatting:
autoCorrect: true autoCorrect: true
SpacingBetweenDeclarationsWithAnnotations: SpacingBetweenDeclarationsWithAnnotations:
active: false active: false
autoCorrect: true
SpacingBetweenDeclarationsWithComments: SpacingBetweenDeclarationsWithComments:
active: false active: false
autoCorrect: true
StringTemplate: StringTemplate:
active: true active: true
autoCorrect: true autoCorrect: true
......
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5.1-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-6.6-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
...@@ -33,7 +33,6 @@ import android.widget.EditText ...@@ -33,7 +33,6 @@ import android.widget.EditText
import android.widget.TextView import android.widget.TextView
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.appcompat.widget.Toolbar import androidx.appcompat.widget.Toolbar
import androidx.lifecycle.observe
import androidx.recyclerview.widget.DefaultItemAnimator import androidx.recyclerview.widget.DefaultItemAnimator
import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.ItemTouchHelper
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
......
...@@ -29,7 +29,6 @@ import androidx.activity.viewModels ...@@ -29,7 +29,6 @@ import androidx.activity.viewModels
import androidx.appcompat.widget.TooltipCompat import androidx.appcompat.widget.TooltipCompat
import androidx.coordinatorlayout.widget.CoordinatorLayout import androidx.coordinatorlayout.widget.CoordinatorLayout
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.observe
import androidx.lifecycle.whenStarted import androidx.lifecycle.whenStarted
import com.github.shadowsocks.MainActivity import com.github.shadowsocks.MainActivity
import com.github.shadowsocks.R import com.github.shadowsocks.R
......
...@@ -22,9 +22,8 @@ mavenPublish.targets.getByName("uploadArchives") { ...@@ -22,9 +22,8 @@ mavenPublish.targets.getByName("uploadArchives") {
} }
dependencies { dependencies {
api(kotlin("stdlib-jdk8", rootProject.extra.get("kotlinVersion").toString()))
api("androidx.core:core-ktx:1.3.1") api("androidx.core:core-ktx:1.3.1")
// https://android-developers.googleblog.com/2019/07/android-q-beta-5-update.html // https://android-developers.googleblog.com/2019/07/android-q-beta-5-update.html
api("androidx.drawerlayout:drawerlayout:1.1.0") api("androidx.drawerlayout:drawerlayout:1.1.0")
api("com.google.android.material:material:1.1.0") api("com.google.android.material:material:1.2.0")
} }
rootProject.extra.apply { rootProject.extra.apply {
set("androidPlugin", "com.android.tools.build:gradle:4.1.0-beta05") set("androidPlugin", "com.android.tools.build:gradle:4.1.0-rc01")
set("kotlinVersion", "1.3.72") set("kotlinVersion", "1.4.0")
} }
repositories { repositories {
......
...@@ -12,5 +12,5 @@ setupApp() ...@@ -12,5 +12,5 @@ setupApp()
android.defaultConfig.applicationId = "com.github.shadowsocks.tv" android.defaultConfig.applicationId = "com.github.shadowsocks.tv"
dependencies { dependencies {
implementation("androidx.leanback:leanback-preference:1.1.0-alpha03") implementation("androidx.leanback:leanback-preference:1.1.0-alpha04")
} }
...@@ -30,7 +30,6 @@ import android.widget.Toast ...@@ -30,7 +30,6 @@ import android.widget.Toast
import androidx.activity.result.ActivityResultLauncher import androidx.activity.result.ActivityResultLauncher
import androidx.fragment.app.viewModels import androidx.fragment.app.viewModels
import androidx.leanback.preference.LeanbackPreferenceFragmentCompat import androidx.leanback.preference.LeanbackPreferenceFragmentCompat
import androidx.lifecycle.observe
import androidx.preference.* import androidx.preference.*
import com.github.shadowsocks.BootReceiver import com.github.shadowsocks.BootReceiver
import com.github.shadowsocks.Core import com.github.shadowsocks.Core
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment