classPlan#

class Plan(
additions: tuple[Addition, ...] = (),
resolution: Resolution = Resolution(releases=(), conflicts=(), missing=()),
skipped: tuple[Release, ...] = (),
unavailable: tuple[str, ...] = (),
changes: Changes = Changes(added=(), updated=(), removed=(), unchanged=(), conflicts=(), orphaned=(), unresolved=(), superseded=()),
)#

What Instance.add would install. Build one with Instance.plan.

additions#

The additions to install, or to replace older releases of the same projects.

Type:

tuple[Addition, …]

resolution#

The dependency search, with any conflicts and missing dependencies.

Type:

Resolution

skipped#

Requested releases that the instance’s pack already provides.

Type:

tuple[Release, …]

unavailable#

Requested projects with no release for the instance’s game version and loader. For Instance.plan_updates, these are additions that no longer have one.

Type:

tuple[str, …]

changes#

What Instance.add would change, as of planning.

Type:

Changes

property ok: bool#

Whether Instance.add can go ahead.

It can if there are no conflicts and no required dependency is missing.