Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework the plugin to be compatible with Gradle's configuration cache #45

Merged
merged 8 commits into from
Sep 10, 2021

Conversation

eskatos
Copy link
Collaborator

@eskatos eskatos commented Sep 3, 2021

This PR fixes the plugin to work with Gradle's configuration cache for most use cases.

Along the way, introducing cross-gradle-version testing was implemented. Tests running on Gradle >= 7.2 now always run with the configuration cache enabled. The coverage showed that the plugin is broken with Gradle 5.6.x might be related to #36

There are a couple tests that don't pass with the configuration cache enabled. This is due to some classloading issue in CC implementation. Each of these use case works if the user classes aren't in a build script. I think this PR is already a good step, I would like to get it in first then investigate how to fix the issue in gradle/gradle and then come back here if needed in another PR.

Those throw CNFE for japicmp types referenced by user classes declared
in build script bodies.

Those same use cases work fine if the user classes are declared in say
buildSrc, an included build or a plugin artifact.

This is a temporary measure until this is investigated.
@eskatos eskatos changed the title WIP Rework the plugin to be compatible with Gradle's configuration cache Rework the plugin to be compatible with Gradle's configuration cache Sep 10, 2021
@eskatos eskatos marked this pull request as ready for review September 10, 2021 13:44
@eskatos eskatos requested a review from melix September 10, 2021 13:44
Copy link
Owner

@melix melix left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@melix melix merged commit c398274 into melix:master Sep 10, 2021
@eskatos eskatos deleted the eskatos/cc branch September 10, 2021 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants