`version`
A Scala 3 versioning toolkit - version types, parsing, manipulation, automatic derivation from Git, and build integration.
API Structure
-
version.semver(version.semver): SemVer 2.0.0 model:- Version components (Major, Minor, Patch)
- Pre-release classifiers (PreReleaseClassifier)
- Structured pre-release (PreRelease)
- Build metadata (Metadata)
- Complete version (SemVer)
- Named formatter instances (Formatter with
StandardandFull)
-
version(version): Scheme-generic core:- Version - family marker carrying the canonical-string contract
- VersionScheme - parsing, ordering, components, layout
- VersionArithmetic - component manipulation
- ResolvableScheme - Git-based resolution contract
- Formatter - per-scheme rendering strategy
- VersionResolver - scheme + tag parser + formatter bundle
- CompatibilityPolicy - API/binary compatibility
- ComponentRole - semantic role of component positions
- ComponentDescriptor - component name and role pair
-
version-resolution(version.resolution): Automatic version derivation:- Entry point (VersionCliCore) - resolve a version or list release history
- Result (ResolutionResult, ResolutionMode) and release entries (Release)
- Configuration (ResolutionConfig)
- Keyword parsing (KeywordParser)
-
version-cli: Command-line application -
sbt-version: sbt 2.x build integration (VersionPlugin)
Attributes
Members list
In this article