Zedのリリース

Zedは現在、macOS向けに2つの公開リリースを維持しています。

  • Stable:これは、人々がダウンロードして使用する主要なバージョンです。
  • Preview:早期導入者向けに、Stableより1週間早くアップデートを受け取ります。

通常、毎週水曜日に新しいマイナーリリースをカットします。現在のPreviewがStableになり、新しいPreviewにはその時点までのmainのすべてが含まれます。

週の間にバグが見つかって修正された場合、それらはリリースブランチにチェリーピックされる可能性があり、そのためプレビュー版と安定版の新しいパッチバージョンが週を通して利用可能になる場合があります。

水曜日のリリースプロセス

これを行うには、Zedリポジトリへの書き込みアクセス権が必要です。

  • mainをチェックアウトし、作業コピーがクリーンであることを確認してください。
  • ./script/bump-zed-minor-versionsを実行し、指示に従ってタグとブランチをプッシュします。
  • https://github.com/zed-industries/zed/releases でビルドが表示されるのを待ちます(通常は約30分かかります)。
  • 待っている間に
    • プレビュー版の新しいリリースノートの作成を開始します。./script/get-preview-channel-changesの出力から始めることができます。
    • リリースのツイートの下書きを開始します。
  • ビルドの準備ができたら
    • 以前のプレビューリリースのリリースノートを現在の安定版リリースにコピーします。
    • 各リリースのアーティファクトをダウンロードし、ローカルで実行できることをテストします。
    • GitHubでリリースを公開します。
    • ツイートをツイートします(認証情報は1Passwordにあります)。

パッチリリースプロセス

PRがパニックやクラッシュを修正する場合は、現在の安定版ブランチとプレビュー版ブランチにチェリーピックする必要があります。PRが最近リリースされたコードの回帰を修正する場合は、プレビュー版にチェリーピックする必要があります。

これを行うには、Zedリポジトリへの書き込みアクセス権が必要です。

  • 変更を含むPRを通常どおりmainに送信します。
  • PRに/cherry-pick v0.XXX.xというコメントを残します。PRがマージされると、GitHubボットがブランチにPRを送信します。
    • マージの競合が発生した場合は、手動でチェリーピックし、変更をv0.XXX.xブランチにプッシュする必要があります。
  • コミットがブランチにチェリーピックされたら、./script/trigger-release {preview|stable}を実行します。これにより、バージョン番号が更新され、新しいリリースタグが作成され、リリースビルドが開始されます。
  • https://github.com/zed-industries/zed/releases でビルドが表示されるのを待ちます(通常は約30分かかります)。
  • 必要に応じてリリースノートを校正および編集します。
  • 各リリースのアーティファクトをダウンロードし、ローカルで実行できることをテストします。
  • リリースを公開します。

ナイトリーリリースプロセス

公開リリースに加えて、従業員が使用することを推奨するナイトリービルドもあります。ナイトリーは1日に1回cronによってリリースされ、必要な頻度で出荷できます。リリースノートやアナウンスはないため、変更をmainにマージして./script/trigger-release nightlyを実行するだけで済みます。