You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Running the remapper with multiple threads causes some parameters to nondeterministically remap. From run to run, with identical inputs, the remap output for some methods will fail to remap parameters that were remapped the previous run (or the opposite). Running tiny-remapper with a single thread prevents this from happening, and run-to-run output is identical.
Running the remapper with multiple threads causes some parameters to nondeterministically remap. From run to run, with identical inputs, the remap output for some methods will fail to remap parameters that were remapped the previous run (or the opposite). Running
tiny-remapper
with a single thread prevents this from happening, and run-to-run output is identical.This can be reproduced easily by checking out the following Paper commit: https://github.com/PaperMC/Paper/tree/ffd9e2a4d1363a0148d454a08a448a3aa37d7ce7
Run the task:
copy the output jar (
<project_root>/.gradle/caches/paperweight/taskCache/remapJar.jar
) somewhere, and re-run the task:Compare the result and you'll see many method parameters are mapped differently.
If you do the same test on the next commit the method parameter mappings will be stable: https://github.com/PaperMC/Paper/tree/94538d55bc403403aa04390a4a895070837cdde7
This commit uses #43 with
--threads=1
to prevent the issue from occurring.The text was updated successfully, but these errors were encountered: