GitLab 19.5 リリースノート
2026年10月15日、GitLab 19.5が以下の機能とともにリリースされました。
今月の注目コントリビューターとして、レベル3のコントリビューターであるDhairyaさんをご紹介できることを嬉しく思います。
Dhairyaさんは、オフライン転送およびインポートのOrganizationsサポートに貢献し、グループ、プロジェクト、およびそのメンバーシップをGitLabインスタンス間で移動できるようにしました。
主要機能
GitLab MCPサーバーが一般提供を開始
以前のバージョンのGitLabでは、MCPクライアントがアクセスできるGitLabツールのセットは限られていました。今回のリリースで、GitLab MCPサーバーが一般提供(GA)を開始しました。
MCPサーバーを使用することで、Claude CodeやCursorなどのMCP対応エージェントは、拡張されたGitLabツールカタログおよびGitLab Duo Agent Platformのエージェントとフローに直接アクセスできるようになります。エージェントはGitLabワークフローのより広い範囲にわたって動作し、使い慣れたツールを離れることなくAgent Platformのエージェントとフローを実行できます。
GitLab Secrets Managerが一般提供を開始
一元化されたシークレットストアがない場合、認証情報はスコープが広すぎるCI/CD変数、ローカルの設定ファイル、個別のVaultなどに分散してしまいます。これにより、管理、保護、監査がより困難になります。
GitLab Secrets Managerが、GitLab.comおよびGitLab Self-Managedで一般提供を開始しました。OpenBaoをベースに構築されており、既存のグループおよびプロジェクトの権限をそのまま利用できるため、別途アクセスモデルを管理する必要はありません。各CIシークレットは、環境、ブランチ、およびブランチ保護ルールに基づいて、必要なジョブにスコープが限定されます。作成、読み取り、更新、削除のすべての操作に対して監査ログが生成されます。
GitLab Secrets ManagerはGitLabクレジットを消費します。30日間の無料トライアルを開始するか、グループまたはインスタンスで有効にすることができます。
サブグループメンバーシップによるGitLab Duoアクセスの制限
管理者は、GitLab Duoのグループメンバーシップに基づいてアクセスを制限の設定において、トップレベルグループだけでなく、任意のサブグループを選択できるようになりました。グループ階層を再構成することなく、GitLab Duo Agent Platformのアクセスを特定のチームやパイロットグループに限定できます。
以前は、この設定はトップレベルグループのみを受け付けていました。そのため、すべてのユーザーが単一のトップレベルグループに属している組織では、GitLab Duo Agent Platformのアクセスを一部のユーザーに限定するサポートされた方法がありませんでした。
サブグループを選択すると、そのサブグループの直接メンバーがアクセス権を取得します。これにより、GitLab Self-ManagedおよびGitLab DedicatedでGitLab Duo Agent Platformのパイロットを実施したり、部門ごとに段階的にアクセスを展開したりすることが容易になります。
デフォルト以外のブランチトラッキングが一般提供開始
デフォルト以外のブランチトラッキングが一般提供(GA)になりました。デフォルトブランチ以外のブランチで脆弱性を追跡できます。最良の結果を得るには、特定の環境向けブランチ(project-qa、project-prod)やデプロイプラットフォーム向けブランチ(project-iOS、project-android)など、長期間維持されるリリースブランチを少数に絞って対象にすることをお勧めします。
このリリースには以下の機能が含まれています。
- セキュリティ設定ページで、追加のブランチまたはタグを3つまで追跡できます。これはデフォルトの追跡ブランチに加えて利用できます。
- 脆弱性レポートで追跡対象のrefによるフィルタリングが可能です。
- プロジェクトレベルのセキュリティダッシュボードでブランチによるフィルタリングが可能です。
- 追跡対象ブランチの脆弱性ステータスを更新できます。
- 脆弱性管理ポリシーが追跡対象の各ブランチを個別に評価し、そのブランチの脆弱性のみを更新します。
外部接続エージェント(ECA)をAIガバナンスに接続する
これまで、AIガバナンスダッシュボードはGitLab Duo Agent Platformのエージェントからのアクティビティのみを表示していました。これにより、エージェントが実行していたセッション(ツール呼び出し、使用されたMCP、ユーザーとエージェントそれぞれからのプロンプトの入力と出力を含む)など、すべてのAgent Platformエージェントを完全に可視化できていました。
GitLab 19.5のリリースにより、一度だけglab govern setupを実行することで、ガバナンスの可視化範囲をGitLab Duo Agent Platformのエージェントだけでなく、GitLab CLI(glab)を使用してClaude Code、Cursor、CodexなどのECA(外部接続エージェント)をGitLab AIガバナンスに接続できるようになりました。
外部エージェントを許可するとAIの監査イベントを保存するが有効になっている場合、セキュリティおよびコンプライアンスチームは、GitLab Duo Agent Platformのエージェントと並んで、GitLab外部で実行されるECAを可視化できます。対象となるすべてのエージェントセッションが記録され、実行者、エージェント、プロジェクト、実行日時が把握でき、セッションとツール呼び出しはAIガバナンスダッシュボードおよびAI監査イベントレポートに表示されます。監査イベントは、監査イベントストリーミングを通じてSIEMにも送信されます。
ツールの出力は送信されませんが、失敗したツール呼び出しからの短いエラーメッセージは例外です。
この機能はベータ版です。イシュー633489でフィードバックをお寄せください。
エージェント型コア
Amazon BedrockセルフホストモデルのIAMロール
以前は、AIゲートウェイがAmazon Bedrockモデルに使用するAWS認証情報を制御できませんでした。 すべてのモデルへのアクセスに、単一のAWSアイデンティティが必要でした。
今回のリリースで、モデルごとにIAMロールを指定できるようになりました。 AIゲートウェイはモデルを呼び出す際にそのロールを引き受けます。 これにより、ロールが別のAWSアカウントにある場合でも、各モデルに必要なAWSアクセス権のみを付与できます。
GitLab Duo CLIでの画像コンテキスト
これまで、GitLab Duo CLIはテキストファイルを読み取ることができましたが、スクリーンショットや図をコンテキストとして使用することはできませんでした。 今回のリリースで、CLIをローカルでインタラクティブモードまたはヘッドレスモードで実行する際に、同じプロジェクト内のリポジトリの画像や、イシュー、マージリクエスト、コメントの添付ファイルを読み取れるようになりました。
画像コンテキストを使用するには、GitLab Duo CLI 9.27.0以降およびGitLabが管理するモデルが必要です。
GitLab Duo CLIの`/goal`コマンドが一般提供開始
GitLab Duo CLIの/goalスラッシュコマンドが、GitLab Duo CLI 9.27.0で一般提供を開始しました。
オープンエンドなゴールを記述すると、GitLab Duoがそれをローカルで実行される管理されたゴール駆動型フローに委譲し、実装と検証の両方を処理します。
開始するには、/goal <タスク>を実行します。例:
/goal Fix the failing tests in spec/models/user_spec.rbGitLab 19.5(GitLab Duo CLI 9.24.0)では、/settingsの提案されたプロンプトを/goalセッションとして実行設定により、提案されたプロンプトをチャットメッセージではなく/goalセッションとして実行できます。
/goalを使用するには、GitLab 19.3以降およびGitLab Duo CLI 9.17.0以降が必要です。
GitLab Duo CLIのオートモード
GitLab Duo CLIに新しいオートモードが追加されました。
オートモードでは、GitLab Duoが事前に承認を求めることなくツールを使用するため、シェルコマンド、git操作、またはMCPツール呼び出しのたびに処理が停止することなく、長時間のタスクを実行できます。
オートモードは組織の管理設定に従います。
- オートモードはデフォルトでオフになっています。管理者、オーナー、メンテナーは、インスタンス、グループ、プロジェクトに対してこの設定をオンにできます。 管理者およびグループオーナーは、インスタンスまたはグループ全体に対して常にオフにロックすることもできます。
- エージェントツールのガバナンスは引き続き適用されます。常に拒否に設定されたツールはブロックされたままになります。
オートモードを使用するには、GitLab Duo CLI 9.22.0以降が必要です。
>プロンプトの下に表示されるモードがautoになるまでTabキーを押してください。
オートモードは、信頼できるリポジトリおよび破棄可能なブランチでのみ使用してください。
GitLab Duo CLIのファーストラン体験の改善
GitLab Duo CLIは、ターミナルを離れることなく新規ユーザーがすぐに使い始められるよう支援します。
- 初回起動時に、オンボーディングカードが表示され、MCPサーバーへの接続とGitLabプラグインのインストールをガイドします。
- 新しいセッションを開始するたびに、オープン中のマージリクエストやイシューから提案されたプロンプトが表示されます。 マージリクエストのプロンプトでは、ソースブランチが存在する場合、GitLab Duoが最初にそのブランチをチェックアウトします。
- ステータスバーには、ブランチ、プロジェクト、マージリクエスト、
/goalの進捗状況、およびMCPのステータスが表示されます。 - セットアップ画面では、トークンの作成ページへのリンクが提供され、保存前にトークンの検証が行われます。
- プロンプト内のヒントと
/whatsnewコマンドで、新機能を確認できます。
すべての機能を利用するには、GitLab Duo CLI 9.28.0以降にアップデートしてください。
GitLab Duoでレビュアーを推薦する
以前のバージョンのGitLabでは、各承認ルールを確認してマージリクエストをレビューする時間がある人を推測する必要がありました。あるいは、グループ全体を割り当てて誰かが対応してくれることを期待するしかありませんでした。
Recommend Reviewers Flowを使用することで、レビュアーを提案できるようになりました。このフローは一般提供(GA)となっています。
各承認ルールに対して、空き状況、ワークロード、タイムゾーン、最近のアクティビティに基づき、必要な最小人数のレビュアーが推薦されます。
推薦されたレビュアーはマージリクエストのサイドバーの推薦セクションに表示されます。ユーザーにカーソルを合わせると、推薦された理由を確認できます。
開始するには、トップレベルグループでフローを有効にしてください。フローはマージリクエストの作成時に実行されます。また、ドラフトが準備完了としてマークされたときに実行されるトリガーを作成することもできます。新しい推薦を取得するには、更新を選択してください。
GitLab MCPサーバーの新しいレート制限
現在、MCPを介してエージェントをGitLabに接続している場合、ワークフローで実際に必要な頻度を超えて再接続や再試行が行われても制限がなく、GitLab.comではそのコストが発生します。
10月15日より、GitLab.com上のGitLab MCPサーバーでは、Freeプランのユーザーは1分あたり60リクエスト、PremiumおよびUltimateでは600リクエストに制限されます。再接続と再試行はすべてこの制限にカウントされます。エージェントでレート制限(HTTP 429)エラーが発生し始めた場合は、上位プランへのアップグレードを検討する前に、エージェントの再接続および再試行の設定を確認してください。
IDEで新しいAgentic Chat UIが一般提供開始
VS CodeおよびJetBrains IDEにおけるGitLab Duo Agentic ChatのUIが再設計され、GitLab 19.3でベータ版として導入されましたが、このたび一般提供が開始され、デフォルトのレイアウトとなりました。 ベータ機能や実験的機能を有効にしなくても使用できます。
新しいレイアウトにはタブがありません。会話の開始、チャット履歴の確認、エージェントとモデルの選択をすべて同じ画面で行えます。
新しいレイアウトは以下でデフォルトとなっています。
- GitLab for VS Code 7.2.0以降
- GitLab Duo plugin for JetBrains IDEs 3.50.0以降
ソフトウェア開発フローを使用したり、実行済みのフローを確認したりするには、パネルからクラシックレイアウトに切り替えてください。
MCPサーバーCI/CDアーティファクトツール
以前は、エージェントがCI/CDジョブのビルドアーティファクト内のファイルを確認する必要がある場合、1つのファイルを読み取るためだけにアーカイブ全体をダウンロードして解凍しなければなりませんでした。今回のリリースで、get_artifact_file MCPツールを使用することにより、ログ、生成されたレポート、テストフィクスチャなど、ジョブのアーティファクトから単一のファイルを直接読み取れるようになりました。
MCPサーバーグループツール
以前は、MCP経由でGitLabに接続するエージェントが、IDやパスをハードコードせずにアクセス可能なグループやサブグループを検出する方法がありませんでした。新しいlist_groupsツールを使用すると、エージェントが組織のグループ階層を自律的に参照できるようになり、識別子を推測するのではなく、アクションを実行する前に適切なグループを見つけることができます。
MCPサーバーのGitLab Duoエージェントとフローツール
新しいGitLab Duoエージェントおよびフローツールにより、任意のMCPクライアントからGitLab Duoエージェントとフローを実行・追跡できます。
start_duo_sessionはセッションを開始します。get_duo_sessionはセッションの現在の状態を読み取ります。list_duo_sessionsはセッションの履歴をページングします。list_duo_agents_and_flowsはプロジェクトで有効になっているGitLab Duoエージェントとフローを一覧表示します。
MCPサーバーのツールセット選択
GitLab MCPサーバーが公開するツールセットを選択できるようになりました。不要なツールが増えるほど、LLMのコンテキストウィンドウのスペースが無駄になり、特に複数のMCPサーバーを同時に使用している場合は、LLMが混乱するリスクも高まります。
Software Development Flowには更新されたIDE拡張機能が必要です
Software Development Flowは、他のフローと同じ基盤であるGitLab Duo Agent Platformのフローレジストリ上で動作するようになりました。 IDEでのフローの動作は変わらず、修正や改善は今後このバージョンに対して行われます。
Software Development Flowを引き続き使用するには、エディタ拡張機能を以下のいずれかのバージョン以降に更新してください。
- GitLab for VS Code 6.85.0
- GitLab Duo plugin for JetBrains IDEs 3.40.0
- GitLab for Visual Studio 0.79.0
コードレビューフローのフォローアップレビュー
以前のバージョンのGitLabでは、GitLab Duoにマージリクエストの再レビューを依頼すると、初回レビューとして扱われていました。そのため、既に対応済みのスレッドを含め、以前の指摘が繰り返されることがありました。
今回のリリースで、コードレビューフローが以前のGitLab Duoレビューのコメントスレッド(返信を含む)を参照して新しい変更を評価するようになりました。GitLab Duoは前回のレビュー以降に追加された行に焦点を当て、既に指摘した点を繰り返さず、未解決の指摘をサマリーにまとめます。コードが正しい理由をスレッドで返信した場合、GitLab Duoはその点を再度指摘しません。
フォローアップレビューを開始するには、GitLab Duoにマージリクエストの再レビューを依頼してください。プッシュ時に新しいレビューを開始をオンにすると、変更をプッシュした際にGitLab Duoが自動的にフォローアップレビューを開始します。
一般提供APIでフローをトリガーする
以前のバージョンのGitLabでは、CI/CDパイプライン、スクリプト、その他の自動化からGitLab Duo Agent Platformのフローをトリガーするために使用するAPIエンドポイントは実験的機能であったため、本番環境で利用できるかどうかを判断することが困難でした。 今回のリリースで、Flows APIのフロートリガーエンドポイントが一般提供となり、GitLab REST APIの破壊的な変更ポリシーに準拠することが保証されたため、本番環境の自動化の基盤として安心してご利用いただけます。
設定ファイルを使用してGitLab Duo CLIを設定する
設定ファイルを使用して、自分自身または組織全体のためにGitLab Duo CLIを設定できるようになりました。
設定ファイルには、/settingsパネルで行った選択内容が保存されます。ファイルを直接編集したり、コンテナイメージ内などに事前に作成したりすることも可能です。
システム管理者は、モバイルデバイス管理ツールやグループポリシーを使用して、管理対象の設定ファイルを各マシンにデプロイできます。管理対象ファイルの設定は、通常の設定ファイル、コマンドラインオプション、および環境変数よりも優先されるため、ユーザーはこれらの設定を変更できません。管理対象ファイルに含まれていない設定は、引き続きユーザーが管理できます。
設定ファイルを使用するにはGitLab Duo CLI 9.26.0以降が必要で、管理対象の設定ファイルを使用するにはGitLab Duo CLI 9.27.0以降が必要です。
統合DevOpsとセキュリティ
子パイプラインは親ジョブにオプションで依存できるようになりました
多くの開発チームは、大規模なCI/CDの設定を親パイプラインと子パイプラインに分割し、各部分を管理しやすくしています。 これまで、子パイプラインのジョブは、特定の条件下でのみ実行される親ジョブ(例えば、特定のファイルが変更された場合にのみ実行されるテストなど)に安全に依存することができませんでした。 その親ジョブがスキップされると子ジョブが失敗するため、チームはジョブの重複や脆弱なスクリプトで回避策を講じる必要がありました。
今回のリリースで、これらの依存関係をオプションとしてマークできるようになりました。親ジョブが実行された場合、子ジョブはこれまでどおりその完了を待ちます。 親ジョブが実行されない場合、子ジョブはそれを待たずに処理を進めます。回避策なしにパイプラインの速度と信頼性を維持でき、実行されたジョブで障害が発生した場合は引き続きパイプラインが停止するため、品質チェックが弱まることはありません。
この貢献をしてくださった Jimmy Spagnola さんに感謝します!
GitLab Observabilityがベータ版になりました
以前のバージョンのGitLabでは、Observabilityは実験的機能でした。現在、GitLab.comおよびGitLab Self-Managedでベータ版として提供されています。
GitLab Observabilityを使用すると、OpenTelemetryでトレース、メトリクス、ログを送信し、コード、マージリクエスト、CI/CDパイプラインと並べて確認できます。 GitLab.comでは、グループまたは個人のネームスペースごとにObservabilityを有効にするを選択してオプトインします。 GitLab Self-Managedでは、Observabilityバックエンドをホストし、グループまたは個人のネームスペースに接続します。 ベータ期間中、Observabilityは無償でご利用いただけます。
Markdownテーブルの固定ヘッダー
以前のバージョンのGitLabでは、長いテーブルをスクロールするとヘッダー行が画面外に消えてしまい、各列の内容を把握しにくい問題がありました。
今回のリリースで、表示モード、プレビュー、リッチテキストエディタのいずれにおいても、スクロール中もテーブルの上部にヘッダーが固定表示されるようになりました。固定ヘッダーは常に有効なため、設定を変更する必要はありません。
Markdownでリポジトリのコードを埋め込む
以前のバージョンのGitLabでは、ファイルの行へのpermalinkはプレーンなURLとして表示されていたため、参照先のコードを確認するにはマージリクエスト、イシュー、またはWikiページから離れる必要がありました。
今回のリリースで、permalinkはファイルパスとコミット情報付きのシンタックスハイライト済みスニペットとして表示されるようになりました。これにより、ページを離れることなくコードを確認できます。なお、埋め込みスニペットを表示するには、対象リポジトリへの読み取りアクセス権が必要です。
セキュリティ設定プロファイルのカスタマイズ
UIでシークレット検出とSASTのプロファイルをカスタマイズできるようになりました。除外パスやカスタムアナライザーイメージ、Gitの全履歴スキャンなどのスキャンオプションをグループ単位で一度設定すれば、そのグループ配下のすべてのプロジェクトに適用できます。
これまで、セキュリティ設定プロファイルはデフォルト設定でスキャナーを有効化するものでした。デフォルト以外の設定を行うには、各プロジェクトの.gitlab-ci.ymlを個別に編集する必要がありました。今回のリリースで、プロファイル自体にそれらの設定も含められるようになりました。
現時点では、依存関係スキャンプロファイルのカスタマイズはGraphQL APIからのみ利用可能です。UIでのカスタマイズは将来のリリースで提供予定です。
列によるMarkdownテーブルの並べ替え
以前のバージョンのGitLabでは、大きなMarkdownテーブルから情報を探すには、すべての行を目で追うか、テーブルをスプレッドシートにコピーする必要がありました。
今回のリリースで、レンダリングされたMarkdownテーブルを任意の列で並べ替えられるようになりました。表示モードとプレビューの両方で利用でき、列ヘッダーの並べ替えボタンを選択すると、行を昇順または降順に並べ替えられます。リセットを選択すると元の順序に戻すことも可能です。キーボードによる並べ替えにも対応しています。
AIフローがデフォルト以外のブランチでサポートされるようになりました
以前のバージョンのGitLabでは、SAST誤検出判定フロー、SAST脆弱性の修正フロー、およびシークレット誤検出判定フローは、デフォルトブランチの脆弱性に対してのみ実行できました。
今回のリリースで、脆弱性レポートから他のトラッキング対象ブランチの脆弱性に対してもこれらのフローを実行できるようになりました。マージ前に脆弱性を分析・解決するために活用できます。
Business Logic Security Analyzer(クローズドベータ)
Business Logic Security Analyzerは、GitLab Duo Agent Platformの基本フローであり、コードが何を強制するよう設計されているかを推論します。パターンベースのスキャナーが見落としがちな脆弱性、すなわちオブジェクトレベルの認可の不備、認可チェックの欠如、マスアサインメントを検出します。
GitLab Duo ChatまたはAPIからリポジトリ全体のスキャンを開始できます。マージリクエストを自動的にスキャンするには、Business Logicスキャンプロファイルをプロジェクトに関連付けてください。検出結果は脆弱性レポートおよびマージリクエストのセキュリティウィジェットに表示されます。
Business Logic Security Analyzerは、GitLab.com上のGitLab Ultimateをご利用のお客様向けにクローズドベータとして提供されています。アクセスをリクエストするには、担当のアカウントチームにお問い合わせください。各スキャンはGitLabクレジットを消費します。前提条件とセットアップについては、ビジネスロジックスキャンを参照してください。
GitLab Relay (KAS) 接続がデフォルトでgRPCを使用
GitLab Relay (KAS) はデフォルトでgRPCを使用するようになりました。GitLab.comはGitLab 19.4でgrpcs://kas.gitlab.comをアドバタイズしていました。GitLab 19.5では、LinuxパッケージおよびHelmチャートの新規インストールもgrpcs://をアドバタイズします。新規エージェントのインストールは、WebSocketでラップされたgRPCではなくgrpcs://で接続するため、ルーティングや問題解決に使用するプロトコルが1つになり、各接続のオーバーヘッドも削減されます。
wss://で接続中のエージェントは引き続き動作しますが、移行することをお勧めします。GitLab.comの場合は、エージェントのアドレスをgrpcs://kas.gitlab.comに設定してください。たとえば、gitlab-agent HelmチャートをアップグレードするときにHelmチャートで--set config.kasAddress=grpcs://kas.gitlab.comを使用します。GitLab Self-Managedの場合は、アップグレード後にエージェントのインストールコマンドに表示されるアドレスを使用してください。
マージリクエストのセキュリティレポート比較の精度向上
以前のバージョンのGitLabでは、スキャンで特定の重大度の検出結果が25件を超えた場合、セキュリティレポートは各パイプラインから25件のみを比較していました。そのため、変更のない検出結果が新規または修正済みとして表示されることがありました。
今回のリリースで、レポートは重大度ごとに最大1,000件の検出結果を比較できるようになり、新規および修正済みのリストの精度が向上しました。
セキュリティインベントリのフィルタリングされたビューを共有する
セキュリティインベントリのフィルタリングされたビューをリンクで共有できるようになりました。ツールカバレッジ、脆弱性数、またはプロジェクト名でフィルタリングし、URLをコピーして送信するだけです。リンクを開いた相手には、同じビューが表示されます。
以前は、プロジェクト名の検索のみがURLに保存されていたため、共有リンクでは他のフィルターが失われていました。今回のリリースで、フィルターの状態がすべて保持されるようになったため、ビューをブックマークしたり、該当プロジェクトを担当するチームに共有したりできます。
スケールとデプロイ
GitLab Duo Agentic Chatでカスタムフローを開始する
GitLab Duo Agentic Chatから、トリガーを事前に設定することなく、カスタムフローを直接開始できるようになりました。 以前は、カスタムフローを実行するには、メンション、アサイン、その他のイベントなどのトリガーイベントを設定する必要があり、フローのテストやイテレーションが困難でした。今回のリリースで、GitLab Duo Agentic Chatでメッセージを送信するだけで、プロジェクトで有効化されているAI Catalogフローを起動できるようになりました。送信したメッセージがフローのゴールとなります。ゴールを指定しない場合は、フロー自体の説明がゴールとして使用されます。 Chatには生成されたエージェントセッションへのリンクが表示されるため、進捗を確認できます。
自分のGitLabクレジット使用量を確認する
GitLabクレジットを使用していても、自分の使用量を確認する方法がありませんでした。 GitLabクレジットダッシュボードを開けるのはグループのオーナーと管理者のみだったため、 アクセス権を持つ人に確認を依頼する必要がありました。
ユーザー設定 > GitLabクレジットから、自分の使用量を確認できるようになりました。このページでは、合計使用量、日次平均、ピーク日を確認でき、製品でフィルタリングしたり期間を指定したりすることもできます。GitLabクレジットを持つ複数のグループに所属している場合は、グループを切り替えることができます。
Co-created contributions
LDAPでブロックされたユーザーをオンデマンドで再同期する
管理者は、管理者エリアのユーザーページから、LDAPでブロックされた単一のユーザーを再同期できるようになりました。 新しいLDAPと再同期アクションはLDAPアクセスチェックを実行し、LDAPがアクセスを許可する場合はユーザーのブロックを解除し、許可しない場合はユーザーをブロックしたままにします。ユーザーにLDAPのIDがない場合、アクションはメッセージとともに拒否されます。以前のバージョンのGitLabでは、LDAPでブロックされたアカウントは、日次ユーザー同期が実行されるか、ユーザーがサインインするまでブロックされたままでした。サービスアカウントはサインインできないため、この制限が問題となっていました。
この機能への貢献に対して、Sergey Pechenkoさんに感謝します(MR)。
REST APIからの自動マージのキャンセル
cancel_auto_merge APIエンドポイントを使用して、アクティブな自動マージをキャンセルできるようになりました。
マージリクエストがマージトレインに含まれている場合、この呼び出しによってマージトレインからも削除されます。
従来のcancel_merge_when_pipeline_succeedsエンドポイントは非推奨となりました。
また、ターゲットブランチにマージできない場合、git push -o merge_request.auto_mergeはリモートメッセージとともに拒否されるようになりました。以前のバージョンのGitLabでは、自動マージが記録されたまま残り、キャンセルするまでマージリクエストがマージ不可の状態になっていました。
これらのコントリビュートをいただいた以下のユーザーの皆さんに感謝します!
ジョブログの更新頻度を設定する
管理者は、管理者エリア > 設定 > CI/CD またはSettings APIを通じて、ジョブログの更新頻度を設定できるようになりました。3秒から3600秒の範囲で選択できます。 以前のバージョンのGitLabでは、これらの間隔は定数であったため、インスタンスにパッチを適用しない限り、短いジョブのライブログの初期遅延を短縮することができませんでした。
この貢献をしてくださった Aleksandr Kotlyar さんに感謝します(MR)!
GraphQLにおけるリポジトリタグとTerraformステート
GraphQLにRepository.tagsが追加されました。前方ページネーション、検索、および名前・更新日時・バージョン順の並び替えに対応したTagSort enumをサポートし、1ページあたり最大100件のタグを取得できます。Repository.tagsはGitLab 19.5における実験的機能です。TerraformState.versionsはステートのバージョン一覧を新しい順に返します。マージリクエストREST APIは、単一レスポンスおよびリストレスポンスの両方でauthor.botを返すようになりました。これにより、Users APIへの追加呼び出しなしに、ボットとサービスアカウントの作成者を区別できます。
以下のユーザーのコントリビュートに感謝します!
コミットテンプレートのコミット数変数
マージコミットおよびスカッシュコミットメッセージテンプレート、ならびに新しいマージリクエスト説明テンプレートで %{commits_count} を使用できるようになりました。たとえば、%{title} (%{commits_count} commits) は Bugfix (3 commits) としてレンダリングされます。
この機能への貢献に対して、Jeston Singh さんに感謝します(MR)。
レビューを送信してレビュアーになる
まだレビュアーになっていないマージリクエストに対して、コメント、承認、または変更をリクエストでレビューを送信すると、GitLabが自動的にレビュアーリストに追加するようになりました。レビュードロワーには事前に「レビュアーとして追加されます」と表示されます。これにより、レビュアーリストと実際にレビューに参加したメンバーが乖離することがなくなります。この動作は、機能フラグが削除されたGitLab 19.4から利用可能です。
このコントリビュートをいただいたMichael Fischerさんに感謝します(MR)。
失効したGPG IDはコミットを検証しなくなりました
GitLabは、GPGが失効済みとして報告したユーザーIDを無視するようになりました。失効したIDは、ユーザー設定のアクセス > GPGキーに表示されなくなり、署名済みコミットの検証済みバッジにおける検証済みメールアドレスとしてもカウントされなくなります。失効したIDで署名されたコミットは「同一ユーザー、異なるメールアドレス」または「他のユーザー」に移行し、すべてのIDが失効しているキーは何も検証しません。有効なキーのもとで既に検証済みの署名は再導出されません。
この貢献に対してJosé M. Requena Plensさんに感謝します(MR)!
その他の改善
このリリースにおけるその他の改善点は以下のとおりです。
- GitLab MCPサーバー: レート制限されたツール結果に制限名と再試行の遅延時間が表示されるようになりました。
add_branchはブランチのweb_urlを返し、有効化ツールヘッダー内のツールエイリアスが解決され、URLとプロジェクトIDの入力が一致しない場合は拒否されるようになりました。また、ai_workflowsトークンでバッチ処理でblobを読み取れるようになりました。 - 管理者モードの管理者は、プロジェクトに参加せずに環境にクラスターエージェントを設定できるようになりました。
CI_JOB_TAGSとCI_RUNNER_TAGSは各タグをJSONエンコードします。プッシュオプションで重複した変数キーは拒否されます。- 高度なSAST(Ultimate): 最大20階層の深さのCおよびC++ファイルがスキャンされ、レポートはアーティファクトの保持設定に従います。
- プレーンテキストのトークンおよびSSHキーのメールが正しいページにリンクされるようになりました。また、
?scopes=リンクでトークンフォームが事前入力されます。
これらのコントリビュートをいただいた以下のユーザーの皆様に感謝いたします。
インターフェースへのその他の追加
このリリースでは、インターフェースに以下の追加が行われました。
- マージリクエストの設定で必要な承認数を変更すると、成功時にはトーストが表示され、失敗時にはアラートが表示されます。
- 要件にすでに5つのコントロールが設定されているコンプライアンスフレームワークを再度編集できるようになりました。
- 保護環境の更新に失敗した場合、APIメッセージが表示されます。
- ブランチを作成ダイアログで、ブランチ名が検証されるまで送信ボタンが無効のままになります。
- アーカイブ済みのラベルは、イシューおよびマージリクエストの一覧でアーカイブ済みツールチップが表示され、新たに割り当てることはできません。
- グループのSAMLプロバイダーが無効になっている間は、SCIMトークンを生成できません。
.4dmファイルの構文がハイライト表示されます。- 右揃えのMarkdownテーブル列では、固定幅の数字が使用されます。
承認ルール、コンプライアンスフレームワーク、および保護環境にはPremiumまたはUltimateが必要です。
これらのコントリビュートをいただいた以下のユーザーの皆様に感謝いたします。