Published at Nov 11, 2025
Back when I was trying to upgrade my Minecraft mod to newer Minecraft versions, I wondered to myself whether there is a better way to see what has changed between different Minecraft versions for a file. In this case, I don’t really care about intermediary mappings since I do want to see the name changes between Minecraft versions, and Mojang themselves do not host a Git repo where I can easily diff a file using Git. Mojang was aggresively trying to push newer Minecraft versions and naming their versions with zero ounce of logic (not that I expect them to, they are not making a library, well sort of), but it is getting crazy. We sometimes get huge feature drops, while other times we get a version that fixes some bugs, and both are treated the same in their versioning system, if there is even any system in place. Perhaps it’s there just for aesthetic reasons.
In my desperation of trying to figure out why my mod keeps crashing, I asked around and tried to figure out how to download Minecraft versions, so I can at least diff the files myself, and perhaps even host a private Git Minecraft repo to make this easier, by having each branch be a Minecraft version. I stumbled upon this cool project known as GitCraft which seems to be the exact thing I was looking for. It is based on Loom, and hence replicates a lot of Loom’s functionalities, without the overhead of the need to manage Gradle and a modding project, since I could always utilise Loom directly to download deobfuscated Minecraft source code.
After that, I can use something like difftastic to diff the same source file of different versions. In the end though, I didn’t even require diffing since it was simply a classic case of programmer error (skill issue). Unfortunately, downloading source codes of different versions take up a lot of disk space. Since I am not Micro$oft, this is not really in my wheelhouse.
Anyway, speaking of deobfuscation mappings, seeing that newer versions of Minecraft is no longer obfuscated at the time of writing, it is in my opinion that people are still going to use the community deobfuscation mappings, but imo it is definitely a step in the right direction. They definitely are not purely doing this out of the goodness of their hearts (supporting the community, etc.), since there are many other advantages of doing so, including better generated stacktraces after a crash, and no one really complained about the community obfuscated mappings anyway since they were already so familiar with it. I was under the impression that Loom would continue to support this new system, while still supporting community-made obfuscation mappings, but I was told that they are deprecating Loom, which is a shame, since I personally am not a fan of some of Mojang’s naming decisions.
Speaking of modding, Modrinth (John Modrinth himself) paid me $8 for my modding efforts so I could buy myself a cup of coffee. Thanks guys.