[versions] agp = "8.5.0" agp-tooling = "8.5.0" gradle-tooling = "8.6" junit-jupiter = "5.10.2" kotlin = "1.9.24" kotlin-coroutines = "1.8.1" tree-sitter = "4.3.1" editor = "0.23.4-ce8de8e-SNAPSHOT" glide = "4.16.0" androidx-vectordrawable = "1.2.0" androidx-navigation = "2.7.7" ksp = "1.9.24-1.0.20" antlr4 = "4.13.1" androidx-work = "2.9.0" androidx-espresso = "3.5.1" retrofit = "2.9.0" markwon = "4.6.2" maven-publish-plugin = "0.29.0" logback = "1.5.3" realm = "10.18.0" benchmark = "1.2.4" benchmark-junit4 = "1.2.4" [libraries] # Dependencies in composite build composite-appintro = { module = "com.itsaky.androidide.build:appintro" } composite-desugaringCore = { module = "com.itsaky.androidide.build:desugaring-core" } composite-fuzzysearch = { module = "com.itsaky.androidide.build:fuzzysearch" } composite-googleJavaFormat = { module = "com.itsaky.androidide.build:google-java-format" } composite-javaCompiler = { module = "com.itsaky.androidide.build:java-compiler" } composite-javac = { module = "com.itsaky.androidide.build:javac" } composite-jdkCompiler = { module = "com.itsaky.androidide.build:jdk-compiler" } composite-jdkJdeps = { module = "com.itsaky.androidide.build:jdk-jdeps" } composite-javapoet = { module = "com.itsaky.androidide.build:javapoet" } composite-jaxp = { module = "com.itsaky.androidide.build:jaxp" } composite-jdt = { module = "com.itsaky.androidide.build:jdt" } composite-layoutlibApi = { module = "com.itsaky.androidide.build:layoutlib-api" } # AndroidIDE androidide-ts = { module = "com.itsaky.androidide.treesitter:android-tree-sitter", version.ref = "tree-sitter" } androidide-ts-java = { module = "com.itsaky.androidide.treesitter:tree-sitter-java", version.ref = "tree-sitter" } androidide-ts-json = { module = "com.itsaky.androidide.treesitter:tree-sitter-json", version.ref = "tree-sitter" } androidide-ts-kotlin = { module = "com.itsaky.androidide.treesitter:tree-sitter-kotlin", version.ref = "tree-sitter" } androidide-ts-log = { module = "com.itsaky.androidide.treesitter:tree-sitter-log", version.ref = "tree-sitter" } androidide-ts-xml = { module = "com.itsaky.androidide.treesitter:tree-sitter-xml", version.ref = "tree-sitter" } # Common common-editor = { module = "io.github.Rosemoe.sora-editor:editor", version.ref = "editor" } common-utilcode = { module = "com.blankj:utilcodex", version = "1.31.1" } common-glide = { module = "com.github.bumptech.glide:glide", version.ref = "glide" } common-glide_ap = { module = "com.github.bumptech.glide:compiler", version.ref = "glide" } common-jsoup = { module = "org.jsoup:jsoup", version = "1.17.2" } common-antlr4 = { module = "org.antlr:antlr4", version.ref = "antlr4" } common-antlr4-runtime = { module = "org.antlr:antlr4-runtime", version.ref = "antlr4" } common-javaparser = { module = "com.github.javaparser:javaparser-symbol-solver-core", version = "3.26.1" } common-lang3 = { module = "org.apache.commons:commons-lang3", version = "3.14.0" } common-io = { module = "commons-io:commons-io", version = "2.15.1" } common-kotlin = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk8", version.ref = "kotlin" } common-kotlin-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlin-coroutines" } common-jkotlin = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk8", version.ref = "kotlin" } common-eventbus_ap = { module = "org.greenrobot:eventbus-annotation-processor", version = "3.3.1" } common-javapoet = { module = "com.squareup:javapoet", version = "1.13.0" } common-ksp = { module = "com.google.devtools.ksp:symbol-processing-api", version.ref = "ksp" } common-jsonrpc = { module = "org.eclipse.lsp4j:org.eclipse.lsp4j.jsonrpc", version = "0.22.0" } common-leakcanary = { module = "com.squareup.leakcanary:leakcanary-android", version = "2.13" } common-retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" } common-retrofit-gson = { module = "com.squareup.retrofit2:converter-gson", version.ref = "retrofit" } common-markwon-core = { module = "io.noties.markwon:core", version.ref = "markwon" } common-markwon-extStrikethrough = { module = "io.noties.markwon:ext-strikethrough", version.ref = "markwon" } common-markwon-linkify = { module = "io.noties.markwon:linkify", version.ref = "markwon" } common-markwon-recycler = { module = "io.noties.markwon:recycler", version.ref = "markwon" } common-hiddenApiBypass = { module = "org.lsposed.hiddenapibypass:hiddenapibypass", version = "4.3" } common-termuxAmLib = { module = "com.termux:termux-am-library", version = "v2.0.0" } common-charts = { module = "com.github.AppDevNext:AndroidChart", version = "3.1.0.21" } # AndroidX androidx-annotation = { module = "androidx.annotation:annotation", version = "1.7.1" } androidx-appcompat = { module = "androidx.appcompat:appcompat", version = "1.6.1" } androidx-cardview = { module = "androidx.cardview:cardview", version = "1.0.0" } androidx-collection = { module = "androidx.collection:collection", version = "1.4.0" } androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version = "2.1.4" } androidx-coordinatorlayout = { module = "androidx.coordinatorlayout:coordinatorlayout", version = "1.2.0" } androidx-drawer = { module = "androidx.drawerlayout:drawerlayout", version = "1.2.0" } androidx-grid = { module = "androidx.gridlayout:gridlayout", version = "1.0.0" } androidx-preference = { module = "androidx.preference:preference", version = "1.2.1" } androidx-recyclerview = { module = "androidx.recyclerview:recyclerview", version = "1.3.2" } androidx-vectors = { module = "androidx.vectordrawable:vectordrawable", version.ref = "androidx-vectordrawable" } androidx-animated_vectors = { module = "androidx.vectordrawable:vectordrawable-animated", version.ref = "androidx-vectordrawable" } androidx-core = { module = "androidx.core:core", version = "1.13.1" } androidx-core-ktx = { module = "androidx.core:core-ktx", version = "1.13.1" } androidx-fragment_ktx = { module = "androidx.fragment:fragment-ktx", version = "1.6.2" } androidx-libDesugaring = { module = "com.android.tools:desugar_jdk_libs", version = "2.0.4" } androidx-splashscreen = { module = "androidx.core:core-splashscreen", version = "1.0.1" } androidx-transition = { module = "androidx.transition:transition-ktx", version = "1.5.0" } androidx-nav-fragment = { module = "androidx.navigation:navigation-fragment-ktx", version.ref = "androidx-navigation" } androidx-nav-ui = { module = "androidx.navigation:navigation-ui-ktx", version.ref = "androidx-navigation" } androidx-tracing = { module = "androidx.tracing:tracing", version = "1.2.0" } androidx-tracing-ktx = { module = "androidx.tracing:tracing-ktx", version = "1.2.0" } androidx-viewpager = { module = "androidx.viewpager:viewpager", version = "1.0.0" } androidx-viewpager2 = { module = "androidx.viewpager2:viewpager2", version = "1.0.0" } #noinspection GradleDependency androidx-window-v1alpha9 = { module = "androidx.window:window", version = "1.0.0-alpha09" } androidx-work = { module = "androidx.work:work-runtime", version.ref = "androidx-work" } androidx-work-ktx = { module = "androidx.work:work-runtime-ktx", version.ref = "androidx-work" } # Google google-material = { module = "com.google.android.material:material", version = "1.11.0" } google-gson = { module = "com.google.code.gson:gson", version = "2.10.1" } google-guava = { module = "com.google.guava:guava", version = "32.1.3-android" } google-auto-value-annotations = { module = "com.google.auto.value:auto-value-annotations", version = "1.10.4" } google-auto-value-ap = { module = "com.google.auto.value:auto-value", version = "1.10.4" } google-auto-service-annotations = { module = "com.google.auto.service:auto-service-annotations", version = "1.1.1" } google-auto-service = { module = "com.google.auto.service:auto-service", version = "1.1.1" } google-protobuf = { module = "com.google.protobuf:protobuf-javalite", version = "3.25.3" } google-java-format = { module = "com.google.googlejavaformat:google-java-format", version = "1.20.0" } google-flexbox = { module = "com.google.android.flexbox:flexbox", version = "3.0.0" } # AAPT2 aapt2-common = { module = "com.android.tools:common", version = "31.4.1" } aapt2-annotations = { module = "com.android.tools:annotations", version = "31.2.2" } aapt2-jb-annotations = { module = "org.jetbrains:annotations", version = "24.1.0" } aapt2-proto = { module = "com.android.tools.build:aapt2-proto", version = "8.3.0-10880808" } # use logback-core from logback-android instead #logging-logback-core = { module = "ch.qos.logback:logback-core", version.ref = "logback" } logging-logback-core = { module = "com.itsaky.androidide.build:logback-core" } logging-logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" } # XML xml-xercesImpl = { module = "xerces:xercesImpl", version = "2.12.2" } xml-apis = { module = "xml-apis:xml-apis", version = "2.0.2" } xml-remark = { module = "com.kotcrab.remark:remark", version = "1.2.0" } xml-resolver = { module = "xml-resolver:xml-resolver", version = "1.2" } xml-jb-annotations = { module = "org.jetbrains:annotations", version = "24.1.0" } # GIT git-jgit = { module = "org.eclipse.jgit:org.eclipse.jgit", version = "6.8.0.202311291450-r" } # Tests tests-junit = { module = "junit:junit", version = "4.13.2" } tests-junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit-jupiter" } tests-junit-platformLauncher = { module = "org.junit.platform:junit-platform-launcher" } tests-google-truth = { module = "com.google.truth:truth", version = "1.4.4" } tests-robolectric = { module = "org.robolectric:robolectric", version = "4.11.1" } tests-androidx-test-core = { module = "androidx.test:core", version = "1.5.0" } tests-androidx-test-runner = { module = "androidx.test:runner", version = "1.5.2" } tests-androidx-test-rules = { module = "androidx.test:rules", version = "1.5.0" } tests-androidx-junit = { module = "androidx.test.ext:junit", version = "1.1.5" } tests-androidx-work-testing = { module = "androidx.work:work-testing", version.ref = "androidx-work" } tests-androidx-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "androidx-espresso" } tests-androidx-espresso-contrib = { module = "androidx.test.espresso:espresso-contrib", version.ref = "androidx-espresso" } tests-androidx-uiautomator = { module = "androidx.test.uiautomator:uiautomator", version = "2.3.0" } tests-mockito-kotlin = { module = "org.mockito.kotlin:mockito-kotlin", version = "5.2.1" } tests-mockk = { module = "io.mockk:mockk", version = "1.13.10" } tests-barista = { module = "com.adevinta.android:barista", version = "4.3.0" } # Tooling tooling-builderModel = { module = "com.android.tools.build:builder-model", version.ref = "agp-tooling" } tooling-gradleApi = { module = "com.itsaky.androidide.gradle:gradle-tooling-api", version.ref = "gradle-tooling" } tooling-slf4j = { module = "org.slf4j:slf4j-api", version = "2.0.12" } # Classpaths android-gradle-plugin = { module = "com.android.tools.build:gradle", version.ref = "agp" } kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" } nav-safe-args-gradle-plugin = { module = "androidx.navigation:navigation-safe-args-gradle-plugin", version.ref = "androidx-navigation" } maven-publish = { module = "com.vanniktech:gradle-maven-publish-plugin", version.ref = "maven-publish-plugin" } androidx-benchmark-junit4 = { group = "androidx.benchmark", name = "benchmark-junit4", version.ref = "benchmark-junit4" } [plugins] android-application = { id = "com.android.application", version.ref = "agp" } android-library = { id = "com.android.library", version.ref = "agp" } kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } maven-publish = { id = "com.vanniktech.maven.publish.base", version.ref = "maven-publish-plugin" } gradle-publish = { id = "com.gradle.plugin-publish", version = "1.2.1" } protobuf = { id = "com.google.protobuf", version = "0.9.4" } benchmark = { id = "androidx.benchmark", version.ref = "benchmark" }