Swiftpack.co - kiliankoe/swift-outdated as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
A swift subcommand for displaying when your dependencies (SwiftPM or Xcode) are out of date
.package(url: "https://github.com/kiliankoe/swift-outdated.git", from: "0.3.2")


A swift subcommand for checking if your dependencies have an update available. This especially applies to updates outside of your version requirements.

Heavily inspired by cargo-outdated.

Calling swift package update will only update to the latest available requirements inside your specified version requirements, which totally makes sense, but you might miss that there's a new major version available if you don't check the dependency's repository regularly.

This tool aims to help with that by allowing to quickly check if any requirements might be outdated, it does this by checking the remote git tags of your dependencies to see if something outside of your version requirements is available.

swift-outdated can be installed via Homebrew, although for the time being via a custom tap.

$ brew tap kiliankoe/formulae
$ brew install swift-outdated


Since swift-outdated installs with its name, it can be called just like a subcommand of Swift itself via swift outdated.

$ swift outdated

----------------------- --------- --------
 Package                 Current   Latest
----------------------- --------- --------
 Files                   4.1.1     4.2.0
 Rainbow                 3.1.5     3.2.0
 swift-argument-parser   0.0.5     0.3.2
----------------------- --------- --------

This lists all your outdated dependencies, the currently resolved version and the latest version available in their upstream repository.


swift-outdated also supports Xcode projects that use Swift packages for their dependency management. Either run it manually inside your repo or set up a Run Script Phase. In the latter case swift-outdated emits warnings for your outdated dependencies.

Xcode warnings screenshot

Be aware however that using a Run Script Phase in this way will fetch available versions for all of your dependencies on every build, which will increase your build time by a second or two. You're probably better off running this manually every now and then.


Stars: 119
Last commit: 4 weeks ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

Submit a free job ad (while I'm testing this). The analytics numbers for this website are here.

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