# Constants
This constant indicates that remove cannot be performed without a lockfile.
This constant indicates that add/remove also executes lock and install subsequently, so they don't need to be run afterwards.
This constant indicates that add/remove also executes lock subsequently, so it doesn't need to be run afterwards.
This constant indicates that lock also executes install subsequently, so it doesn't need to be run afterwards.
By default, UPM assumes that each language backend implements the add/remove, lock, and install operations as totally separate steps: add/remove only modifies the specfile, lock only updates the lockfile from the specfile, and install only installs packages from the lockfile.
This constant indicates that the package manager doesn't have any concept of a lockfile, so the backend implements its own.
# Variables
No description provided by the author
# Structs
LanguageBackend is the core abstraction of UPM.
No description provided by the author
PkgInfo is a general-purpose struct for representing package metadata.
No description provided by the author
# Type aliases
PkgName represents the name of a package, e.g.
PkgSpec represents a package version constraint, e.g.
PkgVersion represents an exact package version, e.g.
Quirks is a bitmask enum used to indicate how specific language backends behave differently from the core abstractions of UPM, and therefore require some different treatment by the command-line interface layer.