Pull Request on 2026年08月22日

dotnet/runtimeにマージされたPull RequestをAIで日本語要約

注意点

このページは、dotnet/runtimeリポジトリにマージされたPull Requestを自動的に収集し、その内容をAIが要約した内容を表示しています。そのため、必ずしも正確な要約ではない場合があります。



#132652 [release/9.0-staging] Fix hang in InvalidClientRequestTests by guarding oversized Content-Length cases to managed implementation

概要

InvalidClientRequestTests における hang を修正するバックポート。oversized Content-Length ケースをマネージド実装でガードするように修正されています。

変更内容

  • src/libraries/System.Net.HttpListener/tests/InvalidClientRequestTests.cs: テストコード修正(5行追加、2行削除)
    • oversized Content-Length に関するテストケースをマネージド実装にガードするロジックを追加

パフォーマンスへの影響

影響なし(テスト修正のため)

関連Issue

#132321(バックポート元のPR)

その他

  • 本PRはrelease/9.0-stagingへのバックポート
  • System.Net.HttpListenerのテストコードの安定性向上が目的
  • テストハング問題への対応のため、マネージド実装への条件付けが加えられた修正

#132651 [release/8.0-staging] Fix hang in InvalidClientRequestTests by guarding oversized Content-Length cases to managed implementation

概要

InvalidClientRequestTests内でハングが発生するケースを修正するバックポート。オーバーサイズのContent-Lengthケースをマネージド実装にガードして、テストの安定性を向上させています。

変更内容

  • src/libraries/System.Net.HttpListener/tests/InvalidClientRequestTests.cs: テストコードの修正により、オーバーサイズのContent-Lengthを処理する際のハング問題に対応(5行追加、2行削除)

パフォーマンスへの影響

影響なし(テストコードの修正のため、ランタイムパフォーマンスへの影響はなし)

関連Issue

#132321(本PRはこのIssueのrelease/8.0-stagingへのバックポート)

その他

  • 本PRは#132321のバックポートで、release/8.0-stagingブランチをターゲットとしています
  • System.Net.HttpListenerライブラリのテストスイート内の修正です

#132590 [release/11.0] Fix a trim a NAOT trim regression

概要

NativeAOT用途でのアプリケーションサイズ削減を目的とした最適化。Numberの静的コンストラクタを削除し、ICU関連のCompareInfo検索値とEncodingTable名前キャッシュの初期化を遅延化することで、不要なスタートアップ処理を排除します。#131019で導入されたDecimal32/64/128の超越係数テーブルがNativeAOTサイズを増加させていた回帰を修正します。

変更内容

  • Number関連: Number.Formatting.Common.csで数値フォーマット処理を最適化、Number.Formatting.csで静的初期化ロジックを見直し。複数のNumber.DecimalIeee754.*.csファイルで超越関数係数テーブルの遅延初期化化対応(Sqrt、InvTrig、Exp、Log等)
  • Globalization: CompareInfo.Icu.csでICU検索値キャッシュを遅延初期化に変更
  • Encoding: EncodingTable.csで名前キャッシュの遅延初期化実装

パフォーマンスへの影響

NativeAOTアプリケーションサイズの削減(内部実装の最適化のため、ランタイム性能への大きな影響は少ない):

  • hello-minimal-windows: -58,368バイト(7.1%削減)
  • winrt-component-minimal-windows: -57,344バイト(7.4%削減)
  • reflection-windows: -44,032バイト(2.5%削減)
  • 大規模アプリ(TodosApi等): 16~28KB削減

スタートアップ時の不要な初期化処理が削除され、初回利用時に遅延初期化される方式に変更。

関連Issue

#132550、#132576、#131019

その他

  • このPRはrelease/11.0ブランチへのバックポートで、mainブランチの確定済み変更を取り込むもの
  • 破壊的変更なし。公開APIへの変更がなく、内部実装のみ改変
  • 検証済み:CoreLib/NativeAOT CoreLibビルド、System.Globalization.Tests(61,658件)、System.Text.Encoding.Tests(14,695件)、System.Runtime.Tests(77,365件)で全て合格。NativeAOTアプリケーション(invariant-globalization Hello World含む)の実行確認済みでリスク低い

#132546 [main] Update dependencies from dotnet/icu

概要

dotnet/icu リポジトリからの依存関係更新PR。Microsoft.NETCore.Runtime.ICU.Transport パッケージを 11.0.0-alpha.1.26364.1 から 11.0.0-alpha.1.26418.1 にアップデートします。

変更内容

  • eng/Version.Details.props: バージョン情報を更新(1行追加/削除)
  • eng/Version.Details.xml: ICU Runtime パッケージのバージョンを更新(2行追加/削除)

パフォーマンスへの影響

影響なし

関連Issue

なし

その他

  • Maestro 自動依存関係更新による PR
  • ビルド日時: 2026年8月18日 UTC
  • dotnet/icu リポジトリの dotnet/main ブランチからの更新

#132388 Simplify CoreCLR Thread interop

  • 作成者: @Copilot
  • 作成日時: 2026年08月17日 05:31:39(UTC)
  • マージ日時: 2026年08月22日 02:29:58(UTC)
  • ラベル: area-System.Threading

概要

CoreCLR のスレッド相互運用性を簡素化するPRです。現在のスレッドに対する QCall(SetWaitSleepJoinState、ClearWaitSleepJoinState、CheckForPendingInterrupt)をマネージドスレッドハンドルの受け渡しから GetThread() による現在のネイティブスレッド取得に変更し、冗長なハンドル所有権管理コードを削除します。また ThreadNative_GetOSHandle でハンドル複製に失敗した際の例外処理を厳密化します。

変更内容

  • QCall の簡素化:SetWaitSleepJoinState、ClearWaitSleepJoinState、CheckForPendingInterrupt が現在のスレッドを GetThread() で直接取得するよう変更(マネージドスレッドハンドルパラメータを削除)
  • ハンドル所有権管理の削除:threads.h/.cpp から m_WeOwnThreadHandle フラグを削除し、インストール済みスレッドハンドルは常にランタイムが所有すると仮定
  • エラー処理の厳密化:ThreadNative_GetOSHandle で DuplicateHandle 失敗時に Win32 例外をスローするよう変更(従来は INVALID_HANDLE_VALUE を返却)
  • マネージド側調整:Thread.CoreCLR.cs の QCall シグネチャ変更に対応し、GC.KeepAlive(this) の冗長な呼び出しを削除

パフォーマンスへの影響

影響なし。むしろホットパスである Wait/Sleep/Join では GC.KeepAlive() 呼び出しの削除により若干の改善が期待できます。

関連Issue

#107473

その他

  • 内部実装(ランタイム内部のハンドル管理)の変更であり、公開APIへの影響なし
  • 破壊的変更なし
  • ネイティブ側(comsynchronizable.cpp)で複数回レビュアー(jkotas、VSadov等)による詳細な検討が行われた複雑なPR

#132255 [automated] Merge branch 'release/8.0' => 'release/8.0-staging'

概要

release/8.0ブランチの変更をrelease/8.0-stagingブランチに自動マージするためのPRです。複数のコミッター(hoyosjs、vseanreesermsft、dotnet-bot、iremyux)による変更が含まれています。主な変更は、NuGetおよびバージョン管理ファイルの更新、System.Net.HttpListener/WebSocketsライブラリのバグ修正とセキュリティ改善、EventPipeの機能改善です。

変更内容

  • バージョン・依存関係管理: NuGet.config、eng/Version.Details.xml、eng/Versions.props の更新
  • System.Net.HttpListener: HttpListenerRequestの処理改善と関連テストの調整
  • System.Net.WebSockets:
    • WebSocketInflaterの圧縮処理強化(17行追加、4行削除)
    • WebSocketデフレート機能のテスト拡充(59行の新テスト追加)
    • リソース文字列の追加
  • EventPipe:
    • ds-rt-coreclr.hの実装調整
    • ds-ipc-pal-socket.cのソケット処理改善

パフォーマンスへの影響

影響なし

関連Issue

なし

その他

本PRはgithub-actionsボットによる自動マージPRであり、マージコミット(--no-ff)で統合される予定です。マージ時には競合の有無を確認する必要があります。


#132254 [automated] Merge branch 'release/9.0' => 'release/9.0-staging'

概要

release/9.0ブランチからrelease/9.0-stagingブランチへの自動マージPRです。dotnet-botによるコミットを含む複数の変更をステージングブランチに統合します。バージョン情報、イベントパイプ、HttpListener、WebSocketの各コンポーネントに対する修正が含まれています。

変更内容

  • eng/Versions.props: バージョン番号の更新
  • eventpipe関連:
    • ds-rt-coreclr.h: EventPipeランタイム実装の修正(4行追加)
    • ds-ipc-pal-socket.c: ソケット通信実装の改善(16行追加、6行削除)
  • System.Net.HttpListener:
    • HttpListenerRequest.Managed.cs: リクエスト処理ロジックの簡潔化(3行追加、9行削除)
    • テスト修正:2行削除、2行追加
  • System.Net.WebSockets:
    • WebSocketInflater.cs: WebSocketデフレート圧縮処理の改善(17行追加、4行削除)
    • ManagedWebSocket.cs: マイナー修正(1行削除)
    • Strings.resx: 新しいエラーメッセージ追加(3行追加)
    • WebSocketDeflateTests.cs: デフレート圧縮機能の包括的なテスト追加(59行追加)

パフォーマンスへの影響

影響なし

関連Issue

なし

その他

このPRは自動生成された統合マージであり、release/9.0-stagingブランチを最新の状態に保つためのものです。マージはマージコミットで行い、スクイャッシュやリベースは避ける必要があります。


#132110 [release/9.0-staging] Update dependencies from dotnet/arcade

概要

dotnet/arcadeの依存関係を更新するルーチンな依存関係更新PRです。arcadeビルド 20260820.3(コミット 1236e27)に基づいて、複数のビルドタスク、SDK、テストユーティリティなどを 9.0.0-beta.26406.11 から 9.0.0-beta.26420.3 へ、XUnitコンポーネントを 2.9.0-beta.26406.11 から 2.9.0-beta.26420.3 へ更新します。

変更内容

  • eng/Version.Details.xml: arcadeの依存パッケージバージョン情報を更新(+42/-42行)
  • eng/Versions.props: グローバルバージョン定義を更新(+16/-16行)
  • eng/common/Get-GitHubAppToken.ps1: スクリプトの微調整(+14/-4行)
  • eng/common/sdl/packages.config: セキュリティ開発ライフサイクルパッケージ設定を更新(+1/-1行)
  • global.json: プロジェクト構成を更新(+3/-3行)

更新対象パッケージ:

  • Microsoft.DotNet.Arcade.Sdk、Build.Tasks.* シリーズ(Archives、Feed、Installers、Packaging等)
  • Microsoft.DotNet.CodeAnalysis、GenAPI、GenFacades、Helix.Sdk等
  • Microsoft.DotNet.XUnitExtensions、XUnitAssert、XUnitConsoleRunner

パフォーマンスへの影響

影響なし

関連Issue

なし

その他

このPRはdotnet-maestro[bot]による自動依存関係更新です(Subscription ID: 943c2154-7e47-4fed-bb40-3e772747daf7)。内部ビルドシステムおよび開発ツールチェーンの更新であり、ランタイムの直接的な機能変更はありません。


#131408 [main] Update dependencies from dotnet/xharness

概要

dotnet/xharnessからの依存関係を更新するAutomated Pull Requestです。Microsoft.DotNet.XHarness関連のパッケージ(CLI、TestRunners.Common、TestRunners.Xunit)をプレリリース版11.0.0-prerelease.26368.1から11.0.0-prerelease.26413.1に更新します。

変更内容

  • .config/dotnet-tools.json: ツール設定ファイルの更新(+1/-1行)
  • eng/Version.Details.props: バージョン詳細プロパティファイルの更新(+3/-3行)
  • eng/Version.Details.xml: バージョン詳細XMLファイルの更新(+6/-6行)

パフォーマンスへの影響

影響なし

関連Issue

なし

その他


#130694 Remove dead net8 code

  • 作成者: @xtqqczze
  • 作成日時: 2026年07月14日 16:04:45(UTC)
  • マージ日時: 2026年08月22日 21:10:26(UTC)
  • ラベル: area-System.Text.Json

概要

.NET 8向けの互換性コードを削除するクリーンアップです。PR #121853以降、最小サポートバージョン(NetCoreAppMinimum)が.NET 10に引き上げられたため、.NET 8固有の条件分岐やポリフィルコードが不要になりました。

変更内容

  • Base64Helper.cs: .NET 8向けの条件付きコード90行を削除
  • ReflectionExtensions.cs: System.Text.Json内の.NET 8互換性コード48行を削除
  • DefaultJsonTypeInfoResolver.Helpers.cs: JSON型情報解決器の.NET 8対応コード78行を削除

パフォーマンスへの影響

影響なし(デッドコードの削除のみ。メンテナンス性向上によるコンパイル時間のわずかな改善の可能性あり)

関連Issue

なし

その他

このPRは技術的負債の削減を目的とした、メンテナンス性向上のための変更です。破壊的変更ではなく、最小バージョン要件がすでに.NET 10に設定されているため、既存の互換性には影響ありません。


目次