Source code for spack.solver.versions

# Copyright Spack Project Developers. See COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import enum


[docs] class Provenance(enum.IntEnum): """Enumeration of the possible provenances of a version.""" # A spec literal SPEC = enum.auto() # A dev spec literal DEV_SPEC = enum.auto() # The 'packages' section of the configuration PACKAGES_YAML = enum.auto() # A git version in the 'packages' section of the configuration PACKAGES_YAML_GIT_VERSION = enum.auto() # A package requirement PACKAGE_REQUIREMENT = enum.auto() # A 'package.py' file PACKAGE_PY = enum.auto() # An installed spec INSTALLED = enum.auto() # lower provenance for installed git refs so concretizer prefers StandardVersion installs INSTALLED_GIT_VERSION = enum.auto() # Synthetic versions for virtual packages VIRTUAL_CONSTRAINT = enum.auto() # A runtime injected from another package (e.g. a compiler) RUNTIME = enum.auto() def __str__(self): return f"{self._name_.lower()}"