v0.8.0
This includes a few new features and enhancements:
-
#15: The export generation tasks now copy the data from record fields (which is where Enigma writes the javadocs for record components) to the class javadoc (as
@paramtags, which documents the record components) and the canonical constructor parameters' javadocs. -
#17: The writing process of the Enigma data IO interface was improved to reduce file IO churn due to mass-deletion and recreation of files.
Previously, the Enigma data IO would delete all the files and recreate them one-by-one, which creates a lot of churn when rewriting to the same folder with anything less than all-the-files changes. This new implementation avoids that by reusing mapping files if they match a class name, deleting files which don't match a class name (or the two JSON files) or directories without any files, and creating new mapping files for class names which don't have a reused file.
-
A new validator and new sanitizer was added to verify the existence of members in the mapping data.
-
The method data cascading in the export generation tasks was fixed to properly handle constructors.
Because constructors do not have the normal override information linking to the parent methods in the superclass -- the superclass constructors -- we add a special case: use the constructor from thesuperclass with the same descriptor/parameters.
There's also a few minor changes and fixes alongside those:
- The
launchermeta.mojang.comdomain for the manifest URL convention in thecompassextension was updated to use the new subdomainpiston-meta.mojang.com. - The conventional data formats for the production and staging directories was changed from the exploded MDC format to the exploded Enigma format, bringing it in line with its use in the Parchment mappings repository.
- The name for the method standards validator was fixed from
"Method standards"to"method standards", aligning with the lowercased convention of all other validators' names. - Gradle was updated to 7.4.2, Guava was updated to 31.1-jre, and the Gradle Download Task was updated to 5.1.0.
Full Changelog: v0.7.0...v0.8.0