Reduce spurious invalidations of the up-to-date index in Maven plugin #1461
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.
Improve selectivity in Maven plugin fingerprint
PluginFingerprint
captures a particular configuration of the Spotless Maven plugin. It is used to invalidate the up-to-date index when plugin's configuration changes.Invalidations of the index file seem to be too frequent because
PluginFingerprint
includes the effective (as in Effective POM) configuration of the Spotless plugin. For example, it includes dependencies declared outside of the<plugin </plugin>
XML element. So addition of an unrelated project dependency will invalidate the index file.Spotless Maven plugin manages its own dependencies using
ArtifactResolver
. There's no need to include the effective<plugin>
object intoPluginFingerprint
. This PR simplifies the fingerprint to include only the plugin's version and serialized configuration of all formatters. It should be backward-compatible because fingerprint format change will simply trigger an invalidation of the index file.Improve index file invalidation message in Maven plugin
Do not mention plugin fingerprint because it is an implementation detail and can be confusing to users. Explain why index file invalidation could happen.
This PR is related to #1372.