55package net .minecraftforge .gradle .internal ;
66
77import org .gradle .api .model .ObjectFactory ;
8+ import org .jspecify .annotations .Nullable ;
89
910import javax .inject .Inject ;
1011import java .io .Serial ;
@@ -13,7 +14,7 @@ abstract class MinecraftMappingsImpl implements MinecraftMappingsInternal {
1314 private static final @ Serial long serialVersionUID = 6944934115402768018L ;
1415
1516 private final String channel ;
16- private final String version ;
17+ private final @ Nullable String version ;
1718
1819 protected abstract @ Inject ObjectFactory getObjects ();
1920
@@ -23,6 +24,8 @@ public MinecraftMappingsImpl(String channel, String version) {
2324 this .channel = Util .checkMappingsParam (problems , channel , "channel" );
2425 if (this .channel .equals ("parchment" ))
2526 this .version = ParchmentVersion .parse (Util .checkMappingsParam (problems , version , "version" )).toFriendly ();
27+ else if (this .channel .equals ("official" ))
28+ this .version = version .isEmpty () ? null : version ;
2629 else
2730 this .version = Util .checkMappingsParam (problems , version , "version" );
2831 }
@@ -33,7 +36,7 @@ public String getChannel() {
3336 }
3437
3538 @ Override
36- public String getVersion () {
39+ public @ Nullable String getVersion () {
3740 return this .version ;
3841 }
3942}
0 commit comments