Swift 5.0 のリリースプロセス


2018年9月25日 Ted Kremenek



この記事では、Swift 5.0 の目標、リリースプロセス、および予定スケジュールについて説明します。


動機と目標


Swift 5.0 の主な目標は、言語が ABI の安定性を達成する ことです。これにより、実行可能ファイルとライブラリによってリンク可能な OS ベンダーが、安定した Swift 実行時環境を展開できるようになります。


ABI の安定性に関連して、モジュールの安定性 も主要な焦点になります。これは、準備ができているかどうかに応じて、Swift 5.0 リリースまたはそれ以降の 5.x リリースになります。


訳注:

モジュールの安定性 のリンク先は今のところ翻訳の予定はありません。



バイナリの互換性


Swift 5.0 は以前の Swift リリースとバイナリ互換性がありません。バイナリ互換性により、異なる Swift コンパイラによってコンパイルされた Swift コードをリンクし、実行時レベルで相互運用することができます。


しかし、将来の Swift リリースは Swift 5 とバイナリ互換性がるようになりります。


ソースの互換性


Swift 4.2 と同様に、Swift 4.2 コンパイラでビルドされたソースの大部分は、Swift 5.0 コンパイラでコンパイルする必要があります。


ただし、Swift 3 互換モードは Swift 5 コンパイラではサポートされません。Swift 4.2 は Swift 3 モードをサポートする Swift の最後のリリースです。将来の (そして永続的な) ソースとバイナリの安定性の基礎となる Swift 3 に続くリリースでは、言語の表面とその実装の内部の両方に重要な変更があります。


Swift 5.0 のスナップショット


Swift 5.0 リリース分岐のダウンロード可能なスナップショットは、継続的な統合 テストの一環として定期的に投稿されます。


Swift 5.0 がリリースされれば、スナップショットに加えて正式な最終ビルドも掲載されます。


Swift 5.0 への変更


swift-5.0-branch には、Swift 5.0 でリリースされる変更が含まれます。分岐は以下のように管理されます:


この計画の5つの注目すべき例外は、swift-package-managerswift-llbuildswift-corelibs-foundationswift-corelibs-xctest、及び swift-corelibs-libdispatch であり、master から swift-5.0-branch へと毎日統合し、変更の締め切り日は 11月16日 を超えて延長され、後で発表される予定です。


Swift 5.0 への変更哲学


影響を受けたリポジトリ


以下のリポジトリでは、Swift 5.0 リリースの一部としてソースを追跡するために、swift-5.0-branch の分岐を使用します。




リリースマネージャ


リリースの全体的な管理は、リリースが収束するにつれて、Swift 5.0 リリースの変更がより厳密に制御されるようになると、アナウンスする個人によって監督されます。


リリース管理プロセスに関するご質問は、開発フォーラム に気軽に投稿していただくか、Ted Kremenek に直接ご連絡ください。



リリース分岐に関するプルリクエスト


プルリクエストを、master からの最終再分岐後にリリース分岐に含めることを検討するには、以下の情報を含めなければなりません。


swift-5.0-branch に入るすべての変更(master から自動的に統合される変更)は、対応するリリースマネージャーが受け入れるプルリクエストを経由しなければなりません。


<-Swift 4.2 がリリースされた! ミラーの仕組み->






目次
Xcode 10 の新機能

SwiftLogo
  • Swift 4.2 全メニュー

  • Swift について

  • ブログ
  • Swift 5.0 のリリースプロセス
  • 動機と目標
    バイナリの互換性
    ソースの互換性
    Swift 5.0 のスナップショット
    Swift 5.0 への変更
    Swift 5.0 への変更哲学
    影響を受けたリポジトリ
    リリースマネージャ

  • Swift のダウンロード

  • Swift 入門

  • 文書化

  • ソースコード

  • コミュニティガイドライン

  • 投稿

  • Swift の継続的統合

  • Swift ソースの互換性

  • フォーカスエリア

  • ABI の安定性

  • サーバー API プロジェクト

  • コンパイラと標準ライブラリ

  • プロジェクト

  • パッケージマネージャ

  • Swift コアライブラリ

  • REPL とデバッガ、プレイグラウンド













  • トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)












    トップへ(Swift 4.2)