Skip to content

Add CreateNoNewWindow RunConfiguration setting - #15585

Merged
Jakub Jareš (nohwnd) merged 7 commits into
microsoft:mainfrom
nohwnd:add-nonewwindow-setting
Apr 1, 2026
Merged

Jakub Jareš (nohwnd) merged 7 commits into
microsoft:mainfrom
nohwnd:add-nonewwindow-setting

Conversation

@nohwnd

Copy link
Copy Markdown
Member

Closes #15584

Summary

Add a new CreateNoNewWindow RunConfiguration setting that controls whether testhost processes are started with ProcessStartInfo.CreateNoWindow = true.

Default: true - preserving existing behavior. When set to false in runsettings XML, the testhost process is allowed to create a new console window, enabling child processes and native applications to propagate their console output.

Usage

<RunSettings>
  <RunConfiguration>
    <CreateNoNewWindow>false</CreateNoNewWindow>
  </RunConfiguration>
</RunSettings>

Changes

  • Add CreateNoNewWindow property to RunConfiguration (default true)
  • Add XML serialization/deserialization for the setting
  • Add createNoNewWindow parameter to IProcessHelper.LaunchProcess
  • Pass the setting through DefaultTestHostManager and DotnetTestHostManager
  • Update PublicAPI declarations
  • Add unit tests for the new setting

Copilot AI review requested due to automatic review settings March 26, 2026 09:56

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new RunConfiguration setting (CreateNoNewWindow) to control whether testhost processes are started with ProcessStartInfo.CreateNoWindow = true, defaulting to true to preserve existing behavior.

Changes:

  • Introduces RunConfiguration.CreateNoNewWindow with XML serialization/deserialization and unit tests.
  • Threads the setting through DefaultTestHostManager / DotnetTestHostManager into process launch.
  • Extends IProcessHelper.LaunchProcess / ProcessHelper.LaunchProcess with a new createNoNewWindow parameter and updates PublicAPI declarations.

Reviewed changes

Copilot reviewed 19 out of 19 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
test/vstest.console.UnitTests/Processors/AeDebuggerArgumentProcessorTest.cs Updates Moq setup to accept new LaunchProcess parameter.
test/vstest.ProgrammerTests/Fakes/FakeProcessHelper.cs Updates fake helper signature to include createNoNewWindow.
test/Microsoft.TestPlatform.TestHostProvider.UnitTests/Hosting/DotnetTestHostManagerTests.cs Updates callbacks to match new LaunchProcess signature.
test/Microsoft.TestPlatform.TestHostProvider.UnitTests/Hosting/DefaultTestHostManagerTests.cs Updates setups/callbacks to match new LaunchProcess signature.
test/Microsoft.TestPlatform.ObjectModel.UnitTests/RunSettings/RunConfigurationTests.cs Adds tests for default, XML parsing, invalid value handling, and XML output.
test/Microsoft.TestPlatform.CrossPlatEngine.UnitTests/DataCollection/DotnetDataCollectionLauncherTests.cs Updates verifications to include new LaunchProcess parameter.
test/Microsoft.TestPlatform.CrossPlatEngine.UnitTests/Client/ProxyOperationManagerTests.cs Updates callback to match new LaunchProcess signature.
src/Microsoft.TestPlatform.TestHostProvider/Hosting/DotnetTestHostManager.cs Stores runsetting and passes it to process launch.
src/Microsoft.TestPlatform.TestHostProvider/Hosting/DefaultTestHostManager.cs Stores runsetting and passes it to process launch.
src/Microsoft.TestPlatform.PlatformAbstractions/common/System/ProcessHelper.cs Implements createNoNewWindow by mapping to ProcessStartInfo.CreateNoWindow.
src/Microsoft.TestPlatform.PlatformAbstractions/PublicAPI/uap10.0/PublicAPI.Shipped.txt Updates shipped API signature for ProcessHelper.LaunchProcess.
src/Microsoft.TestPlatform.PlatformAbstractions/PublicAPI/netstandard2.0/PublicAPI.Shipped.txt Updates shipped API signature for ProcessHelper.LaunchProcess.
src/Microsoft.TestPlatform.PlatformAbstractions/PublicAPI/netcoreapp3.1/PublicAPI.Shipped.txt Updates shipped API signature for ProcessHelper.LaunchProcess.
src/Microsoft.TestPlatform.PlatformAbstractions/PublicAPI/net8.0/PublicAPI.Shipped.txt Updates shipped API signature for ProcessHelper.LaunchProcess.
src/Microsoft.TestPlatform.PlatformAbstractions/PublicAPI/net462/PublicAPI.Shipped.txt Updates shipped API signature for ProcessHelper.LaunchProcess.
src/Microsoft.TestPlatform.PlatformAbstractions/PublicAPI/PublicAPI.Shipped.txt Updates shipped API signature for IProcessHelper.LaunchProcess.
src/Microsoft.TestPlatform.PlatformAbstractions/Interfaces/System/IProcessHelper.cs Extends interface method signature with createNoNewWindow.
src/Microsoft.TestPlatform.ObjectModel/RunSettings/RunConfiguration.cs Adds setting property, XML read/write logic, and default.
src/Microsoft.TestPlatform.ObjectModel/PublicAPI/PublicAPI.Unshipped.txt Adds new public API for RunConfiguration.CreateNoNewWindow.

/// <param name="createNoNewWindow">When true, prevents the process from creating a new console window. Default is true.</param>
/// <returns>The process created.</returns>
object LaunchProcess(string processPath, string? arguments, string? workingDirectory, IDictionary<string, string?>? envVariables, Action<object?, string?>? errorCallback, Action<object?>? exitCallBack, Action<object?, string?>? outputCallBack);
object LaunchProcess(string processPath, string? arguments, string? workingDirectory, IDictionary<string, string?>? envVariables, Action<object?, string?>? errorCallback, Action<object?>? exitCallBack, Action<object?, string?>? outputCallBack, bool createNoNewWindow = true);

Copilot AI Mar 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changing the IProcessHelper method signature is a binary-breaking change for any external implementers and consumers compiled against the previous interface (and for callers of ProcessHelper.LaunchProcess compiled against the old 7-parameter method, as optional parameters don’t preserve the old runtime signature). To avoid breaking, keep the existing signature and introduce a new API surface (e.g., a new method name or a new interface like IProcessHelper2), then have internal code prefer the new API while maintaining the old one for compatibility.

Copilot uses AI. Check for mistakes.
Comment on lines +599 to 603
.Callback<string, string, string, IDictionary<string, string>, Action<object, string>, Action<object>, Action<object, string>, bool>(
(var1, var2, var3, dictionary, errorCallback, exitCallback, outputCallback, createNoNewWindow) =>
{
var process = Process.GetCurrentProcess();

Copilot AI Mar 26, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The updated tests accept createNoNewWindow but don’t assert its value. Since this PR introduces user-visible behavior (opening/not opening a new console window), add assertions in the relevant launch-process callbacks to validate the default (true) and the runsettings-driven value (false) are actually being passed through the managers to IProcessHelper.LaunchProcess.

Copilot uses AI. Check for mistakes.
@nohwnd

Copy link
Copy Markdown
Member Author

not sure how to integration test it, on windows you can run test, make the test wait for you. Then you look at the child processes of current test, and see if testhost has conhost, or not. IMHO

Copilot AI review requested due to automatic review settings March 27, 2026 12:27
@nohwnd

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@nohwnd

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

public void ReportConsoleWindowStatus()
{
var hasConsoleWindow = GetConsoleWindow() != IntPtr.Zero;
Console.WriteLine($"HAS_CONSOLE_WINDOW={hasConsoleWindow}");

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This output won't reach the output when test passes, instead throw exception that will have your info, and match that in the assertions.


InvokeVsTest(arguments);

ExitCodeEquals(0);

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you don't have any assertion, and the test project will exit with code 1 which is fine, you need to look at the output to detect the message about new window

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you must ensure HAS_CONSOLE_WINDOW=True in standard output

InvokeVsTest(arguments);

ExitCodeEquals(1);
StdErrorContains("HAS_CONSOLE_WINDOW=False");

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

check standard output,

InvokeVsTest(arguments);

ExitCodeEquals(1);
StdErrorContains("HAS_CONSOLE_WINDOW=False");

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

check standard output,

@nohwnd Jakub Jareš (nohwnd) left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^^^

/// <param name="outputCallBack">Call back for on process output</param>
/// <param name="createNoNewWindow">When true, prevents the process from creating a new console window.</param>
/// <returns>The process created.</returns>
object LaunchProcess(string processPath, string? arguments, string? workingDirectory, IDictionary<string, string?>? envVariables, Action<object?, string?>? errorCallback, Action<object?>? exitCallBack, Action<object?, string?>? outputCallBack, bool createNoNewWindow);

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add parameter to the method above

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and remove this one

Jakub Jareš (nohwnd) and others added 6 commits March 31, 2026 09:51
Add a new RunConfiguration setting 'CreateNoNewWindow' that controls
whether testhost processes are started with CreateNoWindow=true.
Default is true, preserving existing behavior. When set to false in
runsettings XML, the testhost process is allowed to create a new
console window, enabling child processes and native applications to
propagate their console output.

Changes:
- Add CreateNoNewWindow property to RunConfiguration (default true)
- Add XML serialization/deserialization for the setting
- Add createNoNewWindow parameter to IProcessHelper.LaunchProcess
- Pass the setting through DefaultTestHostManager and DotnetTestHostManager
- Update PublicAPI declarations
- Add unit tests for the new setting

Closes microsoft#15584

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Uses GetConsoleWindow P/Invoke in a net462 test asset to verify:
- CreateNoNewWindow=false → testhost HAS a console window
- CreateNoNewWindow=true → testhost has NO console window
- Default (not set) → testhost has NO console window (preserves existing behavior)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…assertions

- Pass original string value in CreateNoNewWindow parse error (not boolValue)
- Add LaunchProcess overload instead of breaking IProcessHelper signature
- Assert createNoNewWindow value in DefaultTestHostManager tests
- Use Assert.IsTrue in ConsoleWindowCheck for reliable output capture

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Data collectors call the old 7-param LaunchProcess, not the new 8-param
overload. Fix Verify calls to match.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nIsolation only

- ConsoleWindowCheck: throw Exception instead of Assert.IsTrue so the
  HAS_CONSOLE_WINDOW status always appears in the error message output
- CreateNoNewWindowTests: use InIsolation only (InProcess does not launch
  a separate testhost, so CreateNoNewWindow has no effect)
- Check StdOutputContains for HAS_CONSOLE_WINDOW=True/False
- All tests expect exit code 1 (test always throws)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The ConsoleWindowCheck P/Invoke test was unreliable in headless/CI
environments. Replace with diag log checks that verify the
CreateNoWindow value is correctly passed through to process launch:

- Add CreateNoWindow={value} to EqtTrace in both DefaultTestHostManager
  and DotnetTestHostManager
- Acceptance tests enable /Diag and check logs for the correct value
- Remove ConsoleWindowCheck test asset (P/Invoke GetConsoleWindow)
- Tests use InIsolation only (InProcess has no separate testhost)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@nohwnd Jakub Jareš (nohwnd) added the 🚢 Ship it! Add to PRs where owner approves automated PR, but cannot approve because they "wrote it". label Mar 31, 2026
@nohwnd
Jakub Jareš (nohwnd) enabled auto-merge (squash) April 1, 2026 12:08
neinei (phsk69) pushed a commit to phsk69/litty-logs-dotnet that referenced this pull request Aug 29, 2026
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) | `17.14.1` → `18.9.0` | ![age](https://developer.mend.io/api/mc/badges/age/nuget/Microsoft.NET.Test.Sdk/18.9.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Microsoft.NET.Test.Sdk/17.14.1/18.9.0?slim=true) |

---

### Release Notes

<details>
<summary>microsoft/vstest (Microsoft.NET.Test.Sdk)</summary>

### [`v18.9.0`](https://github.com/microsoft/vstest/releases/tag/v18.9.0)

##### What's Changed

- Fix tilde/exclamation characters corrupted in TerminalLogger test output by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16046](microsoft/vstest#16046)
- Make TranslationLayer Native AOT-compatible by [@&#8203;drewnoakes](https://github.com/drewnoakes) in [#&#8203;16045](microsoft/vstest#16045)
- Guard GenerateProgramFile target against UseWinUI/UseUwpTools evaluation order by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16072](microsoft/vstest#16072)
- Add RequestingAssembly to AssemblyResolveEventArgs for binary compat by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16076](microsoft/vstest#16076)
- Remove stale Microsoft.Extensions.FileSystemGlobbing binding redirect from testhost.x86 and datacollector by [@&#8203;Evangelink](https://github.com/Evangelink) in [#&#8203;16082](microsoft/vstest#16082)
- Fix TRX attachment paths when LogFileName contains a subdirectory by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15791](microsoft/vstest#15791)
- Fix missing dumps for .NET Framework child processes in NetClientHangDumper by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16098](microsoft/vstest#16098)
- Fix data collection channels to use negotiated protocol version instead of V1 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16096](microsoft/vstest#16096)
- Fix race condition in BlameCollector: skip hang dump when testhost hasn't launched yet by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16065](microsoft/vstest#16065)
- Replace TestSDKAutoGeneratedCode with ExcludeFromCodeCoverage in auto-generated Program files by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16101](microsoft/vstest#16101)
- Include testhost process path in crash error messages by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16108](microsoft/vstest#16108)
- Fix DataDriven test results being double-counted in TRX logger totals by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15766](microsoft/vstest#15766)
- Fix datacollector crash visibility: replace Assert with throwable exceptions by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16048](microsoft/vstest#16048)
- Add TreatErrorMessagesAsWarnings parameter to TRX logger by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16106](microsoft/vstest#16106)
- Wait for testhost stderr to drain before reading its crash output by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16128](microsoft/vstest#16128)
- Handle runtimeconfig.dev.json without additionalProbingPaths by [@&#8203;tmat](https://github.com/tmat) in [#&#8203;16166](microsoft/vstest#16166)
- Suggest Microsoft.NET.Test.Sdk when a managed test project brings no testhost by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16169](microsoft/vstest#16169)
- Fix x86 testhost loading mismatched x64 hostfxr (0x800700C1) when run via vstest.console.exe directly ([#&#8203;16151](microsoft/vstest#16151)) by [@&#8203;azat-msft](https://github.com/azat-msft) in [#&#8203;16156](microsoft/vstest#16156)
- Preserve the real exception (type + stack trace) when a test run aborts in BaseRunTests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16167](microsoft/vstest#16167)

##### New Contributors

- [@&#8203;drewnoakes](https://github.com/drewnoakes) made their first contribution in [#&#8203;16045](microsoft/vstest#16045)

**Full Changelog**: <microsoft/vstest@v18.8.0...v18.9.0>

### [`v18.8.1`](https://github.com/microsoft/vstest/releases/tag/v18.8.1)

##### What's Changed

- Fix protocol negotiation timeout when STJ reflection is disabled (18.8.1) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16281](microsoft/vstest#16281)

**Full Changelog**: <microsoft/vstest@v18.8.0...v18.8.1>

### [`v18.8.0`](https://github.com/microsoft/vstest/releases/tag/v18.8.0)

##### What's Changed

- Migrate from Newtonsoft.Json to System.Text.Json / Jsonite (merge to main) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15687](microsoft/vstest#15687)
  - For more detail refer to <https://devblogs.microsoft.com/dotnet/vs-test-is-removing-its-newtonsoft-json-dependency/>
- Create source-only filter package by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15638](microsoft/vstest#15638)
- Add ARM64 msdia140.dll support to test platform packages by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15692](microsoft/vstest#15692)
- Fix mutex cleanup crash on macOS/Linux by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15684](microsoft/vstest#15684)
- Restrict artifact temp directory permissions on Unix by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15729](microsoft/vstest#15729)
- Add support for filtering uncategorized tests with TestCategory=None by [@&#8203;Evangelink](https://github.com/Evangelink) in [#&#8203;15727](microsoft/vstest#15727)
- Fix SCI binding failure in DTA hosts (main) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15724](microsoft/vstest#15724)
- Fix HTML logger parallel file collision by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15435](microsoft/vstest#15435)
- Improve error message when testhost cannot be found by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16053](microsoft/vstest#16053)
- Fix HTML logger exception on invalid XML chars in test display names by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;16051](microsoft/vstest#16051)

**Full Changelog**: <microsoft/vstest@v18.7.0...v18.8.0>

### [`v18.7.0`](https://github.com/microsoft/vstest/releases/tag/v18.7.0)

##### What's Changed

- Add ARM64 msdia140.dll support to test platform packages by [@&#8203;jamesmcroft](https://github.com/jamesmcroft) in [#&#8203;15689](microsoft/vstest#15689)
- Update System.Memory from 4.5.5 to 4.6.3 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15706](microsoft/vstest#15706)

##### New Contributors

- [@&#8203;jamesmcroft](https://github.com/jamesmcroft) made their first contribution in [#&#8203;15689](microsoft/vstest#15689)

**Full Changelog**: <microsoft/vstest@v18.6.0...v18.7.0>

### [`v18.6.0`](https://github.com/microsoft/vstest/releases/tag/v18.6.0)

##### What's Changed

- Revert removal of Video Recorder by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15336](microsoft/vstest#15336)
- Speed up blame by filtering non-.NET processes from dump collection by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15518](microsoft/vstest#15518)
- Add README.md to NuGet packages by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15550](microsoft/vstest#15550)
- Report child process info on connection timeout by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15603](microsoft/vstest#15603)

##### Changes to tests and infra

- Brand as 18.6 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15423](microsoft/vstest#15423)
- Upgrading code coverage version to 18.5.1, by [@&#8203;fhnaseer](https://github.com/fhnaseer) in [#&#8203;15422](microsoft/vstest#15422)
- Updating System.Collections.Immutable to 9.0.11 by [@&#8203;MSLukeWest](https://github.com/MSLukeWest) in [#&#8203;15425](microsoft/vstest#15425)
- Fix attachVS when used for debugging integration tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15451](microsoft/vstest#15451)
- Replace dotnet.config, with global.json by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15449](microsoft/vstest#15449)
- Document debugging integration tests with AttachVS by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15452](microsoft/vstest#15452)
- Fix stack overflow tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15461](microsoft/vstest#15461)
- Make TestAssets.sln buildable locally by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15466](microsoft/vstest#15466)
- Try filtering out tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15463](microsoft/vstest#15463)
- Build just once when tfms run in parallel by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15465](microsoft/vstest#15465)
- Review simplify compatibility sources, deduplicate tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15472](microsoft/vstest#15472)
- Cleanup dead TRX code by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15474](microsoft/vstest#15474)
- Update .NET runtimes to 8.0.25, 9.0.14, and 10.0.4 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15481](microsoft/vstest#15481)
- Compat matrix checker by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15480](microsoft/vstest#15480)
- Add trx analysis skill by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15486](microsoft/vstest#15486)
- Split integration tests to single tfm and multi tfm project by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15484](microsoft/vstest#15484)
- Update matrix by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15477](microsoft/vstest#15477)
- Break infinite restore loop in VS by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15503](microsoft/vstest#15503)
- Use global package cache for build, and local for running integration tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15500](microsoft/vstest#15500)
- Update contributing by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15505](microsoft/vstest#15505)
- Reduce test wall-clock time by increasing minThreads by [@&#8203;drognanar](https://github.com/drognanar) in [#&#8203;15502](microsoft/vstest#15502)
- Indicator flakiness by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15513](microsoft/vstest#15513)
- Fix ci build by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15515](microsoft/vstest#15515)
- Fix thread safety issues by [@&#8203;Evangelink](https://github.com/Evangelink) in [#&#8203;15512](microsoft/vstest#15512)
- Optimize DotnetSDKSimulation\_PostProcessing test (163s → 61s) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15516](microsoft/vstest#15516)
- Build isolated test assets for single TFM instead of 7 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15517](microsoft/vstest#15517)
- Remove unused dependencies from Library.IntegrationTests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15527](microsoft/vstest#15527)
- Remove printing \_attachments content to console by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15520](microsoft/vstest#15520)
- Add Linux/macOS test filtering guide to CONTRIBUTING.md by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15521](microsoft/vstest#15521)
- Change integration test parallelization from ClassLevel to MethodLevel by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15526](microsoft/vstest#15526)
- Unify target framework checks with IsNetFrameworkTarget/IsNetTarget by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15523](microsoft/vstest#15523)
- Add unattended work instructions to copilot-instructions.md by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15531](microsoft/vstest#15531)
- Reduce code style rule severity from warning to suggestion by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15522](microsoft/vstest#15522)
- Remove Debug/Release line number branching from tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15519](microsoft/vstest#15519)
- Revise unattended work instructions in copilot-instructions.md by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15532](microsoft/vstest#15532)
- Improve CompatibilityRowsBuilder error message with diagnostic details by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15529](microsoft/vstest#15529)
- docs: add git worktree and upstream sync workflow to copilot-instructions.md by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15538](microsoft/vstest#15538)
- Add VSIX runner to smoke tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15541](microsoft/vstest#15541)
- Remove deprecated WebTest and TMI test methods by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15525](microsoft/vstest#15525)
- Fix compatibility test failures for legacy vstest.console and MSTest adapter by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15534](microsoft/vstest#15534)
- Convert TestPlatform.sln to slnx format by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15551](microsoft/vstest#15551)
- Convert test/TestAssets .sln files to .slnx format by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15557](microsoft/vstest#15557)
- Enable parallelization for blame data collector tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15552](microsoft/vstest#15552)
- Fix CI failure when GeneratedTestAssets directory doesn't exist by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15556](microsoft/vstest#15556)
- Set DOTNET\_ROOT in test.sh for local Linux usage by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15559](microsoft/vstest#15559)
- Use MSTest recommended analyzers by [@&#8203;Evangelink](https://github.com/Evangelink) in [#&#8203;15539](microsoft/vstest#15539)
- Document semicolon handling in RunSettings test parameters by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15561](microsoft/vstest#15561)
- Enable CA1067 analyzer and fix violations by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15560](microsoft/vstest#15560)
- Fix HTML logger parallel file collision with atomic file creation by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15562](microsoft/vstest#15562)
- Deduplicate package extraction between verify-nupkgs and IntegrationTestBuild by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15554](microsoft/vstest#15554)
- Fix MSTEST0046: use Assert.MatchesRegex instead of StringAssert.Matches by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15575](microsoft/vstest#15575)
- Attach diagnostic logs to acceptance test runs by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15572](microsoft/vstest#15572)
- Deprecate EnableShutdownAfterTestRun which is no-op by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15576](microsoft/vstest#15576)
- Skip VideoRecorder test on CI due to access denied errors by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15587](microsoft/vstest#15587)
- Fix integration test build collision with mutex + EventWaitHandle by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15568](microsoft/vstest#15568)
- Reduce blame test flakiness: increase hang dump timeout to 10s by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15590](microsoft/vstest#15590)
- Fix concurrent modification in MetricsCollection by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15581](microsoft/vstest#15581)
- Fix PassingNoArguments test: disable --diag to preserve help output by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15583](microsoft/vstest#15583)
- perf: fix dictionary double-lookups, Collection.Contains, and LINQ allocations by [@&#8203;Evangelink](https://github.com/Evangelink) in [#&#8203;15533](microsoft/vstest#15533)
- Replace VSSDK-sourced DLLs with proper package references by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15567](microsoft/vstest#15567)
- Add target framework to default TRX file name by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15565](microsoft/vstest#15565)
- Update post-build template parameters by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15591](microsoft/vstest#15591)
- Fix path for post-build template and adjust validation by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15592](microsoft/vstest#15592)
- Add azure-pipelines-official.yml to pipeline files by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15594](microsoft/vstest#15594)
- Update comment formatting for signing validation by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15597](microsoft/vstest#15597)
- Fix enable-auto-merge for maestro by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15595](microsoft/vstest#15595)
- Auto-approve maestro PRs by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15598](microsoft/vstest#15598)
- Update enable-auto-merge to squash by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15602](microsoft/vstest#15602)
- Update enable-auto-merge.yml for the correct permissions by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15606](microsoft/vstest#15606)
- Add 365 regression tests for untested bug fixes by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15615](microsoft/vstest#15615)
- Fix typos and add comments to empty catch blocks by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15609](microsoft/vstest#15609)
- Fix flaky EventLogCollector test: ensure deterministic event log entries by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15607](microsoft/vstest#15607)
- Mark PathConverter tests as Windows-only by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15617](microsoft/vstest#15617)
- Fix HangDumpOnTimeout flakiness and ignore VideoRecorder test by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15616](microsoft/vstest#15616)
- Add copilot-setup-steps.yml by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15604](microsoft/vstest#15604)
- Add CreateNoNewWindow RunConfiguration setting by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15585](microsoft/vstest#15585)
- Add preview packages documentation by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15628](microsoft/vstest#15628)
- Cleanup filter implementation by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15629](microsoft/vstest#15629)
- Fix SCI binding failure in DTA hosts (rel/18.6) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15722](microsoft/vstest#15722)
- Remove DiagnosticSource binding redirect (rel/18.6) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15776](microsoft/vstest#15776)

**Full Changelog**: <microsoft/vstest@v18.5.1...v18.6.0>

### [`v18.5.1`](https://github.com/microsoft/vstest/releases/tag/v18.5.1)

##### What's Changed

- Fix System.Collections.Immutable binding mismatch in Common.dll (rel/18.5) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15720](microsoft/vstest#15720)
- Port verify-binding-redirects.ps1 to rel/18.5 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15719](microsoft/vstest#15719)
- Bump to 18.5.1 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15721](microsoft/vstest#15721)

**Full Changelog**: <microsoft/vstest@v18.5.0...v18.5.1>

### [`v18.5.0`](https://github.com/microsoft/vstest/releases/tag/v18.5.0)

⚠️ Unlisted on Nuget, because of [#&#8203;15718](microsoft/vstest#15718)

##### What's Changed

- Add runtime configs by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15377](microsoft/vstest#15377)
- Add net8.0 target for TranslationLayer by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15375](microsoft/vstest#15375)
- Determine architecture of remote process on windows by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15396](microsoft/vstest#15396)
- Updating System.Collections.Immutable package reference to version 9.0.0 by [@&#8203;MSLukeWest](https://github.com/MSLukeWest) in [#&#8203;15392](microsoft/vstest#15392)
- Dump via netcore tool on windows by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15397](microsoft/vstest#15397)
- Fix answer file splitting by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15381](microsoft/vstest#15381)
- Run tests against vsix runner by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15419](microsoft/vstest#15419)

**Full Changelog**: <microsoft/vstest@v18.4.0...v18.5.0>

### [`v18.4.0`](https://github.com/microsoft/vstest/releases/tag/v18.4.0)

##### What's Changed

- Add LoongArch64 support by [@&#8203;stdmnpkg](https://github.com/stdmnpkg) in [#&#8203;15359](microsoft/vstest#15359)

- Refactor Condition evaluation by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15357](microsoft/vstest#15357)

- Adding info on extensions points part 1 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15360](microsoft/vstest#15360)

- Add option to ask for uploading code QL before the standard window ends by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15373](microsoft/vstest#15373)

- Update runtime versions by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15372](microsoft/vstest#15372)

- Fix .NET 10 regression for traits by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15370](microsoft/vstest#15370)

- Update target frameworks to net10.0 and net11.0 by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15349](microsoft/vstest#15349)

- Fix names in pipeline matrix so we don't have to align them by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15365](microsoft/vstest#15365)

- Update SECURITY.md by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15342](microsoft/vstest#15342)

##### New Contributors

- [@&#8203;stdmnpkg](https://github.com/stdmnpkg) made their first contribution in [#&#8203;15359](microsoft/vstest#15359)

**Full Changelog**: <microsoft/vstest@v18.3.0...v18.4.0>

### [`v18.3.0`](https://github.com/microsoft/vstest/releases/tag/v18.3.0)

##### What's Changed

- Fix answer file splitting by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15306](microsoft/vstest#15306)

##### Internal fixes and updates

- Bump branding to 18.1 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15286](microsoft/vstest#15286)
- Remove stale copy of S.ComponentModel.Composition from testplatform packages by [@&#8203;ViktorHofer](https://github.com/ViktorHofer) in [#&#8203;15287](microsoft/vstest#15287)
- Update codeflow metadata to fix backflow by [@&#8203;premun](https://github.com/premun) in [#&#8203;15291](microsoft/vstest#15291)
- \[main] Update dependencies from devdiv/DevDiv/vs-code-coverage by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15283](microsoft/vstest#15283)
- Update Microsoft.Build.Utilities.Core by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15300](microsoft/vstest#15300)
- Disable DynamicNative instrumentation by default by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15299](microsoft/vstest#15299)
- \[main] Source code updates from dotnet/dotnet by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15293](microsoft/vstest#15293)
- \[main] Source code updates from dotnet/dotnet by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15302](microsoft/vstest#15302)
- \[main] Source code updates from dotnet/dotnet by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15314](microsoft/vstest#15314)
- Delete sha1 custom implementation we are not using for a long time by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15313](microsoft/vstest#15313)
- \[main] Source code updates from dotnet/dotnet by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15315](microsoft/vstest#15315)
- Update branding to 18.3.0 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15321](microsoft/vstest#15321)
- \[main] Update dependencies from devdiv/DevDiv/vs-code-coverage by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15325](microsoft/vstest#15325)
- \[main] Update dependencies from dotnet/arcade by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15264](microsoft/vstest#15264)
- Revert adding dotnet\_host\_path workaround by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15328](microsoft/vstest#15328)
- \[main] Update dependencies from dotnet/arcade by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15338](microsoft/vstest#15338)
- \[main] Source code updates from dotnet/dotnet by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15322](microsoft/vstest#15322)
- \[main] Update dependencies from dotnet/arcade by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15343](microsoft/vstest#15343)
- Change PreReleaseVersionLabel from 'preview' to 'release' by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15352](microsoft/vstest#15352)
- \[rel/18.3] Update dependencies from devdiv/DevDiv/vs-code-coverage by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15354](microsoft/vstest#15354)
- \[rel/18.3] Update dependencies from dotnet/arcade by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15389](microsoft/vstest#15389)
- \[rel/18.3] Update dependencies from dotnet/arcade by [@&#8203;dotnet-maestro](https://github.com/dotnet-maestro)\[bot] in [#&#8203;15400](microsoft/vstest#15400)
- Update build tools to 17.11.48 to be source buildable by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15310](microsoft/vstest#15310)
- Disable publishing on RTM by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15296](microsoft/vstest#15296)
- Don't access nuget.org for package feeds by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15316](microsoft/vstest#15316)
- No nuget access fix tests by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15317](microsoft/vstest#15317)
- Disable Dependabot updates in dependabot.yml by [@&#8203;mmitche](https://github.com/mmitche) in [#&#8203;15324](https://github.com/microsoft/vstest/pull/15324)

##### New Contributors

- [@&#8203;premun](https://github.com/premun) made their first contribution in [#&#8203;15291](microsoft/vstest#15291)

### [`v18.0.1`](https://github.com/microsoft/vstest/releases/tag/v18.0.1)

##### What's Changed

Fixing an issue with loading covrun64.dll on systems that have .NET 10 SDK installed: <https://learn.microsoft.com/en-us/dotnet/core/compatibility/sdk/10.0/code-coverage-dynamic-native-instrumentation>

- Disable DynamicNative instrumentation by default by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15298](https://github.com/microsoft/vstest/pull/15298)
- Update MicrosoftInternalCodeCoveragePackageVersion to 18.0.6 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15312](https://github.com/microsoft/vstest/pull/15312)

##### Internal changes

- Update VersionPrefix to 18.0.1 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15301](https://github.com/microsoft/vstest/pull/15301)
- Update build tools to 17.8.43 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15305](https://github.com/microsoft/vstest/pull/15305)

**Full Changelog**: <microsoft/vstest@v18.0.0...v18.0.1>

### [`v18.0.0`](https://github.com/microsoft/vstest/releases/tag/v18.0.0)

##### What's Changed

- Update reporting formatting by [@&#8203;martincostello](https://github.com/martincostello) in [#&#8203;15082](https://github.com/microsoft/vstest/pull/15082)
- Fix stack trace for Trace.Fail and Debug.Fail by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15103](https://github.com/microsoft/vstest/pull/15103)
- Add documentation of environment variables by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15095](https://github.com/microsoft/vstest/pull/15095)
- IFrameworkHandle.LaunchProcessWithDebuggerAttached allows null for workingDirectory in signature but throws by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15091](https://github.com/microsoft/vstest/pull/15091)
- Add Dependabot configuration for .NET SDK updates by [@&#8203;JamieMagee](https://github.com/JamieMagee) in [#&#8203;15114](https://github.com/microsoft/vstest/pull/15114)
- Handle dotnet\_root in testhost version aware way by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15184](https://github.com/microsoft/vstest/pull/15184)
- Add magic bytes validation for Mach-O binaries in DotnetHostHelper by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15230](https://github.com/microsoft/vstest/pull/15230)
- using globbing pattern doesn't work on windows with forward slashes by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15088](https://github.com/microsoft/vstest/pull/15088)
- Remove tpv0 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15247](https://github.com/microsoft/vstest/pull/15247)
- Cache AssemblyName in ManagedNameHelper by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15259](https://github.com/microsoft/vstest/pull/15259)
- Add ARM64 support to GetArchitectureForSource methods by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15278](https://github.com/microsoft/vstest/pull/15278)

##### Internal fixes and updates

- Fix formatting in two files by [@&#8203;ViktorHofer](https://github.com/ViktorHofer) in [#&#8203;15047](https://github.com/microsoft/vstest/pull/15047)
- Build TestPlatform packages in VMR by [@&#8203;ViktorHofer](https://github.com/ViktorHofer) in [#&#8203;15055](https://github.com/microsoft/vstest/pull/15055)
- Condition property on .NET FX MSBuild by [@&#8203;jaredpar](https://github.com/jaredpar) in [#&#8203;15054](https://github.com/microsoft/vstest/pull/15054)
- Migrate to awesome assertions by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15056](https://github.com/microsoft/vstest/pull/15056)
- Revert "Build TestPlatform packages in VMR" by [@&#8203;ViktorHofer](https://github.com/ViktorHofer) in [#&#8203;15057](https://github.com/microsoft/vstest/pull/15057)
- Update package Category by [@&#8203;ViktorHofer](https://github.com/ViktorHofer) in [#&#8203;15058](https://github.com/microsoft/vstest/pull/15058)
- Revert "Write props of tests into trx" by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15080](https://github.com/microsoft/vstest/pull/15080)
- Error on unsupported tfms ([#&#8203;15072](https://github.com/microsoft/vstest/issues/15072)) by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15073](https://github.com/microsoft/vstest/pull/15073)
- Use policies from testfx to align by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15085](https://github.com/microsoft/vstest/pull/15085)
- Update enable-auto-merge.yml by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15102](https://github.com/microsoft/vstest/pull/15102)
- Revert ignoring environment test by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15094](https://github.com/microsoft/vstest/pull/15094)
- unignore tests by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15093](https://github.com/microsoft/vstest/pull/15093)
- Update MSTest by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15108](https://github.com/microsoft/vstest/pull/15108)
- Bump dotnet-sdk from 9.0.106 to 9.0.301 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;15179](https://github.com/microsoft/vstest/pull/15179)
- Use Assert.Equals by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15181](https://github.com/microsoft/vstest/pull/15181)
- Run VSTest tests with MTP by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15079](https://github.com/microsoft/vstest/pull/15079)
- Use the standard sdk for architecture switch test by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15188](https://github.com/microsoft/vstest/pull/15188)
- Remove CUIT (Coded UI Test) from NuGet packages and test projects by [@&#8203;Copilot](https://github.com/Copilot) in [#&#8203;15177](https://github.com/microsoft/vstest/pull/15177)
- dump-logs? by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15187](https://github.com/microsoft/vstest/pull/15187)
- Moving to version 18 by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15209](https://github.com/microsoft/vstest/pull/15209)
- Update fakes version by [@&#8203;drognanar](https://github.com/drognanar) in [#&#8203;15227](https://github.com/microsoft/vstest/pull/15227)
- Microsoft.Intellitrace.Core should be taken from nuget by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15229](https://github.com/microsoft/vstest/pull/15229)
- Remove MSTest.Assert.Extensions by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15178](https://github.com/microsoft/vstest/pull/15178)
- Sourcebuild fix by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15239](https://github.com/microsoft/vstest/pull/15239)
- Set dotnet\_root\_<arch> only when the architecture of dotnet in the path is the same by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15250](https://github.com/microsoft/vstest/pull/15250)
- Remove fakes v1 from FakesUtilities by [@&#8203;drognanar](https://github.com/drognanar) in [#&#8203;15251](https://github.com/microsoft/vstest/pull/15251)
- Update fakes dependencies by [@&#8203;drognanar](https://github.com/drognanar) in [#&#8203;15254](https://github.com/microsoft/vstest/pull/15254)
- Do half the work in GetManagedName by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15255](https://github.com/microsoft/vstest/pull/15255)
- check Vsix only when produced by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15261](https://github.com/microsoft/vstest/pull/15261)
- Set dotnet\_root\_<arch> always by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15266](https://github.com/microsoft/vstest/pull/15266)
- Don't hardcode old vswhere version in global.json by [@&#8203;akoeplinger](https://github.com/akoeplinger) in [#&#8203;15267](https://github.com/microsoft/vstest/pull/15267)
- Revert dowgrade of fakes by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15263](https://github.com/microsoft/vstest/pull/15263)
- Update VSSDK to version with code flow guard by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15279](https://github.com/microsoft/vstest/pull/15279)
- Update Fakes to version with code flow guard by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15273](https://github.com/microsoft/vstest/pull/15273)
- Add es-metadata.yml by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15276](https://github.com/microsoft/vstest/pull/15276)
- Avoid iterator in TraitCollection.GetTraits by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15249](https://github.com/microsoft/vstest/pull/15249)
- MSDia update by [@&#8203;nohwnd](https://github.com/nohwnd) in [#&#8203;15281](https://github.com/microsoft/vstest/pull/15281)
- Use sdk.paths in global.json by [@&#8203;Youssef1313](https://github.com/Youssef1313) in [#&#8203;15258](https://github.com/microsoft/vstest/pull/15258)

##### New Contributors

- [@&#8203;jaredpar](https://github.com/jaredpar) made their first contribution in [#&#8203;15054](https://github.com/microsoft/vstest/pull/15054)
- [@&#8203;Copilot](https://github.com/Copilot) made their first contribution in [#&#8203;15094](https://github.com/microsoft/vstest/pull/15094)
- [@&#8203;JamieMagee](https://github.com/JamieMagee) made their first contribution in [#&#8203;15114](https://github.com/microsoft/vstest/pull/15114)
- [@&#8203;dependabot](https://github.com/dependabot)\[bot] made their first contribution in [#&#8203;15179](https://github.com/microsoft/vstest/pull/15179)

**Full Changelog**: <microsoft/vstest@v17.14.1...v18.0.0>

</details>

---

### Configuration

📅 **Schedule**: (in timezone Europe/Copenhagen)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC41MC4yIiwidXBkYXRlZEluVmVyIjoiNDQuNTAuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->

Reviewed-on: https://git.ssy.dk/public/litty-logs-dotnet/pulls/6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🚢 Ship it! Add to PRs where owner approves automated PR, but cannot approve because they "wrote it".

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add setting to disable NoNewWindow when starting testhost process

3 participants