Marking command line arguments options as InternalSubpluginOptions #1368
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.
We described in #1359 a cache issue when using Ksp with the Room processor since version 1.8.10-1.0.9.
After reviewing the code, we have noticed that since this version all the values of the internal property
options
are set asCompilerPluginConfig
for the KspTasks.Later, KGP will populate the inputs arguments like:
At this point, KGP doesn't know about the path sensitivity of the argument value producing different build cache keys:
(notice the argument
com.google.devtools.ksp.symbol-processing.apoption:room.schemaLocation
)This PR updates the type of subplugin option for the CommandLineArgumentProviders as
InternalSubpluginOption
because this type of Subplugin does not track these values as inputs and they should instead already be tracked via the CommandLineArgumentProvider.Tests
Ksp
https://ge.solutions-team.gradle.com/c/jeca5opi7c6lo/cfxcrcoqv7v46/task-inputs?cacheability=cacheable
Using
InternalSubpluginOption
https://ge.solutions-team.gradle.com/c/sxmggqn6mwihu/3drfct4q2zqqk/task-inputs?cacheability=cacheable