mirror of
https://github.com/unmojang/meta.git
synced 2025-09-25 04:01:42 -04:00
Change requires to an extensible format
It is now a list of objects of the following format: { "uid":"identifier-required", "equals":"version-optional" } This can easily be expanded, unlike the direct mapping this was before.
This commit is contained in:
parent
2e3061603a
commit
4f4985602c
@ -49,7 +49,7 @@ def versionFromProfile(profile, version):
|
||||
result = MultiMCVersionFile({"name":"Forge", "version":version.rawVersion, "uid":"net.minecraftforge" })
|
||||
mcversion = profile.install.minecraft
|
||||
result.parentUid ='net.minecraft'
|
||||
result.requires ={'net.minecraft': mcversion}
|
||||
result.requires = [RequiresEntry(uid='net.minecraft', equals=mcversion)]
|
||||
result.mainClass = profile.versionInfo.mainClass
|
||||
args = profile.versionInfo.minecraftArguments
|
||||
tweakers = []
|
||||
@ -92,7 +92,7 @@ def versionFromLegacy(version, legacyinfo : ForgeLegacyInfo):
|
||||
result = MultiMCVersionFile({"name":"Forge", "version":version.rawVersion, "uid":"net.minecraftforge" })
|
||||
mcversion = version.mcversion_sane
|
||||
result.parentUid ='net.minecraft'
|
||||
result.requires ={'net.minecraft': mcversion}
|
||||
result.requires = [RequiresEntry(uid='net.minecraft', equals=mcversion)]
|
||||
result.releaseTime = legacyinfo.releaseTime
|
||||
result.order = 5
|
||||
if mcversion in fmlLibsMapping:
|
||||
|
@ -22,8 +22,7 @@ def processArtefacts(mcVersion, liteloader, notSnapshots):
|
||||
latestVersion = artefact.version
|
||||
continue
|
||||
version = MultiMCVersionFile(name="LiteLoader", uid="com.mumfrey.liteloader", version=artefact.version)
|
||||
version.requires = {}
|
||||
version.requires['net.minecraft'] = mcVersion
|
||||
version.requires = [RequiresEntry(uid='net.minecraft', equals=mcVersion)]
|
||||
version.releaseTime = datetime.utcfromtimestamp(int(artefact.timestamp))
|
||||
version.addTweakers = [artefact.tweakClass]
|
||||
version.mainClass = "net.minecraft.launchwrapper.Launch"
|
||||
|
@ -116,9 +116,9 @@ for filename in os.listdir('upstream/mojang/versions'):
|
||||
versionFile.libraries = libs_minecraft
|
||||
# TODO: add detection of LWJGL 3?
|
||||
if is_lwjgl_3:
|
||||
versionFile.requires = {'org.lwjgl3': '*'}
|
||||
versionFile.requires = [RequiresEntry(uid='org.lwjgl3')]
|
||||
else:
|
||||
versionFile.requires = {'org.lwjgl': '*'}
|
||||
versionFile.requires = [RequiresEntry(uid='org.lwjgl')]
|
||||
versionFile.order = -2
|
||||
# process 1.13 arguments into previous version
|
||||
if not mojangVersionFile.minecraftArguments and mojangVersionFile.arguments:
|
||||
|
@ -221,12 +221,16 @@ class MultiMCLibrary (MojangLibrary):
|
||||
class VersionedJsonObject(JsonObject):
|
||||
formatVersion = IntegerProperty(default=CurrentMultiMCFormatVersion, validators=validateSupportedMultiMCVersion)
|
||||
|
||||
class RequiresEntry (JsonObject):
|
||||
uid = StringProperty(required=True)
|
||||
equals = StringProperty(exclude_if_none=True, default=None)
|
||||
|
||||
class MultiMCVersionFile (VersionedJsonObject):
|
||||
name = StringProperty(required=True)
|
||||
version = StringProperty(required=True)
|
||||
uid = StringProperty(required=True)
|
||||
parentUid = StringProperty(exclude_if_none=True, default=None)
|
||||
requires = DictProperty(StringProperty, exclude_if_none=True, default=None)
|
||||
requires = ListProperty(RequiresEntry, exclude_if_none=True, default=None)
|
||||
assetIndex = ObjectProperty(MojangAssets, exclude_if_none=True, default=None)
|
||||
libraries = ListProperty(MultiMCLibrary, exclude_if_none=True, default=None)
|
||||
mainJar = ObjectProperty(MultiMCLibrary, exclude_if_none=True, default=None)
|
||||
@ -306,7 +310,7 @@ class MultiMCVersionIndexEntry(JsonObject):
|
||||
version = StringProperty()
|
||||
type = StringProperty(exclude_if_none=True, default=None)
|
||||
releaseTime = ISOTimestampProperty()
|
||||
requires = DictProperty(StringProperty, exclude_if_none=True, default=None)
|
||||
requires = ListProperty(RequiresEntry, exclude_if_none=True, default=None)
|
||||
recommended = BooleanProperty(exclude_if_none=True, default=None)
|
||||
sha256 = StringProperty()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user