diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index e06bcbe6339..b1f76a69fef 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -75,25 +75,25 @@
-
+
https://github.com/dotnet/arcade
- a329c7a820c01e420d35e547d5f3dedf0b5c11f9
+ cb683d57fb7f7dffbe70d51ce430b3910320460d
-
+
https://github.com/dotnet/arcade
- a329c7a820c01e420d35e547d5f3dedf0b5c11f9
+ cb683d57fb7f7dffbe70d51ce430b3910320460d
-
+
https://github.com/dotnet/arcade
- a329c7a820c01e420d35e547d5f3dedf0b5c11f9
+ cb683d57fb7f7dffbe70d51ce430b3910320460d
-
+
https://github.com/dotnet/arcade
- a329c7a820c01e420d35e547d5f3dedf0b5c11f9
+ cb683d57fb7f7dffbe70d51ce430b3910320460d
-
+
https://github.com/dotnet/arcade
- a329c7a820c01e420d35e547d5f3dedf0b5c11f9
+ cb683d57fb7f7dffbe70d51ce430b3910320460d
diff --git a/eng/Versions.props b/eng/Versions.props
index cc11a0d5242..4a2c6eec272 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -37,9 +37,9 @@
- 7.0.0-beta.21518.6
- 7.0.0-beta.21518.6
- 7.0.0-beta.21518.6
+ 7.0.0-beta.21519.8
+ 7.0.0-beta.21519.8
+ 7.0.0-beta.21519.8
diff --git a/eng/common/post-build/symbols-validation.ps1 b/eng/common/post-build/symbols-validation.ps1
index a5af041ba77..a4a92efbedf 100644
--- a/eng/common/post-build/symbols-validation.ps1
+++ b/eng/common/post-build/symbols-validation.ps1
@@ -4,9 +4,11 @@ param(
[Parameter(Mandatory = $true)][string] $DotnetSymbolVersion, # Version of dotnet symbol to use
[Parameter(Mandatory = $false)][switch] $CheckForWindowsPdbs, # If we should check for the existence of windows pdbs in addition to portable PDBs
[Parameter(Mandatory = $false)][switch] $ContinueOnError, # If we should keep checking symbols after an error
- [Parameter(Mandatory = $false)][switch] $Clean # Clean extracted symbols directory after checking symbols
+ [Parameter(Mandatory = $false)][switch] $Clean, # Clean extracted symbols directory after checking symbols
+ [Parameter(Mandatory = $false)][string] $SymbolExclusionFile # Exclude the symbols in the file from publishing to symbol server
)
+. $PSScriptRoot\..\tools.ps1
# Maximum number of jobs to run in parallel
$MaxParallelJobs = 16
@@ -25,14 +27,28 @@ if ($CheckForWindowsPdbs) {
$WindowsPdbVerificationParam = "--windows-pdbs"
}
+$ExclusionSet = New-Object System.Collections.Generic.HashSet[string];
+
+if (!$InputPath -or !(Test-Path $InputPath)){
+ Write-Host "No symbols to validate."
+ ExitWithExitCode 0
+}
+
+#Check if the path exists
+if ($SymbolExclusionFile -and (Test-Path $SymbolExclusionFile)){
+ [string[]]$Exclusions = Get-Content "$SymbolExclusionFile"
+ $Exclusions | foreach { if($_ -and $_.Trim()){$ExclusionSet.Add($_)} }
+}
+else{
+ Write-Host "Symbol Exclusion file does not exists. No symbols to exclude."
+}
+
$CountMissingSymbols = {
param(
[string] $PackagePath, # Path to a NuGet package
[string] $WindowsPdbVerificationParam # If we should check for the existence of windows pdbs in addition to portable PDBs
)
- . $using:PSScriptRoot\..\tools.ps1
-
Add-Type -AssemblyName System.IO.Compression.FileSystem
Write-Host "Validating $PackagePath "
@@ -142,37 +158,44 @@ $CountMissingSymbols = {
return $null
}
- $FileGuid = New-Guid
- $ExpandedSymbolsPath = Join-Path -Path $SymbolsPath -ChildPath $FileGuid
-
- $SymbolsOnMSDL = & $FirstMatchingSymbolDescriptionOrDefault `
- -FullPath $FileName `
- -TargetServerParam '--microsoft-symbol-server' `
- -SymbolsPath "$ExpandedSymbolsPath-msdl" `
- -WindowsPdbVerificationParam $WindowsPdbVerificationParam
- $SymbolsOnSymWeb = & $FirstMatchingSymbolDescriptionOrDefault `
- -FullPath $FileName `
- -TargetServerParam '--internal-server' `
- -SymbolsPath "$ExpandedSymbolsPath-symweb" `
- -WindowsPdbVerificationParam $WindowsPdbVerificationParam
-
- Write-Host -NoNewLine "`t Checking file " $FileName "... "
-
- if ($SymbolsOnMSDL -ne $null -and $SymbolsOnSymWeb -ne $null) {
- Write-Host "Symbols found on MSDL ($SymbolsOnMSDL) and SymWeb ($SymbolsOnSymWeb)"
+ $FileRelativePath = $FileName.Replace("$ExtractPath\", "")
+ if (($($using:ExclusionSet) -ne $null) -and ($($using:ExclusionSet).Contains($FileRelativePath) -or ($($using:ExclusionSet).Contains($FileRelativePath.Replace("\", "/"))))){
+ Write-Host "Skipping $FileName from symbol validation"
}
- else {
- $MissingSymbols++
- if ($SymbolsOnMSDL -eq $null -and $SymbolsOnSymWeb -eq $null) {
- Write-Host 'No symbols found on MSDL or SymWeb!'
+ else {
+ $FileGuid = New-Guid
+ $ExpandedSymbolsPath = Join-Path -Path $SymbolsPath -ChildPath $FileGuid
+
+ $SymbolsOnMSDL = & $FirstMatchingSymbolDescriptionOrDefault `
+ -FullPath $FileName `
+ -TargetServerParam '--microsoft-symbol-server' `
+ -SymbolsPath "$ExpandedSymbolsPath-msdl" `
+ -WindowsPdbVerificationParam $WindowsPdbVerificationParam
+ $SymbolsOnSymWeb = & $FirstMatchingSymbolDescriptionOrDefault `
+ -FullPath $FileName `
+ -TargetServerParam '--internal-server' `
+ -SymbolsPath "$ExpandedSymbolsPath-symweb" `
+ -WindowsPdbVerificationParam $WindowsPdbVerificationParam
+
+ Write-Host -NoNewLine "`t Checking file " $FileName "... "
+
+ if ($SymbolsOnMSDL -ne $null -and $SymbolsOnSymWeb -ne $null) {
+ Write-Host "Symbols found on MSDL ($SymbolsOnMSDL) and SymWeb ($SymbolsOnSymWeb)"
}
else {
- if ($SymbolsOnMSDL -eq $null) {
- Write-Host 'No symbols found on MSDL!'
+ $MissingSymbols++
+
+ if ($SymbolsOnMSDL -eq $null -and $SymbolsOnSymWeb -eq $null) {
+ Write-Host 'No symbols found on MSDL or SymWeb!'
}
else {
- Write-Host 'No symbols found on SymWeb!'
+ if ($SymbolsOnMSDL -eq $null) {
+ Write-Host 'No symbols found on MSDL!'
+ }
+ else {
+ Write-Host 'No symbols found on SymWeb!'
+ }
}
}
}
diff --git a/global.json b/global.json
index 81f6d48e4d7..deb9d88b8aa 100644
--- a/global.json
+++ b/global.json
@@ -12,8 +12,8 @@
}
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "7.0.0-beta.21518.6",
- "Microsoft.DotNet.Helix.Sdk": "7.0.0-beta.21518.6"
+ "Microsoft.DotNet.Arcade.Sdk": "7.0.0-beta.21519.8",
+ "Microsoft.DotNet.Helix.Sdk": "7.0.0-beta.21519.8"
},
"sdk": {
"version": "6.0.100-rc.1.21430.12"