-
Notifications
You must be signed in to change notification settings - Fork 24
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
Implement ATs with JST and enable incremental compilation #147
Conversation
Last commit published: a04871c7da83dcec4f6ed4901af0d48384459820. PR PublishingThe artifacts published by this PR:
Repository DeclarationIn order to use the artifacts published by the PR, add the following repository to your buildscript: repositories {
maven {
name 'Maven for PR #147' // https://github.com/neoforged/NeoGradle/pull/147
url 'https://prmaven.neoforged.net/NeoGradle/pr147'
content {
includeModule('net.neoforged.gradle', 'common')
includeModule('net.neoforged.gradle.common', 'net.neoforged.gradle.common.gradle.plugin')
includeModule('net.neoforged.gradle', 'dsl-common')
includeModule('net.neoforged.gradle', 'dsl-mixin')
includeModule('net.neoforged.gradle.userdev', 'net.neoforged.gradle.userdev.gradle.plugin')
includeModule('net.neoforged.gradle', 'dsl-userdev')
includeModule('net.neoforged.gradle', 'userdev')
includeModule('net.neoforged.gradle', 'platform')
includeModule('net.neoforged.gradle.neoform', 'net.neoforged.gradle.neoform.gradle.plugin')
includeModule('net.neoforged.gradle', 'neoform')
includeModule('net.neoforged.gradle', 'dsl-neoform')
includeModule('net.neoforged.gradle', 'dsl-vanilla')
includeModule('net.neoforged.gradle', 'dsl-platform')
includeModule('net.neoforged.gradle.mixin', 'net.neoforged.gradle.mixin.gradle.plugin')
includeModule('net.neoforged.gradle', 'utils')
includeModule('net.neoforged.gradle', 'vanilla')
includeModule('net.neoforged.gradle', 'mixin')
includeModule('net.neoforged.gradle.platform', 'net.neoforged.gradle.platform.gradle.plugin')
includeModule('net.neoforged.gradle.vanilla', 'net.neoforged.gradle.vanilla.gradle.plugin')
}
}
} |
} | ||
|
||
@TaskAction | ||
public void doTask() throws IOException { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This feels like something to just use FileSystemOperations
and a copy spec for instead of manually traversing stuff
Apply ATs on the source and not on the pre-decomp jar, to allow AT changes to be applied quicker, by not involving decompilation again.
To incrementally compile, the task should only detect changes in files on disk. To achieve this, the sources are unpacked before compilation, in such a way that files aren't overwritten unless they need to be, as timestamps play a role in verifying whether a file change should be ignored.
This PR also makes the list libraries task deterministic.