Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 36 additions & 12 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent

Expand All @@ -28,8 +27,9 @@ buildscript {
}

dependencies {
classpath 'com.google.cloud.tools:appengine-gradle-plugin:2.4.1'
classpath 'net.ltgt.gradle:gradle-errorprone-plugin:3.1.0'
classpath 'com.google.cloud.tools:appengine-gradle-plugin:2.5.0'
classpath 'net.ltgt.gradle:gradle-errorprone-plugin:5.1.0'
classpath 'com.gradleup.shadow:com.gradleup.shadow.gradle.plugin:9.4.0'
classpath 'org.sonatype.aether:aether-api:1.13.1'
classpath 'org.sonatype.aether:aether-impl:1.13.1'
}
Expand All @@ -40,15 +40,15 @@ plugins {

// Re-enable when compatible with Gradle 8
// id 'nebula.lint' version '16.0.2'
id 'net.ltgt.errorprone' version '3.1.0'
id 'net.ltgt.errorprone' version '5.1.0'
id 'checkstyle'
id 'com.github.johnrengelman.shadow' version '8.1.1'
id 'com.gradleup.shadow' version '9.4.0' apply false

// NodeJs plugin
id "com.github.node-gradle.node" version "3.0.1"
id "com.github.node-gradle.node" version "7.1.0"

id 'idea'
id 'com.diffplug.spotless' version '6.20.0'
id 'com.diffplug.spotless' version '8.4.0'

id 'jacoco'
id 'com.dorongold.task-tree' version '2.1.0'
Expand All @@ -73,7 +73,15 @@ apply from: 'dependency_lic.gradle'

apply from: 'utils.gradle'

tasks.build.dependsOn(tasks.checkLicense)
// The license-report plugin must run with --no-parallel due to
// complex cross-subject references. The `mutex` pattern does not
// help because a mutex does not enforce task execution order.
// For now we separate checkLicense from build so that the latter may
// still take advantage of parallelism, which cuts down the build time
// by about 20%. The presubmit and release procedures that want to check
// licenses must invoke checkLicense explicitly with the `--no-parallel`
// flag.
// tasks.build.dependsOn(tasks.checkLicense)

// Provide defaults for all of the project properties.

Expand Down Expand Up @@ -255,6 +263,14 @@ subprojects {
// Skip no-op project
if (project.name == 'services') return

apply plugin: 'com.gradleup.shadow'

tasks.configureEach {
if (it.class.name.contains('ShadowJar')) {
it.zip64 = true
}
}

ext.createUberJar = {
taskName,
binaryName,
Expand All @@ -263,7 +279,8 @@ subprojects {
List<SourceSetOutput> srcOutput = [project.sourceSets.main.output],
List<String> excludes = [] ->
project.tasks.create(
taskName, com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar) {
taskName, project.tasks.shadowJar.class) {
zip64 = true
mergeServiceFiles()
archiveBaseName = binaryName
if (mainClass != '') {
Expand Down Expand Up @@ -321,9 +338,8 @@ subprojects {
// To selectively activate dependency locking without hardcoding them
// in the 'configurations' block, the following code must run after
// project evaluation, when all configurations have been created.
configurations.each {
if (!it.name.contains('detachedConfiguration')
&& it.name != 'integration') {
configurations.all {
if (!it.name.contains('detachedConfiguration')) {
it.resolutionStrategy.activateDependencyLocking()
}
}
Expand Down Expand Up @@ -537,6 +553,14 @@ task coreDev {
dependsOn 'checkLicense'
dependsOn ':core:check'
dependsOn 'assemble'

if (gradle.startParameter.parallelProjectExecutionEnabled
&& gradle.startParameter.taskNames.contains("coreDev")) {
throw new GradleException(
"ERROR: 'coreDev' cannot run with --parallel due to checkLicense constraints.\n"
+ "Please run: ./gradlew coreDev --no-parallel"
)
}
}

javadocDependentTasks.each { tasks.javadoc.dependsOn(it) }
Expand Down
87 changes: 48 additions & 39 deletions buildscript-gradle.lockfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,59 +4,68 @@
com.diffplug.durian:durian-collect:1.2.0=classpath
com.diffplug.durian:durian-core:1.2.0=classpath
com.diffplug.durian:durian-io:1.2.0=classpath
com.diffplug.durian:durian-swt.os:4.2.0=classpath
com.diffplug.spotless:com.diffplug.spotless.gradle.plugin:6.20.0=classpath
com.diffplug.spotless:spotless-lib-extra:2.40.0=classpath
com.diffplug.spotless:spotless-lib:2.40.0=classpath
com.diffplug.spotless:spotless-plugin-gradle:6.20.0=classpath
com.diffplug.durian:durian-swt.os:4.3.0=classpath
com.diffplug.spotless:com.diffplug.spotless.gradle.plugin:8.4.0=classpath
com.diffplug.spotless:spotless-lib-extra:4.5.0=classpath
com.diffplug.spotless:spotless-lib:4.5.0=classpath
com.diffplug.spotless:spotless-plugin-gradle:8.4.0=classpath
com.dorongold.plugins:task-tree:2.1.0=classpath
com.dorongold.task-tree:com.dorongold.task-tree.gradle.plugin:2.1.0=classpath
com.github.johnrengelman.shadow:com.github.johnrengelman.shadow.gradle.plugin:8.1.1=classpath
com.github.johnrengelman:shadow:8.1.1=classpath
com.github.node-gradle.node:com.github.node-gradle.node.gradle.plugin:3.0.1=classpath
com.github.node-gradle:gradle-node-plugin:3.0.1=classpath
com.google.cloud.tools:appengine-gradle-plugin:2.4.1=classpath
com.google.cloud.tools:appengine-plugins-core:0.9.1=classpath
com.fasterxml.jackson.core:jackson-annotations:2.14.2=classpath
com.fasterxml.jackson.core:jackson-core:2.14.2=classpath
com.fasterxml.jackson.core:jackson-databind:2.14.2=classpath
com.fasterxml.jackson:jackson-bom:2.14.2=classpath
com.fasterxml.woodstox:woodstox-core:7.1.1=classpath
com.github.node-gradle.node:com.github.node-gradle.node.gradle.plugin:7.1.0=classpath
com.github.node-gradle:gradle-node-plugin:7.1.0=classpath
com.google.cloud.tools:appengine-gradle-plugin:2.5.0=classpath
com.google.cloud.tools:appengine-plugins-core:0.10.0=classpath
com.google.code.findbugs:jsr305:3.0.2=classpath
com.google.code.gson:gson:2.8.6=classpath
com.google.errorprone:error_prone_annotations:2.3.4=classpath
com.google.code.gson:gson:2.10.1=classpath
com.google.errorprone:error_prone_annotations:2.18.0=classpath
com.google.guava:failureaccess:1.0.1=classpath
com.google.guava:guava:28.2-jre=classpath
com.google.guava:guava-parent:32.1.2-jre=classpath
com.google.guava:guava:32.1.2-jre=classpath
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava=classpath
com.google.j2objc:j2objc-annotations:1.3=classpath
com.googlecode.concurrent-trees:concurrent-trees:2.6.1=classpath
com.googlecode.javaewah:JavaEWAH:1.2.3=classpath
com.squareup.okhttp3:okhttp:4.10.0=classpath
com.squareup.okio:okio-jvm:3.0.0=classpath
com.squareup.okio:okio:3.0.0=classpath
commons-io:commons-io:2.11.0=classpath
dev.equo.ide:solstice:1.3.1=classpath
net.ltgt.errorprone:net.ltgt.errorprone.gradle.plugin:3.1.0=classpath
net.ltgt.gradle:gradle-errorprone-plugin:3.1.0=classpath
org.apache.ant:ant-launcher:1.10.13=classpath
org.apache.ant:ant:1.10.13=classpath
org.apache.commons:commons-compress:1.20=classpath
com.gradleup.shadow:com.gradleup.shadow.gradle.plugin:9.4.0=classpath
com.gradleup.shadow:shadow-gradle-plugin:9.4.0=classpath
com.squareup.okhttp3:okhttp:4.12.0=classpath
com.squareup.okio:okio-jvm:3.6.0=classpath
com.squareup.okio:okio:3.6.0=classpath
commons-codec:commons-codec:1.21.0=classpath
commons-io:commons-io:2.21.0=classpath
dev.equo.ide:solstice:1.8.1=classpath
net.ltgt.errorprone:net.ltgt.errorprone.gradle.plugin:5.1.0=classpath
net.ltgt.gradle:gradle-errorprone-plugin:5.1.0=classpath
org.apache.ant:ant-launcher:1.10.15=classpath
org.apache.ant:ant:1.10.15=classpath
org.apache.commons:commons-compress:1.21=classpath
org.apache.commons:commons-lang3:3.5=classpath
org.checkerframework:checker-qual:2.10.0=classpath
org.codehaus.plexus:plexus-utils:3.5.1=classpath
org.eclipse.jgit:org.eclipse.jgit:6.6.0.202305301015-r=classpath
org.eclipse.platform:org.eclipse.osgi:3.18.300=classpath
org.apache.maven:maven-api-annotations:4.0.0-rc-5=classpath
org.apache.maven:maven-api-xml:4.0.0-rc-5=classpath
org.apache.maven:maven-xml:4.0.0-rc-5=classpath
org.checkerframework:checker-qual:3.33.0=classpath
org.codehaus.plexus:plexus-utils:4.0.2=classpath
org.codehaus.plexus:plexus-xml:4.1.1=classpath
org.codehaus.woodstox:stax2-api:4.2.2=classpath
org.eclipse.jgit:org.eclipse.jgit:7.5.0.202512021534-r=classpath
org.eclipse.platform:org.eclipse.osgi:3.24.100=classpath
org.glassfish:javax.json:1.0.4=classpath
org.jdom:jdom2:2.0.6.1=classpath
org.jetbrains.kotlin:kotlin-stdlib-common:1.6.20=classpath
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31=classpath
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31=classpath
org.jetbrains.kotlin:kotlin-stdlib:1.6.20=classpath
org.jetbrains.kotlin:kotlin-metadata-jvm:2.3.20-RC3=classpath
org.jetbrains.kotlin:kotlin-stdlib-common:2.3.20-RC3=classpath
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.10=classpath
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10=classpath
org.jetbrains.kotlin:kotlin-stdlib:2.3.20-RC3=classpath
org.jetbrains:annotations:13.0=classpath
org.ow2.asm:asm-commons:9.4=classpath
org.ow2.asm:asm-tree:9.4=classpath
org.ow2.asm:asm:9.4=classpath
org.slf4j:slf4j-api:1.7.36=classpath
org.slf4j:slf4j-api:2.0.17=classpath
org.sonatype.aether:aether-api:1.13.1=classpath
org.sonatype.aether:aether-impl:1.13.1=classpath
org.sonatype.aether:aether-spi:1.13.1=classpath
org.sonatype.aether:aether-util:1.13.1=classpath
org.tukaani:xz:1.9=classpath
org.vafer:jdependency:2.8.0=classpath
org.yaml:snakeyaml:1.21=classpath
org.vafer:jdependency:2.15=classpath
org.yaml:snakeyaml:2.0=classpath
empty=
Loading
Loading