この記事の要点
- 「What’s new in Swift」連載の2026年7月号で、コミュニティへの貢献のかたちを振り返るゲスト寄稿から始まり、注目の動画、プロジェクトの最近の変化、新しいパッケージのリリース、そして Swift Evolution の動きを取り上げています。
- 冒頭のゲスト寄稿では、4年間 Swift Website Workgroup に参加してきた Alexander Sandberg 氏が、コンパイラや言語 Proposal に限らず、Web サイトのコンテンツ改善・レビュー・記事執筆など、誰でも学んで担える貢献の幅広さを紹介し、各 workgroup への参加を呼びかけています。
- プロジェクト面では、Google Summer of Code の各プロジェクトの進行、Swift Concurrency ランタイムに新しいプリミティブ Task Stealers が入ったこと、SwiftPM のパッケージレジストリサービスの参照実装、ツール類の細かな改善が紹介されています。
- Swift Evolution では、タグでテストを絞り込む ST-0025、現在の実行ファイルへのパスを取得する SE-0513、非同期処理に絶対時刻の締め切りを与える SE-0526 が採択されました。いずれも Swift Digest にダイジェストがあります。
この号は公式の定期ダイジェストなので、ここでは Swift 利用者が押さえておくとよい注目トピックを選んで整理し、Swift Digest 内外の関連リンクを示します。網羅的な一覧は元記事を参照してください。
注目トピック
コミュニティへの貢献のかたち(ゲスト寄稿)
今月は、4年間にわたって Swift Website Workgroup に参加してきた Alexander Sandberg 氏のゲスト寄稿から始まっています。Swift への貢献というとコンパイラの開発や言語 Evolution の Proposal 執筆・レビューが思い浮かびがちですが、氏が実際に取り組んできたのは、サイトのコンテンツやナビゲーションの改善、大規模リデザインへの参加、リリース記事の執筆、プルリクエストのレビュー、issue やフォーラム投稿への対応など、言語そのものの周辺にある仕事でした。いずれも誰でも学んで担える作業でありながら、Swift.org を訪れるすべての人の目に触れるため、小さな修正でも取り組む価値を感じられたと述べています。
氏は、Website Workgroup 以外にも server、testing、Windows、Android など各分野の workgroup があり、それぞれ少人数でエコシステムの一部を支えていると紹介しています。得意なことや興味のある分野に応じて、Swift のどこかに手助けできる場所がきっとあるとして、まずは community ページから探し始めることを勧めています。氏自身は4年間の活動を経て workgroup を離れますが、コミュニティには残り、引き続き Swift を前に進める手伝いを続けるとのことです。
注目の動画
- Balancing High and Low-Level Programming in Swift: John McCall 氏が PLDI 2026 で行った講演で、システムプログラミング向けに明示的な所有権とライフタイムの機能を Swift へ導入する取り組みと、ソース互換性や ABI 安定性を壊さずに、シンプルで摩擦の少ないアプリ開発向け言語へそれらを収める難しさを掘り下げます。
- 低レベルな Swift つながりで、携帯ゲーム機 Playdate 向けの作例2本、I Built a Timer for the Playdate in Swift と I Built a 3D Renderer for the Playdate (in Swift) が紹介されています。
- Melbourne CocoaHeads が過去のイベント講演を YouTube チャンネルで公開し始めており、その中には Christian Mitteldorf 氏による2023年のサーバーサイド Swift の講演も含まれます。
プロジェクトの最近の変化
- Google Summer of Code の各プロジェクトが進行中: Ege Kaya 氏が Swift Concurrency ランタイム向けの Task Registry を、Filip Sakellariou 氏が swift-syntax を、Padmashree S S 氏が sourcekit-lsp をそれぞれ手がけています。
- Task Stealers: Swift Concurrency ランタイムの新しいプリミティブ Task Stealers がマージされました。協調的スレッドプール上で作業がどう分配されるかを変える内部的な変更で、7月のプルリクエストの中で最も活発な議論を呼んだとのことです。並行処理を多用するコードを書くなら注目しておくとよい変更です。
- SwiftPM のパッケージレジストリ: SwiftPM にパッケージレジストリサービスの参照実装と基本認証のサポートが入りました。自前でレジストリをホストしたい場合の出発点になります。
- ツール類の細かな改善: VS Code 拡張機能は Swift のインストールが壊れているときに明示的に失敗するようになり、ビルドフォルダをクリーンにするコマンドも追加されました。また Swift Testing のイベントストリームに、CI ツールやダッシュボード向けに人間が読みやすい出力を生成する ABI.Context API が加わりました。
新しいパッケージのリリース
- swift-gigatoken: テキストを高速にトークン化するためのゼロコピーなトークナイザで、最大 670 MB/s に達します。NEON/CRC32 に対応し、WebAssembly や Embedded Swift でも動作します。
- any-error-swift: 任意の Swift エラーを型消去する、具体的で値セマンティクスを持つ
Hashableな型を提供するエラーハンドリング用パッケージです。Foundation 不要で、Swift が動くすべてのプラットフォームで利用できます。
Swift Evolution の動き
テスト・標準ライブラリ・非同期処理まわりの Proposal が採択されました。いずれも Swift Digest にダイジェストがあります。
- ST-0025 Tag-based Test Execution Filtering(採択): Swift Testing では、テストに名前付きのタグを付けられる一方、テストの実行対象を絞り込むには
--filter/--skipオプションで正規表現を指定する必要があり、タグそのもので絞り込む方法はありませんでした。本 Proposal はこれらのオプションにtag:プレフィックスを追加し、swift test --skip tag:uiTestのように、命名規則に頼らずタグに基づいてテストを選択・除外できるようにします。 - SE-0513 API to get the path to the current executable(採択): Swift には、現在実行中の実行ファイルへのパスを移植性高く確実に取得する方法がありませんでした。本 Proposal は標準ライブラリに
CommandLine.executablePathプロパティを追加し、Swift が対応するすべてのプラットフォームで一貫した方法でこの値を取得できるようにします。 - SE-0526
withDeadline(修正のうえ採択): Swift の非同期処理は際限なく実行され続ける可能性があり、task group や clock の sleep を使って手動で時間制限を実装するのは冗長で誤りやすい作業でした。本 Proposal は、clock の instant として指定した絶対時刻の締め切り付きで async 操作を実行し、間に合わなければキャンセルするwithDeadlineを追加します。締め切りを共有できるため、相対的な duration を呼び出しの階層に渡すときに蓄積するずれ(drift)も避けられます。
関連リンク
- 1つ前の号は Blogダイジェスト Swiftの最新情報: 2026年6月号 を参照してください。