イベント

GitHub Universe 2022基調講演での新発表を紹介、Copilot関連のアップデートや新しいコード検索のベータ版など

 GitHubは米国時間11月9~10日に、年次イベント「GitHub Universe 2022」を開催した。2020年からオンライン開催となっていたが、今回はリアルイベント開催とオンライン開催を併用しての開催となった。

 ここでは、基調講演でアナウンスされた新発表を紹介する。

GitHub Universe 2022基調講演に登壇したGitHub CEOのThomas Dohmke氏

「Copilot For Business」がアナウンス、声でCopilotを操作する「Hey GitHub!」も披露

 GitHub Copilotは、テキストエディター(コードエディター)上でコードを書くときに、コードの一部やコメントを入力すると、AIが推薦するコード片を示してくれる機能だ。著名(popular)なオープンソースプロジェクトのメンテナーや、学生、認定された教師に提供されていたが、2022年6月には全開発者向けにGA(一般提供開始)となった。

 基調講演では、「40%のPythonコードはCopilotで生成されている」「Copilotで55%早く開発できる」という数字が紹介された。

「40%のPythonコードはCopilotで生成されている」
「Copilotで55%早く開発できる」

 そして今回、企業向けの「Copilot For Business」がアナウンスされた。2022年12月に登場する予定。基調講演での新発表についてのブログの説明によると、企業が従業員のために購入してライセンス管理できるものになるという。

企業向けの「Copilot For Business」がアナウンス、12月に登場予定

 Copilot関連では、実験プロジェクトとして「Hey GitHub!」も披露された。人間が口頭でコンピュータに対して指示した内容が、メッセージアプリのような形式で表示されたあと、GitHub Copilotがコードを提案したときと同様にコードが書かれていくというものだ。最後に実行も声で指示して、グラフが表示された。

口頭からCopilotのようにコードを書く実験プロジェクト「Hey GitHub!」

GitHub Projectの新しいビュー「Roadmap」「Tasklist」

 GitHub Projectsは、プロジェクトのタスクなどを管理するもので、GitHub Issuesと結びついている。

 このGitHub Projectsにおいて、「Roadmap」機能が発表された。今後のプロジェクトの全体像を見るもので、基調講演ではガントチャート形式で表示されていた。また、新しい「Tasklist」UIで、タスクを分解して親子関係を持たせたり、「Tracks」欄で親子関係を見たり、タスクをIssueに変換したりできる。RoadmapとTasklistは近日公開予定。

GitHub Projectsの「Roadmap」
GitHub Projectsの「Tasklist」

 そのほか、iOSとAndroid用の「GitHub Mobile」アプリが最近GitHub Projectsをサポートしたことも紹介された(パブリックベータ)。

「GitHub Mobile」アプリが最近GitHub Projectsをサポート

フルスクラッチで作り直された新しいコード検索機能がパブリックベータに

 コーディング関連では、新しいコード検索機能が紹介された。パブリックベータで、ベータテスト参加者を募集している。

 新しいコード検索はフルスクラッチで作り直されたもので、検索速度が非常に高速であることや、IDEのようにコード中の関数名やシンボルなどから情報を調べられることが特徴だという。

 まず検索バーに入力するときのサジェストが分類されて表示され、該当する関数やシンボルを選ぶと定義に飛べる。

 また、「repo:」(リポジトリ指定)や「lang:」(プログラミング言語)のような検索演算子がいろいろ使えるほか、「//」で囲んで正規表現を指定することもできる。検索結果の左ペインに表示される「Filter」から、プログラミング言語などさまざまな条件で絞り込めるようにもなっている。検索を保存して使うこともできるという。

 また、新しい「コードビュー」表示は、画面もIDEに似せたものになっている。左ペインにファイル一覧が、中央にコードの内容が表示され、コードでは現在の関数定義の1行目を一番上に表示し続ける機能もあるという。

 そして、右ペインにはコード中で呼び出している関数などシンボル名に関する情報表示される。関数などの定義元の情報のほか、同じ関数を同様に呼んでいる個所の情報もわかるという。

新しいコード検索機能
検索結果
コードビュー表示

クラウドIDEの「GitHub Codespaces」、個人ユーザーが1カ月に最大60時間まで無料で利用できるように

 コーディング関連ではもう1つ、コードリポジトリから呼び出せるクラウド上のIDEおよび開発環境「GitHub Codespaces」において、個人ユーザーが1カ月に最大60時間まで無料で利用できるようになったことが発表された。

 制限時間は、2コア環境の場合が60時間で、4コアで30時間、8コアで15時間。16コア以上は対象とはならない。

「GitHub Codespaces」で個人ユーザーが1カ月に60時間まで無料で利用できるように

 Codespacesについてはそのほか、最近加わったものとして、GPUを利用できる機能も紹介され、絵を描くAIの「Stable Diffusion」をJupyter Notebookから使う例が動画で説明された。

GPU対応のCodespacesでStable Diffusionを使う例

オープンソース開発者のキャリアを支援する「GitHub Accelerator」「GitHub Fund」発表

 コミュニティ開発者を支援する機能としては、ユーザーが開発者に寄付できる「GitHub Sponsors」が2019年に発表されている。このGitHub Sponsorsでは、68地域で、合計2500万ドルが寄付されたことが紹介された。

 そして新しい制度として「GitHub Accelerator」が発表された。20名のメンテナーやチームに対し、フルタイムのオープンソースキャリアを開始するために、10週間のプログラムや、2万ドルの奨学金、メンター制度を提供するものだ。申し込みは12月31日まで。

 また、Microsoftのベンチャーファンド「M12」との提携による1000万ドルのファンド「GitHub Fund」も発表された。

GitHub Accelerator
GitHub Fund

GitHub Actionsで、既存のCI/CDからの移行ツールやARM環境が登場

 GitHub Actionsは、GitHub上のプロジェクトに関するイベントから自動処理を実行するもので、基調講演では「No.1 CI/CDプラットフォーム」として語られた。

 GitHub Actionsの新機能としては、今回「GitHub Actions Importer」が発表された。従来のCI/CDツールからGitHub Actionsに移行するツールだ。

 また、GitHub Actionsの実行環境として、ARMアーキテクチャの環境を提供する「Arm Development Tools」も発表された。ARMの仮想マシンの上に、クロスコンパイラと、GitHub Actionsのランナー(自動化の処理を実行するエージェント)が動く環境が用意される。

 ARMはIoT開発者からの要望だという。これまではオンプレミスや、パブリッククラウドのARMインスタンスの上にrunner実行環境を自分で用意する必要があったが、Arm Development Toolsによって自分で構築運用することなくマネージドサービスとして利用できる。

GitHub Actions Importer
GitHub ActionsにARMアーキテクチャの環境を提供する「Arm Development Tools」

GitHub Enterprise Server 3.7発表

 GitHubの機能を専用環境で使える「GitHub Enterprise」においては、IaaSやオンプレミスなどの環境で動作する「GitHub Enterprise Server」の最新版「GitHub Enterprise Server 3.7」が発表された。

 3.7には70の新機能がある。その中でも、Security Overviewダッシュボードと、再利用可能なGitHub Actionsワークフローのネストサポート、インナーソーシング(社内の別部門からの貢献)のためのフォークやリポジトリのポリシーが紹介された。

最新版「GitHub Enterprise Server 3.7」

プライベートな脆弱性レポートなど、セキュリティ関連の新機能

 セキュリティ分野でもいくつかの新発表があった。

 まず、コードの脆弱性をSQL風のクエリで調査できる「CodeQL」において、プログラミング言語RubyのサポートがGA(一般提供開始)となった。

 プロジェクトの中にある全リポジトリのセキュリティリスクを表示する「GitHub Security Overview」では、新しいダッシュボードにより、リスクに関するユーザー体験を更新した。

 「プライベートな脆弱性レポート(Private vulnerability reporting)」も発表された。脆弱性を発見したセキュリティ研究者が、非公開な形でプロジェクトに報告できる機能だ。

CodeQLでRubyのサポートがGAに
GitHub Security Overviewのダッシュボードを更新
プライベートな脆弱性レポート(Private vulnerability reporting)