Unverified Commit 3a2de293 authored by david-perez's avatar david-perez Committed by GitHub
Browse files

Don't depend on the `modifyMtime` task if it has not been registered (#1607)

When registering the Cargo commands tasks. The `aws:sdk` is the only
Gradle subproject that depends on the Cargo commands tasks, but that
does not register the `modifyMtime` task.

Partially addresses #1596.
parent 000e8b0d
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -215,27 +215,33 @@ fun Project.registerCargoCommandsTasks(
    outputDir: File,
    defaultRustDocFlags: String,
) {
    val dependentTasks =
        listOfNotNull(
            "assemble",
            "generateCargoConfigToml",
            this.tasks.findByName("modifyMtime")?.let { "modifyMtime" },
        )
    this.tasks.register<Exec>(Cargo.CHECK.toString) {
        dependsOn("assemble", "modifyMtime", "generateCargoConfigToml")
        dependsOn(dependentTasks)
        workingDir(outputDir)
        commandLine("cargo", "check", "--lib", "--tests", "--benches")
    }

    this.tasks.register<Exec>(Cargo.TEST.toString) {
        dependsOn("assemble", "modifyMtime", "generateCargoConfigToml")
        dependsOn(dependentTasks)
        workingDir(outputDir)
        commandLine("cargo", "test")
    }

    this.tasks.register<Exec>(Cargo.DOCS.toString) {
        dependsOn("assemble", "modifyMtime", "generateCargoConfigToml")
        dependsOn(dependentTasks)
        workingDir(outputDir)
        environment("RUSTDOCFLAGS", defaultRustDocFlags)
        commandLine("cargo", "doc", "--no-deps", "--document-private-items")
    }

    this.tasks.register<Exec>(Cargo.CLIPPY.toString) {
        dependsOn("assemble", "modifyMtime", "generateCargoConfigToml")
        dependsOn(dependentTasks)
        workingDir(outputDir)
        commandLine("cargo", "clippy")
    }