Chrome のリリース チャンネルとは

Chrome が Canary、Dev、Beta、Stable のリリース チャンネルを使用して新機能をテストし、アップデートをロールアウトする方法について学びます。

Chrome には 4 つのチャンネルがあります

モバイルとパソコンのプラットフォームで、Canary、Dev、Beta、Stable の 4 種類の Chrome を同時に使用できます。これらはリリース チャンネルと呼ばれます。

各チャンネル内で、Chrome はリリース順序と以前のバージョンからの変更の程度を示す一連のバージョンをデプロイします。

Chrome Canary

Chrome Canary は毎日リリースされます。

Chrome Canary ロゴ。

このチャンネルは、いわば炭鉱のカナリアのようなものです。これは、新しい機能や試験運用版の機能を含む、最も試験運用版の Chrome チャネルです。Chrome Canary は、実際のユーザーとデベロッパーに変更を試して、問題になる前にグリッチをテストするのに役立ちます。

変更や新機能は、最小限のテストで Canary チャンネルに追加されます。カナリアは破損する可能性があります。カナリア ビルドには、ブラウザがクラッシュしたり、一部のサイトで完全に使用できなくなったりするバグが含まれていることもあります。Canary を毎日リリースするメリットは、アップデートやバグ修正も迅速に提供できることです。デフォルトでは、Canary はクラッシュと使用統計情報を Google に報告します(この機能は無効にできます)。

カナリアは、新しい機能を実装したらすぐにテストする必要があるデベロッパーやエンタープライズ ユーザーに非常に便利です。一部の機能は Canary でしか利用できない場合があります。それが Canary のメリットです。機能を Chrome Stable で一般提供するために実装する前に、少数のユーザーを対象に Canary でテスト(および不承認または再設計)することをおすすめします。

Chrome Dev

Chrome Dev は週に 1 ~ 2 回リリースされます。

Chrome Dev ロゴ。

Chrome Dev には、Chrome チームが現在取り組んでいる内容が表示されます。このリリース チャンネルはまだ新しいため、Canary よりも多くのテストを行っていますが、バグやその他のグリッチが見つかる可能性があります。

Chrome ベータ版

Chrome ベータ版は約 1 週間に 1 回更新され、メジャー アップデートは 4 週間ごとに行われます。

Chrome Beta ロゴ。

このブラウザは、慎重にチェックとテストが行われた、より洗練されたものです。Chrome Beta では、Stable チャンネルより 1 か月以上早く、改善と新機能を利用できます。信頼性は Chrome Stable に近いレベルです。開発中の機能をプレビューし、Chrome の改善に役立つフィードバックを送信できます。

Chrome Stable

Chrome Stable は、マイナー アップデートが 2~3 週間ごとに、メジャー リリースが 4 週間ごとに更新されます。

Chrome Stable のロゴ。

このリリースは、ほとんどのユーザーが単に「Chrome」と呼んでいます。変更と更新は、Google が厳格な自動テストと手動チェックを行った後にのみ、Stable に反映されます。

これは、デフォルトと現在の Chrome チャンネルです。ほとんどのユーザーがインストールしているチャンネルです。

チャンネル ≠ バージョン

テスト中にアップデート、改善、バグ修正が組み込まれるため、各リリース チャンネルには一連の Chrome バージョンがデプロイされます。チャンネルごとに、バージョンは 1 つのリリース サイクル全体で同じメジャー バージョン番号を保持します。たとえば、このページが最初に公開されたとき、Chrome Stable はバージョン 101、Chrome Beta は 102、Chrome Dev と Chrome Canary は 103 の異なるバージョンでした。これらの主要な番号は、M101 や M102 など、マイルストーンと呼ばれることもあります。

使用しているバージョンを確認するには、chrome://version ページをご覧ください。各チャンネルのバージョン番号が時間の経過とともにどのように変化するかを確認できます。各 Chrome リリース チャンネルとプラットフォームの最新バージョンは、chromiumdash.appspot.com で確認できます。このサイトには、バージョン間のコードの違いを確認するためのツールも用意されています。

Chrome にリリース チャンネルが必要な理由

Chrome には何千人ものコントリビューターがおり、数百万行のコードと数十億人のユーザーがいます。広く使用されている複雑なソフトウェアでは、新しい機能やコードの変更によってバグが追加され、予期しない副作用が発生しないように、堅牢なプロセスと厳格なテスト メカニズムが必要です。Chrome エンジニアは、安定版リリース後も、実際のユーザーがブラウザを大規模に使用し始めるタイミングでテストを継続します。

ウェブブラウザは単独では機能しません。数百万ものウェブサイトの癖や、絶えず変化する状況、想定されるあらゆるユーザー行動や想定外のユーザー行動に対応する必要があります。

数百もの変更と更新を加えた Chrome の新しいバージョンを、数十の言語で、数十億人のユーザーに、複数のオペレーティング システムを搭載した数千台のデバイスに、すべて一度にリリースし、万事うまくいくことを祈る。もちろん、Google はそうしません。代わりに、Chrome Canary で変更や新機能をテストします。つまり、アプリケーション コードの一部を更新します。変更が安定版に反映されないこともありますが、すべてが順調に進んだ場合は、Chrome Dev で変更を適用し、その後 Chrome Beta でさらにテストとチェックを重ね、最終的に変更されたコードが Chrome Stable に反映されます。Chrome Stable は、ほとんどのユーザーが使用する Chrome リリースです。ほとんどのユーザーは単に「Chrome」と呼んでいます。

Chrome では、新しい機能のテストとデプロイに他にどのようなメカニズムを使用していますか?

フィールド トライアル

Chrome は、一部の新機能をフィールドトライアル フラグで有効または無効にできるように設計されています。デバイスで実行されている Chrome アプリケーションは、Chrome のバックエンド サーバーを定期的にチェックし、フィールド トライアル フラグに変更がないか確認します。サーバーが返すフラグ シードファイルとローカルに保存されたランダム化シードに応じて、デバイスで実行されている Chrome によって機能がオフまたはオンになります。

Chrome では、フィールド トライアルは Chrome バリエーションまたは Google 内部のコードネーム Finch とも呼ばれます。Microsoft には、Edge ブラウザ用の ECS という同様のシステムがあります。Chrome バリエーション メカニズムを使用すると、一部の Chrome ユーザーに対して新しい機能を有効にし、他のユーザーに対しては有効にしない(または必要に応じて無効にする)ことができます。詳しくは、Chrome のバリエーションとはの記事と動画をご覧ください。

指標

Chrome の機能とパフォーマンスの改善に役立つ設定が有効になっている場合(chrome://settings/syncSetup?search=improve)、Chrome はメモリ使用量、ページの読み込み時間、ブラウザ機能の使用状況など、匿名の指標を自動的にモニタリングして Chrome バックエンドに送信できます。

Chrome は指標を使用して、パフォーマンス、安定性、予期しない動作を確認します。このメカニズムは、フィールド トライアルで使用して、新しい機能を有効にしているユーザーと有効にしていないユーザーのコントロール グループの指標を比較することもできます。これにより、問題が発生した場合、Chrome エンジニアは修正に取り組んでいる間、新機能をオフにできます。

Chrome コンポーネント

一部の機能については、Chrome はモジュラー アプローチを採用しています。ブラウザの一部は、コンポーネント アップデータを使用して Chrome コンポーネントとしてデプロイされます。

コンポーネントは、新しいバージョンの Chrome をインストールしなくても更新できます。これにより、ブラウザを再起動することなく、リリース チャンネルのスケジュール外で更新をより迅速にデプロイできます。これはセキュリティ機能にとって特に重要であり、新しいバージョンの Chrome インストーラのサイズを削減できます。

たとえば、Chrome には著作権で保護された動画の再生を可能にする Widevine というモジュールがあります。コンポーネントの一覧は chrome://components で確認できます。

Chromium は、Chrome や Edge、Samsung Internet、Brave などのブラウザがベースとしているオープンソース ブラウザ プロジェクトです。ブラウザの構築とメンテナンスは非常に複雑になっているため、コードをオープンソース プロジェクトに基づいて作成することが一般的なパターンになっています。(Safari ブラウザは WebKit を使用します)。Chrome には、追加の動画コーデック、著作権で保護されたコンテンツのサポート、自動更新などの追加機能が Chromium に組み込まれています。

Chromium をインストールすることもできます。Chromium は新しいバージョンが頻繁にリリースされますが、他のブラウザで利用できる重要な機能(自動更新や、動画のストリーミングに必要なライセンス取得済みのメディア コーデックなど)が欠落している場合があります。Chromium は、一般的なウェブ ユーザーではなく、ブラウザ機能を構築するブラウザ デベロッパーに最適です。

Blink は、ウェブページのコードとリソースを表示および操作するページに変換するために使用されるレンダリング エンジンです。

V8 は、Chrome、Node.js などのアプリケーションや環境向けに Chromium プロジェクトによって開発されたオープンソースの JavaScript エンジンと WebAssembly エンジンです。

Chrome の新しいバージョンはどのようにロールアウトされますか?

Chrome では、新しいバージョンをすべてのユーザーにリリースして、うまくいくことを期待するだけではありません。代わりに、Chrome は段階的なロールアウトを使用します。

つまり、最初は各リリース チャンネルの少数のユーザーのみがアップデートを受け取ります。最初は 1 ~ 5% 程度で、徐々に 100% まで増やしていきます。機能がリリースされると、Chrome エンジニアは指標とユーザー フィードバックを使用して、予期しない問題がないか確認します。なんらかの問題が発生した場合は、Chrome チームが問題の解決方法を検討している間、ロールアウトは一時停止されます。解決策としては、試験運用版機能を無効にしたり、コンポーネントを更新したり、リスピンと呼ばれるコード更新を配布したりすることがあります。

別のリリース チャンネルをインストールするにはどうすればよいですか?

Chrome リリース チャンネルでは、パソコンまたはモバイルの複数のプラットフォームで、すべての Chrome チャンネルのダウンロードを提供しています。必要に応じてすべてインストールできます。Chrome が構築されているオープンソース ブラウザの Chromium をインストールすることもできます。

Chrome の更新の仕組み

新しいバージョンでは、新機能が追加されるだけではありません。また、バグの修正、セキュリティ アップデートの追加、既存機能の改善、コードの効率化、不要になったコードの削除も必要です。新しいタイプの攻撃からユーザーを保護し、安全を確保するには、迅速なアップデート サイクルが特に重要です。

Chrome はバックグラウンドでアップデートをダウンロードします。Chrome を更新するには、ブラウザを再起動するだけで済みます。アップデートが利用可能で、しばらく再起動していない場合は、Chrome に [更新] ボタンが表示されたり、[⋮] メニューの色が変わったりすることがあります。Google Chrome を更新するでは、自動更新をインストールする方法について説明しています。

Chrome の about:blank と、赤色の [更新] ボタン。

企業のお客様は、Chrome Canary、Beta、Dev の新しいバージョンを試用し、スタッフへのソフトウェア ロールアウトを管理できます。

Chromebook で使用されているオペレーティング システムである ChromeOS も同様に機能します。冒険心をお持ちの方や、新機能を早めに試したい場合は、Chromebook を別の ChromeOS チャンネルに切り替えることができます。

補足説明