Use unique type for predeclare extension declaration. #1084
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It seems because the extension is added lazily when calling
predeclareDeps
, Gradle does not generate Kotlin accessors to be able to just callspotlessPredeclare { }
(or maybe just something I couldn't figure out well). This isn't ideal but not a big deal if we could use the other standard gradle patternconfigure
, but currently we cannot because there are two extensions with the same type.I guess there is a Gradle idiom of making sure to use unique types for extension declarations so this PR is probably needed.
Separately, I wonder if instead of having
predeclareDeps
in spotless should be replaced by always registering thespotlessPredeclare
extension and adding apolicy
method or similar in it, so it is activated when calling thatpolicy
method instead ofpredelcareDeps
on thespotless
extension.If your change only affects a build plugin, and not the lib, then you only need to update the
plugin-foo/CHANGES.md
for that plugin.