Skip to content

Gradle Plugin: support Gradle isolated projects #6748

Open
@cymerio

Description

@cymerio

What feature would you like to see?

At the moment there are four exceptions when you enable org.gradle.unsafe.isolated-projects=true, all pointing at the usage of findProperty to retrieve these properties:

  • com.google.firebase.crashlytics.buildtools
  • com.google.firebase.crashlytics.fakeId
  • com.google.firebase.crashlytics.fakeOutput
  • com.google.firebase.crashlytics.logDebug

I believe these can be changed to providers.gradleProperty(...) to solve the issue.

How would you use it?

Isolated projects would improve performance of the "sync" step in Android Studio:
https://docs.gradle.org/current/userguide/isolated_projects.html

Activity

google-oss-bot

google-oss-bot commented on Mar 8, 2025

@google-oss-bot
Contributor

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

changed the title [-]Support Gradle Isolated Projects[/-] [+]Gradle Plugin: support Gradle isolated projects[/+] on Mar 8, 2025
self-assigned this
on Mar 10, 2025
mrober

mrober commented on Mar 14, 2025

@mrober
Contributor

Thanks for reporting this @cymerio. Those properties are for our automated tests only. I didn't realize they were violating project isolation. I will find another way to set up the tests.

liutikas

liutikas commented on Mar 18, 2025

@liutikas

You don't need to remove these, you just need to move from findProperty to providers.gradleProperty as noted in the OP.

The issue is that findProperty is recursive and calls to all parent projects, causing the IP violation.

liutikas

liutikas commented on Mar 18, 2025

@liutikas

Similar issues are there in FirebasePerfPlugin

com.google.firebase.perf.plugin.FirebasePerfPlugin.apply(FirebasePerfPlugin.java:111)

and

com.google.firebase.perf.plugin.InstrumentationFlagState.fetchProjectPropertyValue(InstrumentationFlagState.java:78)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    No branches or pull requests

      Participants

      @liutikas@cymerio@mrober@google-oss-bot@lehcar09

      Issue actions

        Gradle Plugin: support Gradle isolated projects · Issue #6748 · firebase/firebase-android-sdk