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

Make new utilities not completely bypass capabilities #234

Merged
merged 3 commits into from
Aug 12, 2024

Conversation

lukebemish
Copy link
Contributor

The new inherits.from and depends.on utilities completely bypass all the nice checks that gradle's dependency resolution does by just naively combining two file collections instead of going through dependency resolution. This is obviously Not Good, because it means the sort of guarantees provided by stuff like capabilities -- guarantees that mod authors like myself may be expecting consumers to be able to rely on -- just plain don't hold. This PR makes those all go through dependency resolution, as they ought to. I would highly recommend the use of feature variants and self-project-dependencies instead of depends.on, and the use of shared parent configurations instead of inherits.from, because both of those provide a mechanism to keep some dependencies internal to the inherited/depended source set, but these two utilities should at least not break the nice guarantees that gradle can provide us.

@neoforged-pr-publishing
Copy link

  • Publish PR to GitHub Packages

@lukebemish lukebemish marked this pull request as draft August 12, 2024 03:22
@lukebemish lukebemish marked this pull request as ready for review August 12, 2024 03:25
@marchermans marchermans merged commit 714f31d into neoforged:NG_7.0 Aug 12, 2024
105 of 107 checks passed
@neoforged-releases
Copy link

🚀 This PR has been released as NeoGradle version 7.0.159.

@lukebemish lukebemish deleted the fix-new-utilities branch August 12, 2024 15:08
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