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

Add License, Workflows, Publication tasks, README, v0.4.0 #3

Merged
merged 9 commits into from
Aug 25, 2024
Merged

Conversation

natario1
Copy link
Member

No description provided.

@natario1
Copy link
Member Author

natario1 commented Aug 25, 2024

Hey @0xera , I have two questions.

  1. There's a bug in RClassRelocator, it's picking up all classes starting with R. Do you know how to change the regex? I don't want to miss any edge case.
Screenshot 2024-08-25 alle 14 38 26
  1. Regarding grease vs greaseApi, wouldn't it be better to only have grease (transitive) and if people don't want transitive behavior, they change it on the dep level using proper gradle API?
dependencies {
    grease("mydep:1.0.0") {
        isTransitive = false // or exclude(...)
    }
}

grease vs. greaseApi is hard to understand, it took me a while. And while they do a good job for Android apps, they probably don't work properly for Android libraries (in terms of dependencies that end up listed in the POM file).

I'm thinking isTransitive = false at the dep level is already what we need. In a future release we may improve this by ensuring that when isTransitive = false is used, transitive dependencies are also added as implementation.

@0xera
Copy link
Collaborator

0xera commented Aug 25, 2024

Hi

  1. Sorry, i forgot to fix it. Anyway fix should be very simple:
-include("%regex[$fromRPathRegex.*]")
+include("%regex[$fromRPathRegex]")
  1. i was inspired by other plugins and google's unreleased plugin fused-library for creating fat-aar. They only allow to add first level dependency to an aar. Yeah, sometimes we need to add all, including transitive ones, but that is very rare case. Moreover we want to control what we are merge into our library. So i would prefer to do "grease" configuration so that only explicitly declared dependency are added by default. However, i decide to keep the option with including transitive dependencies in implementation/api style, because it cannot be done by setting isTransitive = true to configuration in the dependency scope

@natario1 natario1 changed the title Add License, Workflows, Publication tasks, README Add License, Workflows, Publication tasks, README, v0.4.0 Aug 25, 2024
@natario1
Copy link
Member Author

Thanks. I ended up just renaming greaseApi to greaseTree which sounds better to me.

@natario1 natario1 merged commit 1137152 into main Aug 25, 2024
1 check passed
@natario1 natario1 deleted the cleanup branch August 25, 2024 17:57
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.

2 participants