-
-
Notifications
You must be signed in to change notification settings - Fork 18
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
Multi metadata processing #12
base: main
Are you sure you want to change the base?
Conversation
This also separates the metadata configuration of the project from the metadata configuration of the project's dependencies
From what I can tell, the main thing dependency metadata is used for is applying transitive access wideners. |
This will need to be squashed like the last PR. |
I just noticed that in projects with multiple metadata kinds, if the different metadata kinds reference different access widener files, then only the access widener from the highest-priority metadata will be remaped. I can fix this in the morning if you need me to. |
Ok, I've added the ability to remap different accesswideners from |
I am not sure how to go about rebasing this onto the latest commit. |
That's okay; I will handle it locally when i get a chance to review this PR. |
This PR
This pull-request adds support for processing of multiple metadata kinds in the same project as well as fixing interface injectors, which did not function with multiple metadata kinds present before.
Changes to API
This changes the existing quilt-loom api in one breaking way: the
metadataPriorities
block has been renamed tometadataConfig
.This also adds a new configuration block,
dependencyMetadataConfig
that allows users to configure processing of dependencies' metadata separately from that of their own project's metadata.In both of these blocks, a new method
ignore
has been added, that disables processing of the given metadata type.Features Added
quilt.mod.json
andfabric.mod.json
files are processed and receive Jar-In-Jar information when remapping, even when both are present in the same project.quilt.mod.json
andfabric.mod.json
files are processed and have refmap references added when remapping, even when bothquilt.mod.json
andfabric.mod.json
are present in the same project.Things Fixed
Testing
I have tested this in my own mod projects. So far I have tested:
[ ] Setting the priority of a metadata kind for dependencies.(I am not sure what I can use to test this one.)Things Left To Do
I would like to also add remapping of multiple metadatas' mixins when the metadatas use different mixins.[Done]