In order to match, you must have deno, git and java installed.
In this tutorial we'll be matching from 1.18
to 1.19
as examples. Note that if you're not a team member and don't have push access to the QM repo, you'll need to fork it and clone your fork instead.
- Before you start, make sure you've merged all pull requests marked with
final-comment-period
in the QM repo! - Run
deno task setup [your old version] [your new version]
. For us, this means we'll rundeno task setup 1.18 1.19
.
You can also set up manually, see manual setup.
- In both the old and new clones, run
./gradlew mapPerVersionMappingsJar
.- If you're seeing a "Could not resolve all files for configuration :hashed" error, it means that the hashed publication is not yet released for the new minecraft version. This should normally happen automatically, but github will disable the automatic publishing if hashed has not seen activity in 60 days. In that case, go over to the check and publish action and reenable it. Manually trigger a run, and the hashed file should be available for your version in 2-3 minutes.
- In the new clone, run
./gradlew dropInvalidMappings
. - Run
git add .
andgit commit -m "[your new version name]"
to commit. For us, this isgit commit -m "1.19"
. - Run
deno task match [your old version] [your new version]
. For us, this isdeno task match 1.18 1.19
. - In the new clone, run
./gradlew dropInvalidMappings
again. - Run
./gradlew generatePackageInfoMappings
to generate new package info files. - Run
./gradlew build javadocJar
to test your build. - Run
git add .
andgit commit -m "match [your new version name] to [your old version name]"
to commit. For us, this isgit commit -m "match 1.19 to 1.18"
. - Run
git push
, and you're done!
- In the github settings, update the default branch to the branch you just pushed.
- Add the
update-base
label to all pull requests, excluding backports.
If the deno task fails, please report it and follow these steps to manually set up. You can also use this if you just don't trust the machines. We don't judge.
- Clone this repo. We'll be calling the folder you cloned it into our
root
folder. - Enter your root folder.
- Clone QM with
git clone https://github.com/quiltmc/quilt-mappings [your old version name]
. For us, this means we'll have a QM clone in a directory named1.18
. - Repeat, this time naming the clone after your new version.
- Go into your new version clone and update the
MINECRAFT_VERSION
constant inbuildSrc/src/main/java/quilt/internal/Constants.java
to match your current version. - Still in the new version clone, run
git checkout -b [your new version name]
to create a new branch for the new version. (git checkout -b 1.19
for us) - Return to your root folder. You're ready to start matching!