classInstallProfile#

class InstallProfile(
*,
spec: int,
version: str,
minecraft: str,
json: str,
libraries: list[Library] = [],
processors: list[Processor] = [],
data: dict[str, _DataValue] = {},
)#

The install_profile.json inside a Forge or NeoForge installer.

spec#

The profile format version.

Type:

int

version#

The version id it installs.

Type:

str

minecraft#

The Minecraft version it targets.

Type:

str

json_path#

The path of the version JSON inside the installer.

Type:

str

libraries#

The libraries the processors need.

Type:

list[Library]

processors#

The install steps, in order.

Type:

list[Processor]

data#

The variables available to the processors.

Type:

dict[str, modsmith.loaders._install_profile._DataValue]

classmethod parse(
data: dict[str, Any],
) → InstallProfile#

Validate a decoded profile.

Parameters:

data (dict[str, Any]) – The decoded JSON.

Returns:

The profile.

Raises:

UnsupportedError – The profile is from before Minecraft 1.13.

Return type:

InstallProfile

client_processors() → list[Processor]#

Return the steps that run on the client.