Swiftpack.co - mflknr/swift-version-compare as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by mflknr.
mflknr/swift-version-compare 2.0.1
Create and compare semantic versions in swift.
⭐️ 10
🕓 7 weeks ago
iOS macOS watchOS tvOS
.package(url: "https://github.com/mflknr/swift-version-compare.git", from: "2.0.1")

swift-version-compare

build doccov licence

A package introducing a Version object implementing the SemanticVersionComparable protocol for comparing versions conforming to SemVer.

Installation

Swift Package Manager:

.package(url: "https://github.com/mflknr/swift-version-compare.git", from: "2.0.0"))

Usage

For detailed implementation information see documentation.

// use the version core identifier for initialization
let versionOne = Version(1, 0, 0)
let versionTwo = Version(
    major: 1,
    minor: 0,
    patch: 0,
    prerelease: [.alpha],
    build: ["1"]
) // -> prints: "1.0.0-alpha+1"

// use strings
// use `ExpressibleByStringLiteral` with caution, because it's fatal if string is not `SemVer` version
let versionThreeA: Version? = "1.0.0" 
let versionThreeB: Version? = Version("1.0.0")

// easy initial `0.0.0` version
let initialVersion: Version = .initial

// from bundle and processInfo
let bundleVersion = Bundle.main.shortVersion
let osVersion = ProcessInfo.processInfo.comparableOperatingSystemVersion

// compare versions with usally known operators (==, ===, <, <=, >=, >)
if Version("1.0.0") > Version("0.4.0") {
    // ...
}

GitHub

link
Stars: 10
Last commit: 4 weeks ago
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

2.0.1
7 weeks ago

Added

  • PrivacyManifest.xcprivacy file

Changed

  • moved source files and added path to target in Package.swift

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics