Skip to content

Make plugin compatible with isolated projects#329

Closed
eduardbosch wants to merge 3 commits intojraska:masterfrom
eduardbosch:feature/isolated-projects
Closed

Make plugin compatible with isolated projects#329
eduardbosch wants to merge 3 commits intojraska:masterfrom
eduardbosch:feature/isolated-projects

Conversation

@eduardbosch
Copy link
Copy Markdown

Hi,

I'm trying to make one of my projects at Job&Talent fully compatible with Isolated Projects. I've updated a few plugins and this was the latest one.

It was my first time working directly with Gradle Plugins, so maybe some things may not be perfect, but I think the commit is quite clean to understand all the changes.

In summary, the required changes to make this plugin compatible with Isolated Projects was:

  • Create a settings plugin to gather projects information without cross-referencing projects.
  • Add a Service to collect the information across projects (DependencyCollectorService).
  • Update project plugin to avoid cross-project references.
  • Avoid accessing properties directly.

Let me know what do you think.
The tests pass with no assertion logic changes, so everything should be OK. The only changes required in tests were to ensure the settings plugin is applied and to update some assertions now that things can run in parallel and the order of tasks execution is not guaranteed.

Thanks for this great plugin 🙌

- Create a settings plugin to gather projects information without cross-referencing projects.
- Add a Service to collect the information across projects (DependencyCollectorService).
- Update project plugin to avoid cross-project references.

Signed-off-by: Eduard Bosch <eduard.bertran@jobandtalent.com>
This'll help reusing the same version for a later settings plugin.

Signed-off-by: Eduard Bosch <eduard.bertran@jobandtalent.com>
Signed-off-by: Eduard Bosch <eduard.bertran@jobandtalent.com>
@eduardbosch eduardbosch changed the title make plugin compatible with isolated projects Make plugin compatible with isolated projects Feb 12, 2026
@eduardbosch
Copy link
Copy Markdown
Author

Hey @jraska, did you had time to review this PR?
Can I help you in some way?
Thanks

@jraska
Copy link
Copy Markdown
Owner

jraska commented Mar 4, 2026

Hey, thanks for the PR.

Could you please point me to Gradle docs what are isolated projects?

I want to understand if this is something which did break or it is to support a new functionality?

Seeing this

**IMPORTANT:** Starting from version 2.10.0, the plugin requires TWO plugins to be applied for Gradle isolated projects compatibility:

Suggests its a breaking change as well so unless the plugin's existing functionality broke, I would recommend implementing it as a separate plugin or even fork as I don't want to add a new functionality to the project.

Thanks!

@jraska
Copy link
Copy Markdown
Owner

jraska commented Mar 4, 2026

Checking the https://docs.gradle.org/current/userguide/isolated_projects.html#current_limitations I don't want to invest in this plugin to provide support in a cost of optimizing for

"pre-alpha Gradle feature"

I may consider this once such feature becomes a mainstream, but for now I want to keep any large refactors to be considered once necessary from the reason of maintainabiity of this project in the long run, accepting the limitations.

Thanks for the efforts you put into the PR though!

@eduardbosch
Copy link
Copy Markdown
Author

I completely understand. I'll keep it as a frok for now.

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants