feat: Integrates a precedence configuration setting, needs a command-line option.
All checks were successful
CI / Ubuntu (push) Successful in 2m47s

This commit is contained in:
2024-12-28 22:15:24 -05:00
parent 9631c62ee3
commit f1eb883b93
4 changed files with 60 additions and 19 deletions

View File

@@ -251,6 +251,8 @@ public extension Configuration {
public let allowPreRelease: Bool?
public let precedence: Precedence?
/// Optional pre-releas suffix strategy.
public let preRelease: PreRelease?
@@ -264,12 +266,14 @@ public extension Configuration {
public init(
allowPreRelease: Bool? = true,
precedence: Precedence? = .default,
preRelease: PreRelease? = nil,
requireExistingFile: Bool? = false,
requireExistingSemVar: Bool? = false,
strategy: Strategy? = nil
) {
self.allowPreRelease = allowPreRelease
self.precedence = precedence
self.preRelease = preRelease
self.requireExistingFile = requireExistingFile
self.requireExistingSemVar = requireExistingSemVar
@@ -281,6 +285,13 @@ public extension Configuration {
case gitTag(exactMatch: Bool? = false)
}
public enum Precedence: String, Codable, Equatable, Sendable {
case file
case strategy
public static var `default`: Self { .file }
}
}
}