version_map

package
v0.11.0-dev.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 14, 2021 License: AGPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DependencyVersionMap

type DependencyVersionMap map[string]ResolvedVersionMap

func (DependencyVersionMap) Add

func (m DependencyVersionMap) Add(dependencyName string, dependencyVersion *semver.Version, constraintString string, parentName string)

Add adds a dependency to the list of items installed for the given parent

func (DependencyVersionMap) FlatMap

FlatMap converts the DependencyVersionMap into a ResolvedVersionMap, keyed by full name

type ResolvedVersionConstraint

type ResolvedVersionConstraint struct {
	Name string
	// Alias string
	Version    *semver.Version
	Constraint string
}

func (ResolvedVersionConstraint) Equals

type ResolvedVersionListMap

type ResolvedVersionListMap map[string][]*ResolvedVersionConstraint

ResolvedVersionListMap represents a map of ResolvedVersionConstraint arrays, keyed by dependency name

func (ResolvedVersionListMap) Add

func (m ResolvedVersionListMap) Add(name string, versionConstraint *ResolvedVersionConstraint)

Add appends the version constraint to the list for the given name

func (ResolvedVersionListMap) FlatMap

FlatMap converts the ResolvedVersionListMap map into a map keyed by the FULL dependency name (i.e. including version(

func (ResolvedVersionListMap) FlatNames

func (m ResolvedVersionListMap) FlatNames() []string

FlatNames converts the ResolvedVersionListMap map into a string array of full names

func (ResolvedVersionListMap) Remove

func (m ResolvedVersionListMap) Remove(name string, constraint *ResolvedVersionConstraint)

Remove removes the given version constraint from the list for the given name

type ResolvedVersionMap

type ResolvedVersionMap map[string]*ResolvedVersionConstraint

ResolvedVersionMap represents a map of ResolvedVersionConstraint, keyed by dependency name

func (ResolvedVersionMap) Add

func (m ResolvedVersionMap) Add(name string, constraint *ResolvedVersionConstraint)

func (ResolvedVersionMap) Remove

func (m ResolvedVersionMap) Remove(name string)

func (ResolvedVersionMap) ToVersionListMap

func (m ResolvedVersionMap) ToVersionListMap() ResolvedVersionListMap

ToVersionListMap converts this map into a ResolvedVersionListMap

type VersionConstraintMap

type VersionConstraintMap map[string]*modconfig.ModVersionConstraint

type VersionListMap

type VersionListMap map[string]semver.Collection

VersionListMap is a map keyed by dependency name storing a list of versions for each dependency

func (VersionListMap) Add

func (i VersionListMap) Add(name string, version *semver.Version)

func (VersionListMap) FlatMap

func (m VersionListMap) FlatMap() map[string]bool

FlatMap converts the VersionListMap map into a bool map keyed by qualified dependency name

type VersionMap

type VersionMap map[string]*semver.Version

VersionMap represents a map of semver versions, keyed by dependency name

type WorkspaceLock

type WorkspaceLock struct {
	WorkspacePath   string
	InstallCache    DependencyVersionMap
	MissingVersions DependencyVersionMap
	// contains filtered or unexported fields
}

WorkspaceLock is a map of ModVersionMaps items keyed by the parent mod whose dependencies are installed

func EmptyWorkspaceLock

func EmptyWorkspaceLock(existingLock *WorkspaceLock) *WorkspaceLock

EmptyWorkspaceLock creates a new empty workspace lock based, sharing workspace path and installedMods with 'existingLock'

func LoadWorkspaceLock

func LoadWorkspaceLock(workspacePath string) (*WorkspaceLock, error)

func (*WorkspaceLock) ContainsModConstraint

func (l *WorkspaceLock) ContainsModConstraint(modName string, constraint *version.Constraints) bool

func (*WorkspaceLock) ContainsModVersion

func (l *WorkspaceLock) ContainsModVersion(modName string, modVersion *semver.Version) bool

ContainsModVersion returns whether the lockfile contains the given mod version

func (*WorkspaceLock) Delete

func (l *WorkspaceLock) Delete() error

Delete deletes the lock file

func (*WorkspaceLock) DeleteMods

func (l *WorkspaceLock) DeleteMods(mods VersionConstraintMap, parent *modconfig.Mod)

DeleteMods removes mods from the lock file then, if it is empty, deletes the file

func (*WorkspaceLock) Empty

func (l *WorkspaceLock) Empty() bool

Empty returns whether the install cache is empty

func (*WorkspaceLock) EnsureLockedModVersion

func (l *WorkspaceLock) EnsureLockedModVersion(requiredModVersion *modconfig.ModVersionConstraint, parent *modconfig.Mod) (*ResolvedVersionConstraint, error)

EnsureLockedModVersion looks for a lock file entry matching the required mod name

func (*WorkspaceLock) GetLockedModVersion

func (l *WorkspaceLock) GetLockedModVersion(requiredModVersion *modconfig.ModVersionConstraint, parent *modconfig.Mod) (*ResolvedVersionConstraint, error)

GetLockedModVersion looks for a lock file entry matching the required constraint and returns nil if not found

func (*WorkspaceLock) GetLockedModVersionConstraint

func (l *WorkspaceLock) GetLockedModVersionConstraint(requiredModVersion *modconfig.ModVersionConstraint, parent *modconfig.Mod) (*modconfig.ModVersionConstraint, error)

GetLockedModVersionConstraint looks for a lock file entry matching the required mod version and if found, returns it in the form of a ModVersionConstraint

func (*WorkspaceLock) GetLockedModVersions

func (l *WorkspaceLock) GetLockedModVersions(mods VersionConstraintMap, parent *modconfig.Mod) (ResolvedVersionListMap, error)

GetLockedModVersions builds a ResolvedVersionListMap with the resolved versions for each item of the given VersionConstraintMap found in the lock file

func (*WorkspaceLock) GetMod

func (l *WorkspaceLock) GetMod(modName string, parent *modconfig.Mod) *ResolvedVersionConstraint

GetMod looks for a lock file entry matching the given mod name

func (*WorkspaceLock) GetUnreferencedMods

func (l *WorkspaceLock) GetUnreferencedMods() VersionListMap

GetUnreferencedMods returns a map of all installed mods which are not in the lock file

func (*WorkspaceLock) Incomplete

func (l *WorkspaceLock) Incomplete() bool

Incomplete returned whether there are any missing dependencies (i.e. they exist in the lock file but ate not installed)

func (*WorkspaceLock) Save

func (l *WorkspaceLock) Save() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL