Skip to content

Commit 18f1cf2

Browse files
authored
Merge pull request TeamNewPipe#12776 from TeamNewPipe/depUpdate
2 parents 2ba87f7 + 03e9639 commit 18f1cf2

File tree

11 files changed

+156
-71
lines changed

11 files changed

+156
-71
lines changed

.editorconfig

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
#
2+
# SPDX-FileCopyrightText: 2025 NewPipe e.V. <https://newpipe-ev.de>
3+
# SPDX-License-Identifier: GPL-3.0-or-later
4+
#
5+
6+
root = true
7+
8+
[*.{kt,kts}]
9+
ktlint_standard_annotation = disabled
10+
ktlint_standard_argument-list-wrapping = disabled
11+
ktlint_standard_backing-property-naming = disabled
12+
ktlint_standard_blank-line-before-declaration = disabled
13+
ktlint_standard_blank-line-between-when-conditions = disabled
14+
ktlint_standard_chain-method-continuation = disabled
15+
ktlint_standard_class-signature = disabled
16+
ktlint_standard_comment-wrapping = disabled
17+
ktlint_standard_enum-wrapping = disabled
18+
ktlint_standard_function-expression-body = disabled
19+
ktlint_standard_function-literal = disabled
20+
ktlint_standard_function-signature = disabled
21+
ktlint_standard_indent = disabled
22+
ktlint_standard_kdoc = disabled
23+
ktlint_standard_max-line-length = disabled
24+
ktlint_standard_mixed-condition-operators = disabled
25+
ktlint_standard_multiline-expression-wrapping = disabled
26+
ktlint_standard_multiline-if-else = disabled
27+
ktlint_standard_no-blank-line-in-list = disabled
28+
ktlint_standard_no-consecutive-comments = disabled
29+
ktlint_standard_no-empty-first-line-in-class-body = disabled
30+
ktlint_standard_no-empty-first-line-in-method-block = disabled
31+
ktlint_standard_no-line-break-after-else = disabled
32+
ktlint_standard_no-semi = disabled
33+
ktlint_standard_no-single-line-block-comment = disabled
34+
ktlint_standard_package-name = disabled
35+
ktlint_standard_parameter-list-wrapping = disabled
36+
ktlint_standard_property-naming = disabled
37+
ktlint_standard_spacing-between-declarations-with-annotations = disabled
38+
ktlint_standard_spacing-between-declarations-with-comments = disabled
39+
ktlint_standard_statement-wrapping = disabled
40+
ktlint_standard_string-template-indent = disabled
41+
ktlint_standard_trailing-comma-on-call-site = disabled
42+
ktlint_standard_trailing-comma-on-declaration-site = disabled
43+
ktlint_standard_try-catch-finally-spacing = disabled
44+
ktlint_standard_when-entry-bracing = disabled

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ captures/
77
*.iml
88
*~
99
.weblate
10+
.kotlin
1011
*.class
1112
app/debug/
1213
app/release/

app/build.gradle.kts

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ plugins {
1313
checkstyle
1414
}
1515

16-
apply(from = "check-dependencies.gradle.kts")
17-
1816
val gitWorkingBranch = providers.exec {
1917
commandLine("git", "rev-parse", "--abbrev-ref", "HEAD")
2018
}.standardOutput.asText.map { it.trim() }
@@ -25,6 +23,15 @@ java {
2523
}
2624
}
2725

26+
kotlin {
27+
compilerOptions {
28+
// TODO: Drop annotation default target when it is stable
29+
freeCompilerArgs.addAll(
30+
"-Xannotation-default-target=param-property"
31+
)
32+
}
33+
}
34+
2835
android {
2936
compileSdk = 36
3037
namespace = "org.schabi.newpipe"
@@ -160,7 +167,7 @@ tasks.register<JavaExec>("runKtlint") {
160167
outputs.dir(outputDir)
161168
mainClass.set("com.pinterest.ktlint.Main")
162169
classpath = configurations.getByName("ktlint")
163-
args = listOf("src/**/*.kt")
170+
args = listOf("--editorconfig=../.editorconfig", "src/**/*.kt")
164171
jvmArgs = listOf("--add-opens", "java.base/java.lang=ALL-UNNAMED")
165172
}
166173

@@ -169,10 +176,14 @@ tasks.register<JavaExec>("formatKtlint") {
169176
outputs.dir(outputDir)
170177
mainClass.set("com.pinterest.ktlint.Main")
171178
classpath = configurations.getByName("ktlint")
172-
args = listOf("-F", "src/**/*.kt")
179+
args = listOf("--editorconfig=../.editorconfig", "-F", "src/**/*.kt")
173180
jvmArgs = listOf("--add-opens", "java.base/java.lang=ALL-UNNAMED")
174181
}
175182

183+
tasks.register<CheckDependenciesOrder>("checkDependenciesOrder") {
184+
tomlFile = layout.projectDirectory.file("../gradle/libs.versions.toml")
185+
}
186+
176187
afterEvaluate {
177188
tasks.named("preDebugBuild").configure {
178189
if (!System.getProperties().containsKey("skipFormatKtlint")) {

buildSrc/build.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
/*
2+
* SPDX-FileCopyrightText: 2025 NewPipe e.V. <https://newpipe-ev.de>
3+
* SPDX-License-Identifier: GPL-3.0-or-later
4+
*/
5+
6+
plugins {
7+
`kotlin-dsl`
8+
}
9+
10+
repositories {
11+
gradlePluginPortal()
12+
}

app/check-dependencies.gradle.kts renamed to buildSrc/src/main/kotlin/CheckDependenciesOrder.kt

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,27 @@
44
* SPDX-License-Identifier: GPL-3.0-or-later
55
*/
66

7-
tasks.register("checkDependenciesOrder") {
8-
group = "verification"
9-
description = "Checks that each section in libs.versions.toml is sorted alphabetically"
7+
import org.gradle.api.DefaultTask
8+
import org.gradle.api.file.RegularFileProperty
9+
import org.gradle.api.tasks.InputFile
10+
import org.gradle.api.tasks.TaskAction
1011

11-
val tomlFile = file("../gradle/libs.versions.toml")
12+
abstract class CheckDependenciesOrder : DefaultTask() {
1213

13-
doLast {
14-
if (!tomlFile.exists()) {
15-
throw GradleException("TOML file not found")
16-
}
14+
@get:InputFile
15+
abstract val tomlFile: RegularFileProperty
16+
17+
init {
18+
group = "verification"
19+
description = "Checks that each section in libs.versions.toml is sorted alphabetically"
20+
}
21+
22+
@TaskAction
23+
fun run() {
24+
val file = tomlFile.get().asFile
25+
if (!file.exists()) error("TOML file not found")
1726

18-
val lines = tomlFile.readLines()
27+
val lines = file.readLines()
1928
val nonSortedBlocks = mutableListOf<List<String>>()
2029
var currentBlock = mutableListOf<String>()
2130
var prevLine = ""
@@ -50,7 +59,7 @@ tasks.register("checkDependenciesOrder") {
5059
}
5160

5261
if (nonSortedBlocks.isNotEmpty()) {
53-
throw GradleException(
62+
error(
5463
"The following lines were not sorted:\n" +
5564
nonSortedBlocks.joinToString("\n\n") { it.joinToString("\n") }
5665
)

gradle.properties

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@ android.nonTransitiveRClass=true
44
android.useAndroidX=true
55
org.gradle.jvmargs=-Xmx2048M --add-opens jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
66
systemProp.file.encoding=utf-8
7+
8+
# https://docs.gradle.org/current/userguide/configuration_cache.html
9+
org.gradle.configuration-cache=true

gradle/libs.versions.toml

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,47 +4,47 @@
44
#
55

66
[versions]
7-
acra = "5.11.3"
8-
agp = "8.13.0"
7+
acra = "5.13.1"
8+
agp = "8.13.1"
99
appcompat = "1.7.1"
10-
assertj = "3.24.2"
10+
assertj = "3.27.6"
1111
autoservice = "1.1.1"
1212
bridge = "v2.0.2"
1313
cardview = "1.0.0"
14-
checkstyle = "10.26.1"
15-
constraintlayout = "2.1.4"
16-
core = "1.12.0"
17-
desugar = "2.0.4"
18-
documentfile = "1.0.1"
19-
exoplayer = "2.18.7"
20-
fragment = "1.6.2"
14+
checkstyle = "12.1.2"
15+
constraintlayout = "2.2.1"
16+
core = "1.17.0"
17+
desugar = "2.1.5"
18+
documentfile = "1.1.0"
19+
exoplayer = "2.19.1"
20+
fragment = "1.8.9"
2121
groupie = "2.10.1"
2222
jsoup = "1.21.2"
2323
junit = "4.13.2"
24-
junit-ext = "1.1.5"
25-
kotlin = "1.9.25"
26-
ksp = "1.9.25-1.0.20"
27-
ktlint = "0.45.2"
28-
leakcanary = "2.12"
29-
lifecycle = "2.6.2"
24+
junit-ext = "1.3.0"
25+
kotlin = "2.2.21"
26+
ksp = "2.3.2"
27+
ktlint = "1.8.0"
28+
leakcanary = "2.14"
29+
lifecycle = "2.9.4" # Newer versions require minSdk >= 23
3030
localbroadcastmanager = "1.1.0"
3131
markwon = "4.6.2"
32-
material = "1.11.0"
32+
material = "1.13.0"
3333
media = "1.7.1"
34-
mockitoCore = "5.6.0"
35-
okhttp = "4.12.0"
36-
phoenix = "2.1.2"
34+
mockitoCore = "5.20.0"
35+
okhttp = "5.3.2"
36+
phoenix = "3.0.0"
3737
#noinspection NewerVersionAvailable,GradleDependency --> 2.8 is the last version, not 2.71828!
3838
picasso = "2.8"
3939
preference = "1.2.1"
4040
prettytime = "5.0.8.Final"
41-
recyclerview = "1.3.2"
42-
room = "2.6.1"
43-
runner = "1.5.2"
41+
recyclerview = "1.4.0"
42+
room = "2.7.2" # Newer versions require minSdk >= 23
43+
runner = "1.7.0"
4444
rxandroid = "3.0.2"
4545
rxbinding = "4.0.0"
4646
rxjava = "3.1.12"
47-
sonarqube = "4.0.0.2929"
47+
sonarqube = "7.0.1.6134"
4848
statesaver = "1.4.1" # TODO: Drop because it is deprecated and incompatible with KSP2
4949
stetho = "1.6.0"
5050
swiperefreshlayout = "1.1.0"
@@ -60,8 +60,8 @@ teamnewpipe-nanojson = "e9d656ddb49a412a5a0a5d5ef20ca7ef09549996"
6060
# to cause jitpack to regenerate the artifact.
6161
teamnewpipe-newpipe-extractor = "3af73262cc60cf555fd5f1d691f6c58e2db38ef5"
6262
viewpager2 = "1.1.0"
63-
webkit = "1.9.0"
64-
work = "2.8.1"
63+
webkit = "1.14.0"
64+
work = "2.10.5" # Newer versions require minSdk >= 23
6565

6666
[libraries]
6767
acra-core = { module = "ch.acra:acra-core", version.ref = "acra" }
@@ -87,7 +87,7 @@ androidx-runner = { module = "androidx.test:runner", version.ref = "runner" }
8787
androidx-swiperefreshlayout = { module = "androidx.swiperefreshlayout:swiperefreshlayout", version.ref = "swiperefreshlayout" }
8888
androidx-viewpager2 = { module = "androidx.viewpager2:viewpager2", version.ref = "viewpager2" }
8989
androidx-webkit = { module = "androidx.webkit:webkit", version.ref = "webkit" }
90-
androidx-work-runtime = { module = "androidx.work:work-runtime-ktx", version.ref = "work" }
90+
androidx-work-runtime = { module = "androidx.work:work-runtime", version.ref = "work" }
9191
androidx-work-rxjava3 = { module = "androidx.work:work-rxjava3", version.ref = "work" }
9292
assertj-core = { module = "org.assertj:assertj-core", version.ref = "assertj" }
9393
evernote-statesaver-compiler = { module = "com.evernote:android-state-processor", version.ref = "statesaver" }
@@ -119,7 +119,7 @@ newpipe-nanojson = { module = "com.github.TeamNewPipe:nanojson", version.ref = "
119119
noties-markwon-core = { module = "io.noties.markwon:core", version.ref = "markwon" }
120120
noties-markwon-linkify = { module = "io.noties.markwon:linkify", version.ref = "markwon" }
121121
ocpsoft-prettytime = { module = "org.ocpsoft.prettytime:prettytime", version.ref = "prettytime" }
122-
pinterest-ktlint = { module = "com.pinterest:ktlint", version.ref = "ktlint" }
122+
pinterest-ktlint = { module = "com.pinterest.ktlint:ktlint-cli", version.ref = "ktlint" }
123123
puppycrawl-checkstyle = { module = "com.puppycrawl.tools:checkstyle", version.ref = "checkstyle" }
124124
reactivex-rxandroid = { module = "io.reactivex.rxjava3:rxandroid", version.ref = "rxandroid" }
125125
reactivex-rxjava = { module = "io.reactivex.rxjava3:rxjava", version.ref = "rxjava" }

gradle/wrapper/gradle-wrapper.jar

-16.1 KB
Binary file not shown.
Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionSha256Sum=20f1b1176237254a6fc204d8434196fa11a4cfb387567519c61556e8710aed78
4-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
3+
distributionSha256Sum=72f44c9f8ebcb1af43838f45ee5c4aa9c5444898b3468ab3f4af7b6076c5bc3f
4+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.1-bin.zip
55
networkTimeout=10000
6+
validateDistributionUrl=true
67
zipStoreBase=GRADLE_USER_HOME
78
zipStorePath=wrapper/dists

gradlew

Lines changed: 18 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)