What's Changed
- Improve cross-platform node discovery for reuse with NodeMode filtering by @Copilot in #13256
- Updated common types XSD to remove errors from redefining
Includeattributes by @glektarssza in #13284 - Update VersionPrefix to 18.6.0 + insertion flow by @MichalPavlik in #13296
- Log warnings for skipped STR resource keys instead of failing the build by @OvesN in #13291
- Isolate MSBuildTaskHost from the rest of MSBuild Codebase by @DustinCampbell in #13232
- Improve error messages when ToolTask overrides exit code 0 to -1 due to logged errors by @OvesN in #13303
- Migrate Exec task to TaskEnvironment API by @Copilot in #13171
- Enhance crash telemetry with richer diagnostics and EndBuild hang detection by @YuliiaKovalova in #13304
- [main] Update dependencies from nuget/nuget.client by @dotnet-maestro[bot] in #13309
- [IBuildEngine callbacks] Stage 2: RequestCores/ReleaseCores by @JanProvaznik in #13306
- Only get command line args names on modern .NET by @baronfel in #13314
- Detect and correct worker node over-provisioning by @Copilot in #13220
- Add App Host Support for MSBuild by @YuliiaKovalova in #13175
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro[bot] in #13311
- Fix ObjectDisposedException in BuildsWhileBuildIsRunningOnServer test by @Copilot in #13316
- Add PoC of pipelines check skill by @JanKrivanek in #13242
- Fix CodeSign.MissingSigningCert for xsd/Update-MSBuildXsds.ps1 by @JanProvaznik in #13320
- Fix task host launch regressions from apphost support by @YuliiaKovalova in #13325
- Enlighten GetFrameworkPath and GetFrameworkSdkPath. by @AR-May in #13282
- Add VMR codeflow health check to pipelines skill by @JanProvaznik in #13326
- [main] Update dependencies from dotnet/roslyn by @dotnet-maestro[bot] in #13281
- Fix GenerateResource to track all ResXFileRef linked files for incremental builds by @OvesN in #13327
- Add escape hatch for not sharing assemblies from tools directory by @AR-May in #13305
- Add merge-dependency-updates skill for bot PR triage by @JanProvaznik in #13331
- Add diagnostic data to crash/hang telemetry and move null-Project check after RetrieveFromCache by @YuliiaKovalova in #13332
- Update remote-host-object.md with SDK .tlb shipping and IDispatch example by @YuliiaKovalova in #13324
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro[bot] in #13341
- improve task migration skill by @JanProvaznik in #13234
- Fix telemetry PII concerns: sanitize exceptions, project paths, and custom names by @YuliiaKovalova in #13344
- Use .exe.config when loading "as full Framework" by @rainersigwald in #13349
- Fix RequestCores/ReleaseCores fallback in OOP TaskHost: throw NotImplementedException instead of logging error by @JanProvaznik in #13345
- Fixed indentation for _GetCopyToOutputDirectoryItemsFromTransitiveProjectReferences by @CEbbinghaus in #13358
- Fix Unix SessionId in handshake to enable cross-terminal node reuse by @JakeRadMSFT in #13354
- Revert "Migrate Exec task to TaskEnvironment API" by @JanProvaznik in #13367
- Look for apphost when considering node reuse by @rainersigwald in #13368
- Move lots of shared code to Microsoft.Build.Framework by @DustinCampbell in #13364
- [main] Source code updates from dotnet/dotnet by @dotnet-maestro[bot] in #13353
- Fix ScheduleTimeRecord.AccumulatedTime hang during solution close by @YuliiaKovalova in #13375
- Update runtime package references to 10.0.3 by @Copilot in #13376
- [main] Source code updates from dotnet/dotnet by @dotnet-maestro[bot] in #13378
- Fix ProjectImports.zip regression from shared FileUtilities statics by @JanProvaznik in #13382
- Enrich EndBuild hang diagnostics with logging service and submission state by @YuliiaKovalova in #13385
- Enhance path normalization: add handling for consecutive directory separators by @tommcdon in #13369
- Move task environment drivers to Framework. by @AR-May in #13380
- Update MicrosoftBuildVersion in analyzer template by @github-actions[bot] in #13298
- Replace ProjectCacheService null Project crash with diagnostic telemetry by @YuliiaKovalova in #13396
- Add agentic workflow to auto-close PRs older than 180 days by @Copilot in #13400
- Localized file check-in by OneLocBuild Task: Build definition ID 9434: Build ID 13575337 by @dotnet-bot in #13394
- Respect MSBUILDPRESERVETOOLTEMPFILES in ProcessExit cleanup by @DmitriyShepelev in #13395
- Fix stale PR workflow: enable close_pull_request tool and add 30+7 day inactivity grace period by @Copilot in #13402
- Fix RecursiveDir metadata loss in -mt builds (TaskHost boundary only) by @JanProvaznik in #13318
- Improve logging for AppDomain assembly load tracking by @OvesN in #13359
- Proposal: instructions, skills and review agent by @T-Gro in #13397
- Fix System.IO.File/Directory property functions with relative paths in -mt mode by @JanProvaznik in #13239
- Add skill for patching VS with build msbuild by @JanKrivanek in #13405
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro[bot] in #13388
- Fix macOS symlink handshake mismatch in .NET task host (MSB4216) by @YuliiaKovalova in #13406
- Pre-size MultiDictionary in CreateEvaluatedIncludeSnapshotIfRequested to avoid resize allocations by @nareshjo in #13377
- Remove wrong review instructinons by @JanProvaznik in #13414
- Add default fallback TaskEnvironment to all IMultiThreadableTask implementations by @JanProvaznik in #13415
- Simplify vs-insertion pipelines: remove obsolete rel/dX.Y branch logic by @Copilot in #13409
- Fix thread safety issues in WorkerNodeTelemetryData by @AR-May in #13413
- Skip results transfer in MT mode to fix ResultsNodeId race by @JanProvaznik in #13417
- Move more shared files to a single binary by @DustinCampbell in #13370
- Fix ToolTask hang when grandchild processes inherit pipe handles by @YuliiaKovalova in #13351
- Fix ShouldTreatWarningAsError in OOP TaskHost checking wrong collection by @Copilot in #13440
- Add MSBuild.Benchmarks and greatly improve ItemSpecModifiers and BuiltInMetadata performance by @DustinCampbell in #13386
- Fix Unix paths normalization in properties in /mt mode. by @AR-May in #13439
- Fix race conditions in AssemblyTaskFactory class. by @AR-May in #13422
- Allow referencing virtual projects by @jjonescz in #13389
- Simplify release, add agent skill to drive release activities by @JanProvaznik in #13408
- Fix TaskHostTask to pass request-level global properties to TaskHost by @JanProvaznik in #13443
- Fix race condition in LoggingService.ProcessLoggingEvent after shutdown by @YuliiaKovalova in #13450
- Skip HandleBuildResultAsync when ProjectInstance is not loaded on in-proc node by @YuliiaKovalova in #13445
- Thread-safe task analyzer (without IL decompiler) by @JanProvaznik in #13444
- Expose public API for TaskEnvironment construction by @AR-May in #13383
- unexclude repositories in -mt validation VMR pipeline by @JanProvaznik in #13460
- Version bump check fix by @MichalPavlik in #13461
- Add ETW events for node launch lifecycle by @rainersigwald in #13459
- Refactor: use TaskEnvironment public API by @AR-May in #13462
- Prefer dotnet MSBuild.dll for out-of-proc worker nodes in CLI scenarios by @YuliiaKovalova in #13452
- Final branding for 18.6 release by @MichalPavlik in #13473
- Default to enumerating "MSBuild" processes by @rainersigwald in #13501
- [vs18.6] Fix telemetry allocation regression: per-engine collector ownership by @github-actions[bot] in #13581
- [vs18.6] Fix cross-AppDomain TaskItem modifier cache regression by @github-actions[bot] in #13515
New Contributors
- @glektarssza made their first contribution in #13284
- @CEbbinghaus made their first contribution in #13358
- @tommcdon made their first contribution in #13369
- @T-Gro made their first contribution in #13397
Full Changelog: v18.5.4...v18.6.3