Add support for configuration caching
rschmitt opened this issue · 3 comments
The Smithy tasks refer to Task.project
at execution time, which breaks configuration caching.
It looks like spotbugs is causing issues on build as well.
Running ./gradlew --configuration-cache build
returns several problems for spotbugs.
Upgrading the spotbugs gradle plugin to 5.0.8 and re-running ./gradlew --configuration-cache build
reduced that to a single problem.
I think once this issue, spotbugs/spotbugs-gradle-plugin#670, is resolved, we can upgrade the spotbugs plugin to the latest and that will unblock building.
I'm referring to the Smithy Gradle plugin itself, not its build process. All three tasks (smithyTags
, smithyBuildJar
, and smithyValidate
) invoke getProject()
at execution time, which breaks configuration caching in any builds that use the Smithy Gradle plugin.
Support for configuration caching (and removal of calls to getProject() at execution time) has been addressed in release 0.8.0.
An integration test has also been added to verify configuration caching works for the jar plugin: https://github.com/smithy-lang/smithy-gradle-plugin/blob/main/smithy-jar-plugin/src/it/java/software/amazon/smithy/gradle/SourceProjectionTest.java#L36