Chrome では、Canary、Dev、Beta、Stable の各リリース チャンネルを使用して新機能をテストし、アップデートを展開しています。
Chrome には 4 つのチャンネルがある
Chrome には、Canary、Dev、Beta、Stable の 4 種類(モバイルとデスクトップ プラットフォームで一度に提供)があります。これらはリリース チャンネルと呼ばれます。
Chrome は、各チャンネル内で一連の「バージョン」をデプロイします。バージョンversionsは、リリースの順序と以前のバージョンからの変更の度合いを示します。
Chrome Canary
Chrome Canary は毎日リリースされます。
このチャンネルは、炭鉱のカナリアのようにおなじみのものです。これは、新機能や試験運用版機能を含む最も試験運用版の Chrome チャンネルです。Chrome Canary では、不具合が生じる前に実際のユーザーやデベロッパーとともに変更を試すことができます。
最小限のテストで Canary チャンネルに変更と新機能を追加。Canary では動作が中断することがあります。場合によっては、Canary ビルドに、ブラウザがクラッシュするバグや、一部のサイトで完全に使用できなくなるバグが含まれていることもあります。Canary を毎日リリースする利点は、アップデートとバグの修正を迅速にリリースできることです。Canary では、デフォルトでクラッシュと使用統計情報が Google に報告されます(この機能は無効にできます)。
Canary は、新機能が実装されたらすぐにテストする必要があるデベロッパーや企業ユーザーにとって非常に便利です。一部の機能ではカナリア サポートまで対応しない可能性があるため、それが有用な理由となっています。Chrome Stable で一般提供として機能を実装する前に、少数のユーザーを対象に Canary で機能をテスト(場合によっては拒否または再開発)する方がはるかに優れています。
Chrome Dev
Chrome Dev は週に 1 ~ 2 回リリースされます。
Chrome Dev には、Chrome チームが現在取り組んでいる内容が表示されます。このリリース チャンネルはまだ最新であり、Canary よりも多くのテストが行われていますが、バグやその他の不具合が見つかる可能性はあります。
Chrome Beta
Chrome Beta の更新は約 1 週間に 1 回、メジャー アップデートは 4 週間ごとに行われます。
このブラウザは、きわめて洗練され、入念にチェック、テストされています。Chrome ベータ版では、Stable チャンネルがリリースされる 1 か月以上前から改善や新機能にアクセスでき、信頼性は Chrome Stable に近いレベルになります。開発中の機能をプレビューし、Chrome の改善に向けたフィードバックを提供できます。
Chrome(安定版)
Chrome Stable は、マイナー アップデートで 2 ~ 3 週間に 1 回、メジャー リリースで 4 週間に 1 回更新されます。
このリリースは、多くの人が単に「Chrome」と呼ばれています。変更とアップデートにより Stable 版になるのは、Google が厳格な自動テストと手動チェックを実施してからです。
これは、デフォルトおよび現在の Chrome チャンネルであり、大多数のユーザーがインストールしているチャンネルです。
チャンネル ≠ バージョン
各リリース チャンネルには一連の Chrome バージョンがデプロイされ、テスト中にアップデート、改善、バグ修正が組み込まれます。各チャンネルのバージョンは、1 リリース サイクルを通じて同じメジャー バージョン番号を維持します。たとえば、この記事の作成時点では、Chrome Stable はバージョン 101、Chrome ベータ版は 102、Chrome Dev と Chrome Canary は 103 の異なるバージョンでした。M101 や M102 など、メジャー番号はマイルストーンと呼ばれることもあります。
使用しているバージョンについては、chrome://version
のページをご覧ください。各チャネルのバージョン番号の経時的な変化を確認できます。omahaproxy.appspot.com で、各 Chrome リリース チャンネルおよびプラットフォームの最新バージョンを確認できます。このサイトには、バージョン間のコードの違いを確認するためのツールも用意されています。
Chrome にリリース チャンネルが必要なのはなぜですか?
Chrome は何千人ものコントリビューター、何百万行ものコード、数十億人のユーザーがいます。広く使用されている複雑なソフトウェアには、コードの新機能や変更がバグの追加や予期しない副作用を引き起こさないようにするための、堅牢なプロセスと厳格なテスト メカニズムが必要です。Chrome のエンジニアリング チームは、実際にブラウザが大規模に使用されるようになる Stable リリース以降もテストを続けています。
ウェブブラウザは単独では機能しません。企業は、絶えず変化する何百万ものウェブサイトの不自然さや、予期しないユーザー行動(予期しないユーザー行動)に対応する必要があります。
何百もの変更と更新を加えた新しいバージョンの Chrome を、複数のオペレーティング システム、数十言語、何千ものデバイスで数十億人のユーザーに一度にリリースできます。もちろんそのようなことはありません。その代わりに、まず Chrome Canary の変更や新機能を試します。つまりアプリコードの一部を更新します一部の変更はそれ以上進められませんが、問題がなければ Chrome Dev に変更を加え、次に Chrome ベータ版を更新し、テストとチェックを順次行います。最終的には、変更されたコードが Chrome Stable に導入されるまでです。Chrome Stable はほぼ皆でリリースされている Chrome リリースで ほとんどの人は単に「Chrome」と呼んでいます
Chrome では他にどのようなメカニズムを使用して新機能のテストや導入を行っていますか?
フィールド トライアル
Chrome は、一部の新機能をフィールド トライアル フラグで有効または無効にできるように設計されています。デバイスで実行されている Chrome アプリは、Chrome のバックエンド サーバーを定期的にチェックして、フィールド トライアル フラグに変更があるかどうかを確認します。サーバーから返されるフラグのシードファイルと、ローカルに保存されているランダム化のシードに応じて、デバイス上の Chrome が機能をオフまたはオンにできます。
Chrome の場合、フィールド トライアルは Chrome のバリエーション、または Google の内部コードネーム「Finch」とも呼ばれています。Microsoft には、ECS という Edge ブラウザ用の同様のシステムがあります。Chrome のバリエーションのメカニズムにより、Chrome ユーザーによって新機能を有効にできるようになる(または必要に応じて無効になる)ことが可能となります。詳しくは、Chrome のバリエーションとはの記事と動画をご覧ください。
指標
Chrome の機能とパフォーマンスの改善に役立つ設定が有効である(chrome://settings/syncSetup?search=improve
)場合、Chrome では匿名の指標(メモリ使用量、ページの読み込み時間、ブラウザ機能の使用状況など)を自動的に監視し、Chrome のバックエンドに送信することができます。
Chrome では、パフォーマンスや安定性、予期しない動作の確認に指標を使用しています。このメカニズムをフィールド トライアルで使用して、新機能を有効にしているユーザーとアクティブでないコントロール グループの指標を比較することもできます。こうすれば、問題が発生した場合でも、Chrome のエンジニアが修正に取り組んでいる間、新機能を無効にできます。
Chrome のコンポーネント
Chrome は、一部の機能についてモジュール方式を採用しています。つまり、一部のブラウザは、コンポーネント アップデータを使用して Chrome コンポーネントとしてデプロイされます。
Chrome の新しいバージョンをインストールしなくてもコンポーネントを更新できます。これにより、ブラウザを再起動することなく、リリース チャンネル スケジュール外で、アップデートをより迅速にデプロイできます。これはセキュリティ機能にとって特に重要であり、新しいバージョンに対する Chrome インストーラのサイズを縮小できます。
たとえば Chrome には、著作権で保護された動画を再生できる Widevine というモジュールがあります。コンポーネントの全一覧は、chrome://components
で確認できます。
Chromium、Blink、V8 とは
Chromium は、Chrome やその他のブラウザ(Edge、Samsung Internet、Brave など)のベースになっているオープンソースのブラウザ プロジェクトです。ブラウザのビルドとメンテナンスが複雑化したため、オープンソース プロジェクトをベースとするコードを作成することが一般的なパターンになっています。(Safari ブラウザでは WebKit が使用されます)。Chrome には、追加の動画コーデック、著作権コンテンツのサポート、自動更新などの機能が追加されています。
Chromium をインストールできます。Chromium は、頻繁に新しいバージョンが利用可能ですが、他のブラウザで使用している主要な機能(自動更新、動画のストリーミングに必要なライセンス取得済みのメディア コーデックなど)を備えていない可能性があります。Chromium は、一般的なウェブ ユーザーではなく、ブラウザ機能を構築するブラウザ デベロッパーに最適です。
Blink は、ウェブページのコードやリソースを表示、操作するページに変換するために使用されるレンダリング エンジンです。
V8 は、Chromium プロジェクトが Chrome や Node.js などのアプリケーションや環境向けに開発したオープンソースの JavaScript および WebAssembly エンジンです。
Chrome の新バージョンの展開方法
Chrome は、単に新しいバージョンをすべてのユーザーにリリースするのではなく、代わりに、Chrome は段階的な公開を使用します。
つまり、最初は各リリース チャンネルでごく少数のユーザーのみがアップデートを受けられます(最初は 1 ~ 5% 程度)。最終的には 100% になるまで段階的に拡大されます。機能がリリースされると、Chrome のエンジニアはmetricsとユーザー フィードバックを使用して、予期しない問題をチェックしています。問題が発生した場合、Chrome チームが問題の解決を試みます。たとえば、試験運用版機能の無効化、コンポーネントの更新、リスピンと呼ばれるコード更新の送信などを行います。
異なるリリース チャンネルをインストールするにはどうすればよいですか?
Chrome リリース チャンネルは、複数のプラットフォームに対応したパソコンまたはモバイルのすべての Chrome チャンネルをダウンロードできます。これらはすべて、必要に応じてインストールできます。Chrome の基盤となるオープンソース ブラウザである Chromium をインストールすることもできます。
Chrome のアップデートの仕組み
新しいバージョンは、新機能を追加するだけのものではありません。バグの修正、セキュリティ アップデートの追加、既存機能の改善、コードの効率向上、不要になったコードの削除も行う必要があります。ユーザーの安全性を確保し、新しいタイプの攻撃から安全を守るには、更新サイクルを高速化することが特に重要です。
Chrome はバックグラウンドでアップデートをダウンロードします。ブラウザを再起動するだけで Chrome を更新できます更新が利用可能でしばらく再起動していない場合は、Chrome に [更新] ボタンが表示されたり、⋮ メニューの色が変わったりする場合があります。Google Chrome を更新するでは、自動更新のインストール方法について説明しています。
企業のお客様は、Chrome Canary、Beta、Dev の新しいバージョンを試して、スタッフへのソフトウェアのロールアウトを管理できます。
Chromebook で使用されるオペレーティング システム、Chrome OS も同様です。もっと試してみたい場合や、新しい機能を早い段階で試してみたい場合は、Chromebook を別の ChromeOS チャンネルに切り替えることができます。
補足説明
- すべてのチャンネルおよびプラットフォームに対応した Chrome をダウンロード
- Chrome のバージョン番号について
- Chrome リリースブログを見る
- Chrome リリース チャンネルとプラットフォームごとに最新バージョンを確認し、バージョン間の違いを確認できるツール(omahaproxy.appspot.com)にアクセスします。
- バグを報告する
- エンタープライズおよび教育機関向けの Chrome リリース チャンネルを管理する