Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/source-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,10 @@
"commitSha": "f4059b7987c5ff3e4699805ca9e15e69f173e4da"
},
{
"barId": 320500,
"barId": 320725,
"path": "vstest",
"remoteUri": "https://github.com/microsoft/vstest",
"commitSha": "9f3151a06cf9d1fbf36935698df7e9cb5d2f1e90"
"commitSha": "e683cdc0fa08b191c99cb8ab264295db837f2b6d"
},
{
"barId": 313700,
Expand Down
28 changes: 0 additions & 28 deletions src/vstest/.github/policies/PullRequestIssueManagement

This file was deleted.

6 changes: 3 additions & 3 deletions src/vstest/eng/Version.Details.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,19 @@ This file should be imported by eng/Versions.props
<Project>
<PropertyGroup>
<!-- dotnet-arcade dependencies -->
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.26310.1</MicrosoftDotNetArcadeSdkPackageVersion>
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.26325.1</MicrosoftDotNetArcadeSdkPackageVersion>
<!-- dotnet-core-setup dependencies -->
<MicrosoftExtensionsFileSystemGlobbingPackageVersion>2.0.0</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
<!-- dotnet-dotnet dependencies -->
<MicrosoftDiagnosticsNETCoreClientPackageVersion>0.2.0-preview.26281.102</MicrosoftDiagnosticsNETCoreClientPackageVersion>
<MicrosoftDiagnosticsNETCoreClientPackageVersion>0.2.0-preview.26328.102</MicrosoftDiagnosticsNETCoreClientPackageVersion>
<!-- dotnet-runtime dependencies -->
<MicrosoftExtensionsDependencyModelPackageVersion>6.0.2</MicrosoftExtensionsDependencyModelPackageVersion>
<SystemCollectionsImmutablePackageVersion>10.0.0</SystemCollectionsImmutablePackageVersion>
<!-- dotnet-symreader-converter dependencies -->
<MicrosoftDiaSymReaderConverterPackageVersion>1.1.0-beta2-19575-01</MicrosoftDiaSymReaderConverterPackageVersion>
<MicrosoftDiaSymReaderPdb2PdbPackageVersion>1.1.0-beta2-19575-01</MicrosoftDiaSymReaderPdb2PdbPackageVersion>
<!-- vs-code-coverage dependencies -->
<MicrosoftInternalCodeCoveragePackageVersion>18.9.0-preview.26319.2</MicrosoftInternalCodeCoveragePackageVersion>
<MicrosoftInternalCodeCoveragePackageVersion>18.9.0-preview.26326.3</MicrosoftInternalCodeCoveragePackageVersion>
</PropertyGroup>
<!--Property group for alternate package version names-->
<PropertyGroup>
Expand Down
16 changes: 8 additions & 8 deletions src/vstest/eng/Version.Details.xml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<Dependencies>
<Source Uri="https://github.com/dotnet/dotnet" Mapping="vstest" Sha="e6542746cf944ff2a1a595edf2af006ef3046784" BarId="316522" />
<Source Uri="https://github.com/dotnet/dotnet" Mapping="vstest" Sha="7c528f6e19c5245206de3dc561eb8a110bf9f746" BarId="320578" />
<ProductDependencies>
<Dependency Name="Microsoft.Internal.CodeCoverage" Version="18.9.0-preview.26319.2">
<Dependency Name="Microsoft.Internal.CodeCoverage" Version="18.9.0-preview.26326.3">
<Uri>https://dev.azure.com/devdiv/DevDiv/_git/vs-code-coverage</Uri>
<Sha>42b0aaaa4ba69dd89c33eec653184f97a5c52340</Sha>
<Sha>721d283a3c2f250c9d24decdc733f8dd9a2cfc48</Sha>
</Dependency>
<Dependency Name="Microsoft.Diagnostics.NETCore.Client" Version="0.2.0-preview.26281.102">
<Dependency Name="Microsoft.Diagnostics.NETCore.Client" Version="0.2.0-preview.26328.102">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>e6542746cf944ff2a1a595edf2af006ef3046784</Sha>
<Sha>7c528f6e19c5245206de3dc561eb8a110bf9f746</Sha>
</Dependency>
<!-- Necessary for source-build. This allows the live version of the package to be used by source-build. -->
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="6.0.2">
Expand All @@ -26,9 +26,9 @@
</Dependency>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="11.0.0-beta.26310.1">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="11.0.0-beta.26325.1">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>0a80b038bcc0d76b2f26c7f22062942de75779e6</Sha>
<Sha>b076228a542025c4f879f254d38adb5cf34a2475</Sha>
</Dependency>
<Dependency Name="Microsoft.DiaSymReader.Pdb2Pdb" Version="1.1.0-beta2-19575-01">
<Uri>https://github.com/dotnet/symreader-converter</Uri>
Expand All @@ -39,4 +39,4 @@
<Sha>c5ba7c88f92e2dde156c324a8c8edc04d9fa4fe0</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
</Dependencies>
2 changes: 1 addition & 1 deletion src/vstest/eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from appending +<commitId>, which breaks DTAAgent.
-->
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
<VersionPrefix>18.9.0</VersionPrefix>
<VersionPrefix>18.10.0</VersionPrefix>
<PreReleaseVersionLabel>preview</PreReleaseVersionLabel>
<PreReleaseVersionIteration></PreReleaseVersionIteration>
<!-- Allowed values: '', 'prerelease', 'release'. Set to 'release' when stabilizing. -->
Expand Down
6 changes: 5 additions & 1 deletion src/vstest/eng/common/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,11 @@ try {
if (-not $excludeCIBinarylog) {
$binaryLog = $true
}
$nodeReuse = $false
# Disable node reuse on CI unless explicitly opted in via MSBUILD_NODEREUSE_ENABLED.
# Internal testing only; this env var will be replaced with a switch (https://github.com/dotnet/arcade/issues/17013) and must not be depended on.
if ($env:MSBUILD_NODEREUSE_ENABLED -ne "1") {
$nodeReuse = $false
}
}

if (-not [string]::IsNullOrEmpty($binaryLogName)) {
Expand Down
6 changes: 5 additions & 1 deletion src/vstest/eng/common/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,11 @@ if [[ -z "$configuration" ]]; then
fi

if [[ "$ci" == true ]]; then
node_reuse=false
# Disable node reuse on CI unless explicitly opted in via MSBUILD_NODEREUSE_ENABLED.
# Internal testing only; this env var will be replaced with a switch (https://github.com/dotnet/arcade/issues/17013) and must not be depended on.
if [[ "${MSBUILD_NODEREUSE_ENABLED:-}" != "1" ]]; then
node_reuse=false
fi
if [[ "$exclude_ci_binary_log" == false ]]; then
binary_log=true
fi
Expand Down
22 changes: 20 additions & 2 deletions src/vstest/eng/common/core-templates/steps/send-to-helix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ parameters:
HelixConfiguration: '' # optional -- additional property attached to a job
HelixPreCommands: '' # optional -- commands to run before Helix work item execution
HelixPostCommands: '' # optional -- commands to run after Helix work item execution
UseHelixMonitor: false # optional -- true will submit Helix jobs configured for the standalone Helix Job Monitor (results are reported/waited on out-of-band; this step will not wait, and WaitForWorkItemCompletion will be overridden)
WorkItemDirectory: '' # optional -- a payload directory to zip up and send to Helix; requires WorkItemCommand; incompatible with XUnitProjects
WorkItemCommand: '' # optional -- a command to execute on the payload; requires WorkItemDirectory; incompatible with XUnitProjects
WorkItemTimeout: '' # optional -- a timeout in TimeSpan.Parse-ready value (e.g. 00:02:00) for the work item command; requires WorkItemDirectory; incompatible with XUnitProjects
Expand All @@ -31,7 +32,15 @@ parameters:
continueOnError: false # optional -- determines whether to continue the build if the step errors; defaults to false

steps:
- powershell: 'powershell "$env:BUILD_SOURCESDIRECTORY\eng\common\msbuild.ps1 $env:BUILD_SOURCESDIRECTORY/${{ parameters.HelixProjectPath }} /restore /p:TreatWarningsAsErrors=false ${{ parameters.HelixProjectArguments }} /t:Test /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\$env:BuildConfig\SendToHelix.binlog"'
- powershell: >
$(Build.SourcesDirectory)\eng\common\msbuild.ps1
$(Build.SourcesDirectory)/${{ parameters.HelixProjectPath }}
/restore
/p:TreatWarningsAsErrors=false
/p:EnableHelixJobMonitor=${{ parameters.UseHelixMonitor }}
${{ parameters.HelixProjectArguments }}
/t:Test
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/SendToHelix.binlog
displayName: ${{ parameters.DisplayNamePrefix }} (Windows)
env:
BuildConfig: $(_BuildConfig)
Expand Down Expand Up @@ -61,7 +70,15 @@ steps:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
condition: and(${{ parameters.condition }}, eq(variables['Agent.Os'], 'Windows_NT'))
continueOnError: ${{ parameters.continueOnError }}
- script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/${{ parameters.HelixProjectPath }} /restore /p:TreatWarningsAsErrors=false ${{ parameters.HelixProjectArguments }} /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog
- script: >
$(Build.SourcesDirectory)/eng/common/msbuild.sh
$(Build.SourcesDirectory)/${{ parameters.HelixProjectPath }}
/restore
/p:TreatWarningsAsErrors=false
/p:EnableHelixJobMonitor=${{ parameters.UseHelixMonitor }}
${{ parameters.HelixProjectArguments }}
/t:Test
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/SendToHelix.binlog
displayName: ${{ parameters.DisplayNamePrefix }} (Unix)
env:
BuildConfig: $(_BuildConfig)
Expand Down Expand Up @@ -91,3 +108,4 @@ steps:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
condition: and(${{ parameters.condition }}, ne(variables['Agent.Os'], 'Windows_NT'))
continueOnError: ${{ parameters.continueOnError }}

3 changes: 2 additions & 1 deletion src/vstest/eng/common/cross/build-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,9 @@ __FreeBSDPackages+=" terminfo-db"
__OpenBSDVersion="7.8"
__OpenBSDPackages="heimdal-libs"
__OpenBSDPackages+=" icu4c"
__OpenBSDPackages+=" inotify-tools"
__OpenBSDPackages+=" libinotify"
__OpenBSDPackages+=" openssl"
__OpenBSDPackages+=" e2fsprogs"

__IllumosPackages="icu"
__IllumosPackages+=" mit-krb5"
Expand Down
8 changes: 6 additions & 2 deletions src/vstest/eng/common/cross/install-debs.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,10 +121,14 @@ async def fetch_release_file(session, mirror, suite, keyring):
await download_file(session, release_gpg_url, release_gpg_file.name)

print("Verifying signature of Release with Release.gpg.")
verify_command = ["gpg"]
# Use gpgv rather than gpg for verification. gpgv verifies a detached
# signature against a fixed keyring without involving gpg-agent or
# keyboxd, which makes it robust on hosts running GnuPG 2.4+ (e.g. Azure
# Linux) where "gpg --keyring" routes through keyboxd and can fail.
verify_command = ["gpgv"]
if keyring:
verify_command += ["--keyring", keyring]
verify_command += ["--verify", release_gpg_file.name, release_file.name]
verify_command += [release_gpg_file.name, release_file.name]
result = subprocess.run(verify_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

if result.returncode != 0:
Expand Down
16 changes: 7 additions & 9 deletions src/vstest/eng/common/cross/toolchain.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ elseif(TARGET_ARCH_NAME STREQUAL "arm64")
set(TIZEN_TOOLCHAIN "aarch64-tizen-linux-gnu")
endif()
elseif(FREEBSD)
set(triple "aarch64-unknown-freebsd12")
set(TOOLCHAIN "aarch64-unknown-freebsd14")
elseif(OPENBSD)
set(triple "aarch64-unknown-openbsd")
set(TOOLCHAIN "aarch64-unknown-openbsd")
endif()
elseif(TARGET_ARCH_NAME STREQUAL "armel")
set(CMAKE_SYSTEM_PROCESSOR armv7l)
Expand Down Expand Up @@ -117,9 +117,9 @@ elseif(TARGET_ARCH_NAME STREQUAL "x64")
set(TIZEN_TOOLCHAIN "x86_64-tizen-linux-gnu")
endif()
elseif(FREEBSD)
set(triple "x86_64-unknown-freebsd12")
set(TOOLCHAIN "x86_64-unknown-freebsd14")
elseif(OPENBSD)
set(triple "x86_64-unknown-openbsd")
set(TOOLCHAIN "x86_64-unknown-openbsd")
elseif(ILLUMOS)
set(TOOLCHAIN "x86_64-illumos")
elseif(HAIKU)
Expand Down Expand Up @@ -160,8 +160,6 @@ if(TIZEN)
find_toolchain_dir("${CROSS_ROOTFS}/usr/lib64/gcc/${TIZEN_TOOLCHAIN}")
endif()

message(STATUS "TIZEN_TOOLCHAIN_PATH set to: ${TIZEN_TOOLCHAIN_PATH}")

include_directories(SYSTEM ${TIZEN_TOOLCHAIN_PATH}/include/c++)
include_directories(SYSTEM ${TIZEN_TOOLCHAIN_PATH}/include/c++/${TIZEN_TOOLCHAIN})
endif()
Expand Down Expand Up @@ -206,9 +204,9 @@ if(ANDROID)
include(${CROSS_ROOTFS}/../build/cmake/android.toolchain.cmake)
elseif(FREEBSD OR OPENBSD)
# we cross-compile by instructing clang
set(CMAKE_C_COMPILER_TARGET ${triple})
set(CMAKE_CXX_COMPILER_TARGET ${triple})
set(CMAKE_ASM_COMPILER_TARGET ${triple})
set(CMAKE_C_COMPILER_TARGET ${TOOLCHAIN})
set(CMAKE_CXX_COMPILER_TARGET ${TOOLCHAIN})
set(CMAKE_ASM_COMPILER_TARGET ${TOOLCHAIN})
set(CMAKE_SYSROOT "${CROSS_ROOTFS}")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=lld")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fuse-ld=lld")
Expand Down
1 change: 1 addition & 0 deletions src/vstest/eng/common/dotnet.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@ $dotnetRoot = InitializeDotNetCli -install:$true
if ($args.count -gt 0) {
$env:DOTNET_NOLOGO=1
& "$dotnetRoot\dotnet.exe" $args
ExitWithExitCode $LASTEXITCODE
}
6 changes: 5 additions & 1 deletion src/vstest/eng/common/msbuild.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ Param(

try {
if ($ci) {
$nodeReuse = $false
# Disable node reuse on CI unless explicitly opted in via MSBUILD_NODEREUSE_ENABLED.
# Internal testing only; this env var will be replaced with a switch (https://github.com/dotnet/arcade/issues/17013) and must not be depended on.
if ($env:MSBUILD_NODEREUSE_ENABLED -ne "1") {
$nodeReuse = $false
}
}

MSBuild @extraArgs
Expand Down
6 changes: 5 additions & 1 deletion src/vstest/eng/common/msbuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,11 @@ done
. "$scriptroot/tools.sh"

if [[ "$ci" == true ]]; then
node_reuse=false
# Disable node reuse on CI unless explicitly opted in via MSBUILD_NODEREUSE_ENABLED.
# Internal testing only; this env var will be replaced with a switch (https://github.com/dotnet/arcade/issues/17013) and must not be depended on.
if [[ "${MSBUILD_NODEREUSE_ENABLED:-}" != "1" ]]; then
node_reuse=false
fi
fi

MSBuild $extra_args
Expand Down
26 changes: 26 additions & 0 deletions src/vstest/eng/common/native/NativeAotSupported.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<Project>
<PropertyGroup>

<!-- Reject unsupported OS via RID prefix match -->
<_NativeAotSupportedOS Condition="
'$(TargetOS)' != 'browser' and
'$(TargetOS)' != 'haiku' and
'$(TargetOS)' != 'illumos' and
'$(TargetOS)' != 'netbsd' and
'$(TargetOS)' != 'solaris'
">true</_NativeAotSupportedOS>

<!-- Reject unsupported architectures via RID suffix match -->
<_NativeAotSupportedArch Condition="
'$(TargetArchitecture)' != 'wasm' and
('$(TargetArchitecture)' != 'x86' or '$(TargetOS)' == 'windows')
">true</_NativeAotSupportedArch>

<NativeAotSupported Condition="
'$(NativeAotSupported)' == '' and
'$(_NativeAotSupportedOS)' == 'true' and
'$(_NativeAotSupportedArch)' == 'true'
">true</NativeAotSupported>

</PropertyGroup>
</Project>
4 changes: 3 additions & 1 deletion src/vstest/eng/common/tools.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -742,7 +742,9 @@ function MSBuild() {
ExitWithExitCode 1
}

if ($nodeReuse) {
# Node reuse must be disabled in CI builds unless explicitly opted in via MSBUILD_NODEREUSE_ENABLED.
# Internal testing only; this env var will be replaced with a switch (https://github.com/dotnet/arcade/issues/17013) and must not be depended on.
if ($nodeReuse -and $env:MSBUILD_NODEREUSE_ENABLED -ne "1") {
Write-PipelineTelemetryError -Category 'Build' -Message 'Node reuse must be disabled in CI build.'
ExitWithExitCode 1
}
Expand Down
7 changes: 5 additions & 2 deletions src/vstest/eng/common/tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -466,7 +466,8 @@ function ExitWithExitCode {
function StopProcesses {
echo "Killing running build processes..."
pkill -9 "dotnet" || true
pkill -9 "vbcscompiler" || true
pkill -9 -i -x VBCSCompiler || true
pkill -9 -i -x MSBuild || true
return 0
}

Expand Down Expand Up @@ -497,7 +498,9 @@ function MSBuild {
ExitWithExitCode 1
fi

if [[ "$node_reuse" == true ]]; then
# Node reuse must be disabled in CI builds unless explicitly opted in via MSBUILD_NODEREUSE_ENABLED.
# Internal testing only; this env var will be replaced with a switch (https://github.com/dotnet/arcade/issues/17013) and must not be depended on.
if [[ "$node_reuse" == true && "${MSBUILD_NODEREUSE_ENABLED:-}" != "1" ]]; then
Write-PipelineTelemetryError -category 'Build' "Node reuse must be disabled in CI build."
ExitWithExitCode 1
fi
Expand Down
2 changes: 1 addition & 1 deletion src/vstest/global.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"dotnet": "11.0.100-preview.5.26227.104"
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26310.1"
"Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26325.1"
},
"test": {
"runner": "Microsoft.Testing.Platform"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -223,9 +223,11 @@ public void RunTests()
// instantiated via reflection and its constructor throws. Unwrap that wrapper to the
// real exception so callers don't see the reflection noise. Any other exception is
// preserved as-is so its concrete type and stack trace are not lost on the way out.
Exception realException = ex is TargetInvocationException tie && tie.InnerException is not null
? tie.InnerException
: ex;
Exception realException = ex switch
{
TargetInvocationException { InnerException: { } inner } => inner,
_ => ex,
};
exception = new Exception(realException.Message, realException);
isAborted = true;
}
Expand Down
Loading
Loading