plugins { id "checkstyle" id "com.google.protobuf" version "0.9.5" } test { // Pass on downloader type to tests for different CI jobs. See DownloaderFactory.java and ci.yml if (System.properties.containsKey('downloader')) { systemProperty('downloader', System.getProperty('downloader')) } useJUnitPlatform() dependsOn checkstyleMain // run checkstyle when testing } checkstyle { getConfigDirectory().set(rootProject.file("checkstyle")) ignoreFailures false showViolations true toolVersion checkstyleVersion } // Exclude Protobuf generated files from Checkstyle checkstyleMain.exclude("org/schabi/newpipe/extractor/services/youtube/protos") checkstyleTest { enabled false // do not checkstyle test files } ext { rhinoVersion = '1.8.0' protobufVersion = '4.32.0' } dependencies { implementation project(':timeago-parser') implementation "com.github.TeamNewPipe:nanojson:$nanojsonVersion" implementation 'org.jsoup:jsoup:1.21.2' implementation "com.google.code.findbugs:jsr305:$jsr305Version" implementation "com.google.protobuf:protobuf-javalite:$protobufVersion" implementation "org.mozilla:rhino:$rhinoVersion" implementation "org.mozilla:rhino-engine:$rhinoVersion" checkstyle "com.puppycrawl.tools:checkstyle:$checkstyleVersion" testImplementation platform("org.junit:junit-bom:$junitVersion") testImplementation 'org.junit.jupiter:junit-jupiter-api' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' testImplementation 'org.junit.jupiter:junit-jupiter-params' testImplementation "com.squareup.okhttp3:okhttp:4.12.0" testImplementation 'com.google.code.gson:gson:2.13.1' } protobuf { protoc { artifact = "com.google.protobuf:protoc:$protobufVersion" } generateProtoTasks { all().configureEach { task -> task.builtins { java { option "lite" } } } } }