diff --git a/build.gradle b/build.gradle
index 89825428fb..e17f357905 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,12 +1,11 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
-
apply from: 'dependencies.gradle'
+ apply from: 'dependencies_groups.gradle'
repositories {
google()
- jcenter()
maven {
url "https://plugins.gradle.org/m2/"
}
@@ -37,45 +36,50 @@ allprojects {
apply plugin: "org.jlleitschuh.gradle.ktlint"
repositories {
- // For olm library. This has to be declared first, to ensure that Olm library is not downloaded from another repo
- maven { url 'https://gitlab.matrix.org/api/v4/projects/27/packages/maven' }
-
+ // For olm library.
+ maven {
+ url 'https://gitlab.matrix.org/api/v4/projects/27/packages/maven'
+ content {
+ groups.olm.regex.each { includeGroupByRegex it }
+ groups.olm.group.each { includeGroup it }
+ }
+ }
maven {
url 'https://jitpack.io'
content {
- // Use this repo only for FilePicker
- includeGroupByRegex "com\\.github\\.jaiselrahman"
- // And monarchy
- includeGroupByRegex "com\\.github\\.Zhuinden"
- // And ucrop
- includeGroupByRegex "com\\.github\\.yalantis"
- // JsonViewer
- includeGroupByRegex 'com\\.github\\.BillCarsonFr'
- // PhotoView
- includeGroupByRegex 'com\\.github\\.chrisbanes'
- // PFLockScreen-Android
- includeGroupByRegex 'com\\.github\\.vector-im'
- // DraggableView
- includeGroupByRegex 'com\\.github\\.hyuwah'
-
- // Chat effects
- includeGroupByRegex 'com\\.github\\.jetradarmobile'
- includeGroupByRegex 'nl\\.dionsegijn'
-
- // Voice RecordView
- includeGroupByRegex 'com\\.github\\.Armen101'
+ groups.jitpack.regex.each { includeGroupByRegex it }
+ groups.jitpack.group.each { includeGroup it }
}
}
- maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
// Jitsi repo
maven {
url "https://github.com/vector-im/jitsi_libre_maven/raw/main/android-sdk-3.10.0"
// Note: to test Jitsi release you can use a local file like this:
// url "file:///Users/bmarty/workspaces/jitsi_libre_maven/android-sdk-3.10.0"
+ content {
+ groups.jitsi.regex.each { includeGroupByRegex it }
+ groups.jitsi.group.each { includeGroup it }
+ }
+ }
+ google {
+ content {
+ groups.google.regex.each { includeGroupByRegex it }
+ groups.google.group.each { includeGroup it }
+ }
+ }
+ mavenCentral {
+ content {
+ groups.mavenCentral.regex.each { includeGroupByRegex it }
+ groups.mavenCentral.group.each { includeGroup it }
+ }
+ }
+ //noinspection JcenterRepositoryObsolete
+ jcenter {
+ content {
+ groups.jcenter.regex.each { includeGroupByRegex it }
+ groups.jcenter.group.each { includeGroup it }
+ }
}
- google()
- mavenCentral()
- jcenter()
}
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
diff --git a/changelog.d/4670.misc b/changelog.d/4670.misc
new file mode 100644
index 0000000000..6b1233145b
--- /dev/null
+++ b/changelog.d/4670.misc
@@ -0,0 +1 @@
+Add explicit dependency location, regarding the several maven repository. Also update some libraries (flexbox and alerter), and do some cleanup.
\ No newline at end of file
diff --git a/dependencies_groups.gradle b/dependencies_groups.gradle
new file mode 100644
index 0000000000..c677290adc
--- /dev/null
+++ b/dependencies_groups.gradle
@@ -0,0 +1,200 @@
+ext.groups = [
+ jitpack : [
+ regex: [
+ ],
+ group: [
+ 'com.github.Armen101',
+ 'com.github.BillCarsonFr',
+ 'com.github.chrisbanes',
+ 'com.github.hyuwah',
+ 'com.github.jetradarmobile',
+ 'com.github.tapadoo',
+ 'com.github.vector-im',
+ 'com.github.yalantis',
+ 'com.github.Zhuinden',
+ ]
+ ],
+ olm : [
+ regex: [
+ ],
+ group: [
+ 'org.matrix.android',
+ ]
+ ],
+ jitsi : [
+ regex: [
+ ],
+ group: [
+ 'com.facebook.react',
+ 'org.jitsi.react',
+ 'org.webkit',
+ ]
+ ],
+ google : [
+ regex: [
+ 'androidx\\..*',
+ 'com\\.android\\.tools\\..*',
+ 'com\\.google\\.android\\..*',
+ ],
+ group: [
+ 'com.google.firebase',
+ 'com.android',
+ 'com.android.tools',
+ ]
+ ],
+ mavenCentral: [
+ regex: [
+ ],
+ group: [
+ 'com.adevinta.android',
+ 'com.airbnb.android',
+ 'com.almworks.sqlite4java',
+ 'com.arthenica',
+ 'com.atlassian.commonmark',
+ 'com.atlassian.pom',
+ 'com.beust',
+ 'com.davemorrissey.labs',
+ 'com.dropbox.core',
+ 'com.facebook.fresco',
+ 'com.facebook.infer.annotation',
+ 'com.facebook.soloader',
+ 'com.facebook.stetho',
+ 'com.fasterxml',
+ 'com.fasterxml.jackson',
+ 'com.fasterxml.jackson.core',
+ 'com.gabrielittner.threetenbp',
+ 'com.getkeepsafe.relinker',
+ 'com.github.bumptech.glide',
+ 'com.github.filippudak',
+ 'com.github.filippudak.progresspieview',
+ 'com.github.javaparser',
+ 'com.github.piasy',
+ 'com.github.shyiko.klob',
+ 'com.google',
+ 'com.google.auto.service',
+ 'com.google.auto.value',
+ 'com.google.code.findbugs',
+ 'com.google.code.gson',
+ 'com.google.dagger',
+ 'com.google.devtools.ksp',
+ 'com.google.errorprone',
+ 'com.google.googlejavaformat',
+ 'com.google.guava',
+ 'com.google.j2objc',
+ 'com.google.jimfs',
+ 'com.google.protobuf',
+ 'com.google.zxing',
+ 'com.googlecode.htmlcompressor',
+ 'com.googlecode.json-simple',
+ 'com.googlecode.libphonenumber',
+ 'com.ibm.icu',
+ 'com.jakewharton.android.repackaged',
+ 'com.jakewharton.timber',
+ 'com.linkedin.dexmaker',
+ 'com.nulab-inc',
+ 'com.otaliastudios.opengl',
+ 'com.parse.bolts',
+ 'com.pinterest',
+ 'com.pinterest.ktlint',
+ 'com.squareup',
+ 'com.squareup.duktape',
+ 'com.squareup.moshi',
+ 'com.squareup.okhttp3',
+ 'com.squareup.okio',
+ 'com.squareup.retrofit2',
+ 'com.sun.activation',
+ 'com.sun.istack',
+ 'com.sun.xml.bind',
+ 'com.sun.xml.bind.mvn',
+ 'com.sun.xml.fastinfoset',
+ 'com.thoughtworks.qdox',
+ 'com.vanniktech',
+ 'commons-cli',
+ 'commons-codec',
+ 'commons-io',
+ 'commons-logging',
+ 'info.picocli',
+ 'io.arrow-kt',
+ 'io.github.detekt.sarif4k',
+ 'io.github.reactivecircus.flowbinding',
+ 'io.jsonwebtoken',
+ 'io.kindedj',
+ 'io.mockk',
+ 'io.noties.markwon',
+ 'io.reactivex.rxjava2',
+ 'io.realm',
+ 'it.unimi.dsi',
+ 'jakarta.activation',
+ 'jakarta.xml.bind',
+ 'javax.annotation',
+ 'javax.inject',
+ 'jline',
+ 'jp.wasabeef',
+ 'junit',
+ 'me.leolin',
+ 'me.saket',
+ 'net.bytebuddy',
+ 'net.java',
+ 'net.java.dev.jna',
+ 'net.lachlanmckee',
+ 'net.ltgt.gradle.incap',
+ 'net.sf.jopt-simple',
+ 'net.sf.kxml',
+ 'nl.dionsegijn',
+ 'org.amshove.kluent',
+ 'org.apache',
+ 'org.apache.ant',
+ 'org.apache.commons',
+ 'org.apache.httpcomponents',
+ 'org.apache.sanselan',
+ 'org.bouncycastle',
+ 'org.checkerframework',
+ 'org.codehaus',
+ 'org.codehaus.groovy',
+ 'org.codehaus.mojo',
+ 'org.eclipse.ee4j',
+ 'org.ec4j.core',
+ 'org.glassfish.jaxb',
+ 'org.hamcrest',
+ 'org.jetbrains',
+ 'org.jetbrains.intellij.deps',
+ 'org.jetbrains.kotlin',
+ 'org.jetbrains.kotlinx',
+ 'org.jsoup',
+ 'org.junit',
+ 'org.junit.jupiter',
+ 'org.junit.platform',
+ 'org.jvnet.staxex',
+ 'org.mockito',
+ 'org.mongodb',
+ 'org.objenesis',
+ 'org.opentest4j',
+ 'org.ow2',
+ 'org.ow2.asm',
+ 'org.ow2.asm',
+ 'org.reactivestreams',
+ 'org.robolectric',
+ 'org.slf4j',
+ 'org.sonatype.oss',
+ 'org.testng',
+ 'org.threeten',
+ 'xerces',
+ 'xml-apis',
+ ]
+ ],
+ jcenter : [
+ regex: [
+ ],
+ group: [
+ 'com.amulyakhare',
+ 'com.otaliastudios',
+ 'com.yqritc',
+ // https://github.com/cmelchior/realmfieldnameshelper/issues/42
+ 'dk.ilios',
+ 'im.dlg',
+ 'me.dm7.barcodescanner',
+ 'me.gujun.android',
+ ]
+ ]
+]
+
diff --git a/vector/build.gradle b/vector/build.gradle
index 26bfd3badf..9f6c91c2b5 100644
--- a/vector/build.gradle
+++ b/vector/build.gradle
@@ -316,11 +316,6 @@ android {
}
}
-configurations {
- // videocache includes a sl4j logger which causes mockk to attempt to call the static android Log
- testImplementation.exclude group: 'org.slf4j', module: 'slf4j-android'
-}
-
dependencies {
implementation project(":matrix-sdk-android")
@@ -397,7 +392,7 @@ dependencies {
implementation libs.markwon.html
implementation 'com.googlecode.htmlcompressor:htmlcompressor:1.5.2'
implementation 'me.saket:better-link-movement-method:2.2.0'
- implementation 'com.google.android:flexbox:2.0.1'
+ implementation 'com.google.android.flexbox:flexbox:3.0.0'
implementation libs.androidx.autoFill
implementation 'jp.wasabeef:glide-transformations:4.3.0'
implementation 'com.github.vector-im:PFLockScreen-Android:1.0.0-beta12'
@@ -414,7 +409,7 @@ dependencies {
implementation 'com.arthenica:ffmpeg-kit-audio:4.5.LTS'
// Alerter
- implementation 'com.tapadoo.android:alerter:7.0.1'
+ implementation 'com.github.tapadoo:alerter:7.2.4'
implementation 'com.otaliastudios:autocomplete:1.1.0'
@@ -432,7 +427,6 @@ dependencies {
implementation libs.github.glide
kapt libs.github.glideCompiler
- implementation 'com.danikula:videocache:2.7.1'
implementation 'com.github.yalantis:ucrop:2.2.7'
// Badge for compatibility
diff --git a/vector/src/main/assets/open_source_licenses.html b/vector/src/main/assets/open_source_licenses.html
index 529b7da2f1..5afee2389e 100755
--- a/vector/src/main/assets/open_source_licenses.html
+++ b/vector/src/main/assets/open_source_licenses.html
@@ -333,11 +333,6 @@ SOFTWARE.
Copyright 2012 Square, Inc.
-