exec { commandLine "git", "submodule", "update", "--init", "--recursive" ignoreExitValue true } include ':library' include ':library:pmd' include ':library:test' include ':instrumentation' include ':annotation' include ':annotation:compiler' //include ':annotation:compiler:test' include ':annotation:ksp' include ':annotation:ksp:test' include ':annotation:ksp:integrationtest' include ':benchmark' include ':glide' include ':third_party:gif_decoder' include ':third_party:disklrucache' include ':samples:flickr' include ':samples:giphy' include ':samples:svg' include ':samples:gallery' include ':samples:contacturi' include ':samples:imgur' include ':integration' include ':integration:avif' include ':integration:compose' include ':integration:concurrent' include ':integration:cronet' include ':integration:gifencoder' include ':integration:ktx' include ':integration:okhttp' include ':integration:okhttp3' include ':integration:okhttp4' include ':integration:recyclerview' include ':integration:sqljournaldiskcache' include ':integration:volley' include ':testutil' include ':mocks' rootProject.name = 'glide-parent' dependencyResolutionManagement { // versionCatalogs end up in the global namespace and we can't nest namespaces, so we end up // stuffing everything into libs :/. versionCatalogs { libs { // Versions for things other than dependencies version('compile-sdk-version', 'android-34') version('min-sdk-version', '14') version('okhttp-min-sdk-version', '21') version('target-sdk-version', '32') version('pmd', '6.0.0') // 1.5.3 requires Kotlin 1.9.x, which doesn't seem to be supported by the coroutines // libraries: https://github.com/Kotlin/kotlinx.coroutines/issues/3812 version('kotlin-compiler-extension', '1.4.8') // Versions for dependencies version('compose', '1.5.1') version('coroutines', '1.7.3') version('dagger', '2.47') version('errorprone', '2.18.0') version('kotlin', '1.8.22') version('mockito', '5.3.1') version('retrofit', '2.3.0') version('androidx-benchmark', '1.2.0-beta05') version('androidx-espresso', '3.5.1') version('androidx-fragment', '1.6.1') version('ksp', '1.8.22-1.0.11') library('androidx-multidex', "androidx.multidex:multidex:2.0.1") library('autoservice', 'com.google.auto.service:auto-service:1.0-rc3') library('autoservice.annotations', 'com.google.auto.service:auto-service-annotations:1.0.1') library('android-gradle', 'com.android.tools.build:gradle:8.1.1') library('androidx-cardview', 'androidx.cardview:cardview:1.0.0') library('androidx-core', 'androidx.core:core:1.12.0') library('androidx-annotation', 'androidx.annotation:annotation:1.7.1') library('androidx-appcompat', 'androidx.appcompat:appcompat:1.6.1') library('androidx-benchmark.gradle', 'androidx.benchmark', 'benchmark-gradle-plugin').versionRef('androidx-benchmark') library('androidx-benchmark.junit', 'androidx.benchmark', 'benchmark-junit4').versionRef('androidx-benchmark') library('androidx-core.ktx', 'androidx.core:core-ktx:1.12.0') library('androidx-espresso', 'androidx.test.espresso', 'espresso-core').versionRef('androidx-espresso') library('androidx-espresso.idling', 'androidx.test.espresso.idling', 'idling-concurrent').versionRef('androidx-espresso') library('androidx-exifinterface', 'androidx.exifinterface:exifinterface:1.3.6') library('androidx-fragment', 'androidx.fragment', 'fragment').versionRef('androidx-fragment') library('androidx-fragment.ktx', 'androidx.fragment', 'fragment-ktx').versionRef('androidx-fragment') library('androidx-futures', 'androidx.concurrent:concurrent-futures:1.1.0') library('androidx-junit', 'androidx.test.ext:junit:1.1.5') library('androidx-recyclerview','androidx.recyclerview:recyclerview:1.3.1') library('androidx-test.core', 'androidx.test:core:1.4.0') library('androidx-test.ktx', 'androidx.test:core-ktx:1.5.0') library('androidx-test.ktx.junit', 'androidx.test.ext:junit-ktx:1.1.5') library('androidx-test.rules', 'androidx.test:rules:1.4.0') library('androidx-test.runner', 'androidx.test:runner:1.4.0') library('androidx-tracing', 'androidx.tracing:tracing:1.0.0') library('androidx.vectordrawable', 'androidx.vectordrawable:vectordrawable-animated:1.1.0') library('proguard-gradle', 'com.guardsquare:proguard-gradle:7.1.0') library('compose-foundation', 'androidx.compose.foundation', 'foundation').versionRef('compose') library('compose-material', 'androidx.compose.material:material:1.5.1') library('compose-ui', 'androidx.compose.ui', 'ui').versionRef('compose') library('compose-ui.testmanifest', 'androidx.compose.ui', 'ui-test-manifest').versionRef('compose') library('compose-ui.testjunit4', 'androidx.compose.ui', 'ui-test-junit4').versionRef('compose') library('coroutines-binarycompat.gradle', 'org.jetbrains.kotlinx:binary-compatibility-validator:0.11.0') library('coroutines-android', 'org.jetbrains.kotlinx', 'kotlinx-coroutines-android').versionRef('coroutines') library('coroutines-core', 'org.jetbrains.kotlinx', 'kotlinx-coroutines-core').versionRef('coroutines') library('coroutines-test', 'org.jetbrains.kotlinx', 'kotlinx-coroutines-test').versionRef('coroutines') library('cronet', 'com.google.android.gms:play-services-cronet:17.0.1') library('dagger', 'com.google.dagger', 'dagger').versionRef('dagger') library('dagger-compiler', 'com.google.dagger', 'dagger-compiler').versionRef('dagger') library('dagger-android', 'com.google.dagger', 'dagger-android').versionRef('dagger') library('dagger-android.support', 'com.google.dagger', 'dagger-android-support').versionRef('dagger') library('dagger-android.processor', 'com.google.dagger', 'dagger-android-processor').versionRef('dagger') library('dokka-gradle', 'org.jetbrains.dokka:dokka-gradle-plugin:1.8.20') library('errorprone-annotations', 'com.google.errorprone', 'error_prone_annotations').versionRef('errorprone') library('errorprone-core', 'com.google.errorprone', 'error_prone_core').versionRef('errorprone') library('errorprone-gradle', 'net.ltgt.gradle:gradle-errorprone-plugin:2.0.2') library('findbugs-jsr305', 'com.google.code.findbugs:jsr305:3.0.2') library('guava', 'com.google.guava:guava:28.1-android') library('guava-testlib', 'com.google.guava:guava-testlib:18.0') library('javapoet', 'com.squareup:javapoet:1.9.0') library('junit', 'junit:junit:4.13.2') library('kotlin-junit', 'org.jetbrains.kotlin', 'kotlin-test-junit').versionRef('kotlin') library('kotlin-jdk7', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7').versionRef('kotlin') library('kotlin-gradle', 'org.jetbrains.kotlin', 'kotlin-gradle-plugin').versionRef('kotlin') library('kotlin-test', 'org.jetbrains.kotlin', 'kotlin-test').versionRef('kotlin') library('kotlin-bom', 'org.jetbrains.kotlin', 'kotlin-bom').versionRef('kotlin') library('kotlinpoet', 'com.squareup:kotlinpoet:1.12.0') library('ksp', 'com.google.devtools.ksp', 'symbol-processing-api').versionRef('ksp') library('ksp-autoservice', 'dev.zacsweers.autoservice:auto-service-ksp:1.0.0') library('ksp-compiletesting', 'com.github.tschuchortdev:kotlin-compile-testing-ksp:1.4.9') library('ksp-gradle', 'com.google.devtools.ksp', 'com.google.devtools.ksp.gradle.plugin').versionRef('ksp') library('mockwebserver', 'com.squareup.okhttp3:mockwebserver:3.0.0-RC1') library('mockito', 'org.mockito', 'mockito-core').versionRef('mockito') library('mockito-android', 'org.mockito', 'mockito-android').versionRef('mockito') library('okhttp2', 'com.squareup.okhttp:okhttp:2.7.5') library('okhttp3', 'com.squareup.okhttp3:okhttp:3.10.0') library('okhttp4', 'com.squareup.okhttp3:okhttp:4.10.0') library('retrofit', 'com.squareup.retrofit2', 'retrofit').versionRef('retrofit') library('retrofit-gson', 'com.squareup.retrofit2', 'converter-gson').versionRef('retrofit') library('retrofit-rxjava', 'com.squareup.retrofit2', 'adapter-rxjava').versionRef('retrofit') library('robolectric', 'org.robolectric:robolectric:4.11.1') library('rx-android', 'io.reactivex:rxandroid:1.2.1') library('rx-java', 'io.reactivex:rxjava:1.3.8') library('svg', 'com.caverock:androidsvg:1.2.1') library('truth', 'com.google.truth:truth:1.1.5') library('violations', 'se.bjurr.violations:violations-gradle-plugin:1.8') library('volley', 'com.android.volley:volley:1.2.1') } } }