Swift Package Manager
Appleが提供するSwift標準の依存関係管理ツール。別途インストールは不要で、Xcode 11以降は統合されている。
依存関係はPackage.swiftに宣言する。これは設定ファイルではなくSwiftのコードそのものだ。パッケージはgitのURLから直接取得され、中央レジストリは存在せず、バージョン指定はセマンティックバージョニングで行う。npmやMavenより単純で、同時により分散したエコシステムになっている。
CocoaPodsに対する利点は、ツールがXcodeに同梱されること、Rubyが不要なこと、別個のワークスペースを生成しないことだ。リソースやバイナリフレームワークへの対応が長く欠けていたため多くのプロジェクトがCocoaPodsに留まったが、この欠落は数年前に埋められている。SPMはサーバーサイドSwiftでも使われる。