Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* make simple_type_field_names an input of insertAutoGeneratedMappings bettererly move EnigmaProfile to MappingsExtension * replace MappingTask::getTaskByType with MappingsTask::getTaskNamed; tasks should not be retreived by type alone, adding a new task with the same type would break things (most calls to MappingsTask::getTaskNamed will probably be eliminated when configuration is moved to MappingsPlugin) the thisening the abstractening the finalening the line wrappening * the registerening add missing get() to extractServerJar * move downloadVersionsManifest and downloadWantedVersionManifest configuration to MappingsPlugin refine downloadWantedVersionManifest inputs/outputs * move downloadMinecraftJars, extractServerJar, and mergeJars configuration to MappingsExtension refine their properties and dependencies make ExtractServerJarTask's getServerBootstrapJar() an input instead of an output make downloadMinecraftJars not finalizedBy extractServerJar as input/output handling is preferable * move downloadMinecraftLibraries and openGlConstantUnpickGenerator configuration to MappingsPlugin rework both tasks' inputs and outputs significantly downloadMinecraftLibraries is still screwy though: it accesses and modifies project in its task action add Task suffix to OpenGlConstantUnpickGenerator class rename PropertyUtil -> ProviderUtil and add projectDirProviderOf * AbstractDownloadMappingsTask -> DownloadMappingsTask, reworked its properties, and separated ExtractTinyMappingsTask added ExtractTinyMappingsTasks for hashed and intermediary removed DownloadIntermediaryMappingsTask class, it's just a DownloadMappingsTask now added Constants.INTERMEDIARY_MAPPINGS_NAME, but haven't replaced duplicates yet made some convensions in MappingsPlugin to use flatMap instead of lambdas move MappingsExtension's getEnigmaProfileFile convension to MappingsPlugin * move conventions for MergeTinyTask, MergeTinyV2Task, and MergeIntermediaryTask to MappingsPlugin refine their and their superclass' properties * update MapJarTask and subclasses update CheckTargetVersionExistsTask (will convert to BuildServerice later) add TargetVersionConsumingTask interface for CheckTargetVersionExistsTask consumers update CheckUnpickVersionsMatchTask (will convert to BuildServerice later) add UnpickVersionsMatchConsumingTask for CheckUnpickVersionsMatchTask consumers separate ExtractTargetMappingJarTask from DownloadTargetMappingJarTask and remove output files that just pointed to individual extracted files clean up the rest of the diff tasks (still WIP) move unpickTargetJar from build.gradle to buildSrc and give add a type for it: UnpickTargetJarTask move remapTargetUnpickDefinitions from build.gradle to buildSrc and add a type for it: RemapTargetUnpickDefinitionsTask move decompileTargetVineflower from build.gradle to buildSrc and add a type for it: DecompileTargetTask add more TODOs based on @lukebemish's early review * add missing .get().getAsFile()s to fix genFakeSource and decompileVineflower temporarily make remapTargetMinecraftJar directly depend on unpickTargetJar, shouldn't be necessary once CheckTargetVersionExists and CheckUnpickVersionsMatchTask are converted to BuildService's add more TODOs to build.gradle * move combineUnpickDefinitions and remapUnpickDefinitions configuration from constructor/build.gradle to MappingsPlugin move constantsJar from build.gradle to MappingsPlugin move unpickHashedJar from build.gradle to MappingsPlugin move v2UnmergedMappingsJar, v2MergedMappingsJar, intermediaryV2MappingsJar, and intermediaryV2MergedMappingsJar to MappingsPlugin reorder some tasks in MappingsPlugin to accomodate new tasks * move generated unpick definition outputs to fileConstants.buildDir move unpick.json to unpick/ and unpick definitions to unpick/definitions/ add UnpickGenTask::getGeneratedUnpickDefinitions refine CombineUnpickDefinitionsTask and its configuration add unpick/definitions/ to CombineUnpickDefinitionsTask's input in build.gradle rename OpenGlConstantUnpickGeneratorTask -> OpenGlConstantUnpickGenTask make unpick.json's location configurable via MappingsExtension and configure it in build.gradle remove all unpick-related files from FileConstants (obsolete, or only used once in which case inlined) * rename MappingsPlugin -> QuiltMappingsPlugin and its id mappings-logic -> quilt-mappings rename MappingsExtension -> QuiltMappingsExtension and its name mappings -> quiltMappings move enimga_profile.json and simple_type_field_names.json5 to enigma/ rename some things in MappingsExtension refine MappingsV2JarTask's properties, extract some magic constants, and move some configuration to a configureEach in QuiltMappingsPlugin * move mappings, mappingsUnpicked, mappingsServer, and mappingsUnpickedServer to QuiltMappingsPlugin (and fix for new enigma profile location) extract AbstractEnigmaMappingsTask as a superclass of EnigmaMappingsTask and EnigmaMappingsServerTask allow specifying EnigmaMappingsServerTask optional properties on task invocation move AbstractEnigmaMappingsTasks' configuration to QuiltMappingsPlugin (except getMainClass configuration) expose QuiltMappingsExtension::getEnigmaProfileConfig so it can be passed to AbstractEnigmaMappingsTasks add enigma-server dependency to buildSrc (as part of bundles.enigma.full) convert EnigmaProfileConsumingTask to an interface clean up MappingsTask a little * improve unpickVersion handling eliminate VersionCatalog methods from MappingsTask and add TODOs * move the following tasks' configuration to QuiltMappingsPlugin and refine their properties: - buildMappingsTiny - invertPerVersionMappings - removeIntermediary - dropInvalidMappings - generatePackageInfoMappings move downloadDictionaryFile configuration to build.gradle (because it's prone to change) and refine its input move decompileVineflower to QuiltMappingsPlugin move eraseByteCode and genFakeSource to QuiltMappingsPlugin and give them custom classes add MappingsDirConsumingTask add MappingsDirOutputtingTask and implement it on GeneratePackageInfoMappingsTask eliminate all FileConstants except tempDir which needs more investigation eliminate RegularFile implementers in QuiltMappingsPlugin rework JavadocProvider consumption simplify UnpickGenTask and javadoc it saying they should only output unpick files remove _GROUP suffix from Constants.Groups fields * move tinyJar configuration to QuiltMappingsPlugin move compressTiny configuration to QuiltMappingsPlugin and use try-with-resources in task action * remove CheckIntermediaryMappingsTask and DownloadIntermediaryMappingsTask extractTinyIntermediaryMappings gets input directly from the intermediary configuration and dependant tasks check if their inputs exist extract IntermediaryMappingsV2JarTask and check if input exists * remove downloadPerVersionMappings and DownloadMappingsTask extractTinyPerVersionMappings gets input directly from the hashed configuration * refine TransformJarClassesTask properties misc minor cleanup * move tempDir to build/ and its definition to QuiltMappingsPlugin rename cacheFilesMinecraft minecraftDir and move it to build/ eliminate FileConstants eliminate custom clean task logic revise insertAutoGeneratedMappings/AddProposedMappingsTask outputs and file names revise TargetVersionConsumingTask convension providers * rework CheckTargetVersionExistsTask -> DownloadTargetMetaFileTask the target version is obtained via provideTargetVersion * rework CheckUnpickVersionsMatchTask -> UnpickVersionsMatchSource * make MapJarTask::getAdditionalMappings an input cleanup remapTargetMinecraftJar cleanup completed TODOs and commented code in QuiltMappingsPlugin * remove @optional from TargetVersionConsumingTask's inputs since only getTargetVesion's presence is checked other misc cleanup * replace intermediary task input exists checks with IntermediaryDependantTask interface they only run if intermediary resolves this ensures intermediary tasks don't run if intermediary doesn't exist but old input files exist add ExtractTinyIntermediaryMappingsTask for extractTinyIntermediaryMappings fix AddProposedMappingsTask accidentally creating directories with output file names instead of their parent directories * replace AbstractDecompiler's Project with a Logger the logger was all the project was used for and the decompiler shouldn't access the project rename DecompilerProvider -> Decompilers.Factory and encapsulate it more * extract MappingsTask::startDownload into DownloadTask replace usage of MappingsTask::outputsNeverUpToDate with @DisableCachingByDefault * update CombineUnpickDefinitionsTask's and UnpickGenTask's javadocs make UnpickGenTask extend MappingsTask * rename DownloadImmediate.Builder -> Downloader and eliminate DownloadImmediate make Downloader#src a URL and eliminate use of deprecated URL constructor add TODO to consider eliminating dependence on DownloadAction because of project access * extract 'diff' group to Constants.Groups.DIFF * extract common logic of ExtractServerJarTask, ExtractTinyMappingsTask, and ExtractTargetMappingJarTask into AbstractExtractZipTask, ExtractSingleZippedFileTask, and ExtractZippedFilesTask * add custom task classes for QuiltMappingsPlugin tasks that lack them move all task names to their classes and rename all 'TASK_NAME' fields '<ACTUAL_NAME>_TASK_NAME' ensure all QuiltMappingsPlugin tasks implement MappingsTask and have a group move unpick configuration creation to QuiltMappingsPlugin, extract Constants.UNPICK_NAME use unpick Main class name instead of string in UnpickJarTask implement MappingsDirConsumingTask on FindDuplicateMappingFilesTask and use task's logger instead of static logger instance * add DownloadUtils which uses FileUtils::copyURLToFile rewrite download tasks to use DownloadUtils instead of DownloadAction extract SimpleDownloadTask from tasks that download a single file from a url move DownloadDictionaryFileTask's configuration to build.gradle (depends on remote that's prone to change) remove de.undercouch:gradle-download-task dependency eliminate decompileClasspath configuration and its screwiness in DownloadMinecraftLibrariesTask cache version info parsed from wanted version manifest in VersionDownloadInfo property and pass that to VersionDownloadInfoConsumingTasks add SerializableVersionEntry so it can be provided to downloadWantedVersionManifest and carry dependency info move constants source set definition back to build.gradle move constantsJar source set input configuration back to build.gradle move sourcesJar task registration to QuiltMappingsPlugin and give it its own class but keep its source set configuration in build.gradle move javadocJar task registration to QuiltMappingsPlugin and give it its own class move some of javadoc's configuration to QuiltMappingsPlugin extract Constants.Groups.JAVADOC_GENERATION @Inject an ObjectFactory into MappingsTasks fix DecompileTask's output being a RegularFileProperty instead of a DirectoryProperty * @Inject and use ArchiveOperations in AbstractExtractZipTask * move licenser plugin info to libs.versions.toml eliminate project access in javadoc task doLast extract IntermediaryMappingsV2JarTask classifiers move check and jar task configuration from build.gradle to QuiltMappingsPlugin * make simple_type_field_names an input of insertAutoGeneratedMappings bestly * extract "net/minecraft/unused/packageinfo/" constant bring the finalening, the thisening, and the line wrappening to the lint package slightly refactor SpellingChecker::checkPlural * replace MappingsJavadocProvider.Source with mapped providers so they carry dependency info * extract mappings namespace constants import Constants.Groups * add generateDiff task (not yet used in generate-diff.yml) * add quilt/internal/plugin package extract MappingsProjectPlugin interface extract MinecraftJarsPlugin and QuiltMappingsBasePlugin * extract the following plugins: - MapMinecraftJarsPlugin - MapV2Plugin - MapIntermediaryPlugin - ProcessMappingsPlugin - MappingsVerificationPlugin move unpickVersion to QuiltMappingsExtension to minimize spaghetti and ensure required plugins are applied: - access QuiltMappingsExtension via QuiltMappingsBasePlugin's getExt() - access tasks registered by other plugins via TaskedMappingsProjectPlugin::getTasks move some file naming methods to new FileUtil class update and add javadocs * extract magic classifier constants * improve DiffDirectoriesTask * use 'all' gradle distribution * add ArtifactFileProducingTask and implement it on CompressTinyTask * name AbstractArchiveTask subclass tasks using its archive name composition methods make the default ArtifactFileTask destination build/libs eliminate MappingsProjectPlugin#getLibsDir (its already the default for all tasks it was used for) add QuiltMappingsArtifactTask, implement it on all tasks that used ARCHIVE_FILE_NAME_PREFIX, and configure implementing tasks' baseName and version in QuiltMappingsBasePlugin improve some javadocs * rename package tasks -> task * improve javadocs, esp. for configurEach * extract EnigmaMappingsPlugin and TargetDiffPlugin QuiltMappingsPlugin now applies all other MappingsProjectPlugins and does nothing else replace UnpickVersionsMatchSource with a mapped provider so dependency info is carried more javadoc adjustments * use JavaExec::getArgumentProviders instead of overriding task action in AbstractEnigmaMappingsTask, EnigmaMappingsServerTask, and UnpickJarTask * replace VersionDownloadInfo with VersionParser * add artifact helper methods to ArtifactFileTask remove explicit classifiers from artifact configuration in build.gradle (classifiers are extracted from the input) fix intermediary publishing (broken since the removal of checkIntermediaryMappings) cleaned up some TODOs * replace Constants.MINECRAFT_VERSION with libs version and pass it to QuiltMappingsExtension replace Constants.MAPPINGS_VERSION with direct assignment to project.version and pass it to QuiltMappingsExtension add minecraftVersion input to DownloadTargetMetaFileTask remove provideVersionEntry from DownloadVersionsManifestTask and instead provide it directly in MinecraftJarsPlugin add minecraftVersion param to SerializableVersionEntry::of replace MappingsProjectPlugin::provideMappingsDest with provideBuildMappingsDirFile * move hashed/hashed-unpicked/named jars to build/minecraft/mapped/ move merged jar to build/minecraft/ add more helper methods to MappingsProjectPlugin * move .gradle/targets -> build/targets extract more magic strings add more helper methods for common file naming schemes * convert Constants to an interface and move it to new constants package promote all inner Constants classes to the constants package extract more classifiers and move all classifier constants to constants.Classifiers extract more extensions and move all extension constants to constants.Extensions * rename configuration unpick -> unpickCli split configuration enigmaRuntime -> enigmaSwign + enigmaServer add :classpath-holders project and includeBuild it in buildSrc populate enigmaSwing, enigmaServer and unpickCli with :classpath-holders capabilites so :quilt-mappings build.gradle doesn't have to (thanks to @lukebembish) * add convenient hack to ArtifactFileTask * provide default dictionary file name in MappingsVerificationPlugin instead of naming it after the revision in build.gradle * remove @DisableCachingByDefault from MappingsV2JarTask because it's already on its superclass * categorize TODOs * DownloadMinecraftLibrariesTask: - enable caching - delete old libraries and try downloading new libraries * DownloadVersionsManifestTask: replace @DisableCachingByDefault with UntrackedTask so it always re-downloads * DownloadWantedVersionManifestTask: remove release time input; obsoleted by other inputs * OpenGlConstantUnpickGenTask: - only take lwjgl file as input instead of all artifacts by name - remove onlyIf: if the inputs change, the outputs may change * remove DownloadMinecraftJarsTask's outsputs upToDateWhen checksum check: it was unecessary and caused outputs to never be up to date * recategorize TODO for javadoc * replace DownloadVersionsManifestTask with SerializableVersionEntry.Source because output can't be cached * replace DownloadDictionaryFileTask with ivy repository hack in build.gradle * merge MappingsVerificationPlugin into MapMinecraftJarsPlugin * remove cache limitation on javadoc task * enable caching in gradle.properties * add quilt.mappings.debug.javadoc property * clean DecompileVineflowerTask's output dir instead of deleting it * remove TODO QUESTION about mergeTinyV2's old dependency on v2UnmergedMappingsJar * rename getSimpleTypeFieldNamesFiles -> getProfileFileDependencies * make Namespaces PER_VERSION and INTERMEDIARY the sources of truth for their strings, eliminate them from Constants * rename all constants containing PER_VERSION -> INTERMEDIATE rename tasks: - mapPerVersionMappingsJar -> mapIntermediateMappingsJar - invertPerVersionMappings -> invertIntermediateMappings - extractTinyPerVersionMappings -> extractTinyIntermediateMappings * increase gradle memory from 3Gb to 4Gb because decompileTargetVineflower ran out of memory * add libs.enigma.plugin dependency back to enigmaSwing and enigmaServer classpaths * bring the thisening, the bracketing, the line wrappening, and the finalening to TasksTest and TestUtil other minor cleanup * eliminate MappingsTask * eliminate DefaultMappingsTask * utilize streams better in UnpickJarTask * replace Default/TaskedMappingsProjectPlugin/DefaultTaskedMappingsProjectPlugin with DefaultExtensionedMappingsProjectPlugin + Default/TaskedExtension access Tasks objects and MapIntermediaryPlugin's intermediaryFile via extension instances obtained via plugin instances instead of directly via plugin instances * make QuiltMappingsExtension local variable names clearer and consistent * ArtifactFileTask: - remove #getArtifact method as the classifier got stripped when publishing - make #artifact method add the classifier * obtain gson, commons-codec, and commons-compress versions for javadoc from DownloadWantedVersionManifestTask#provideVersionParser use netty version from libs.version.toml because minecraft's netty version doesn't have javadocs * clean up resolved TODOs * re-remove asm snapshot repo which snuck back in during a merge * use task logger instead of project logger in Javadoc * put CacheableTask on DownloadWantedVersionManifestTask, DownloadMinecraftJarsTask, and DownloadMinecraftLibrariesTask closes #492
- Loading branch information
1e16cc6
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.
No difference between head and target.