diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index a188f178c80c3b53ac06939e53d54239f11e636f..51741edfe8193cd0eef8849d3022f610dce6692c 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -11,9 +11,9 @@ - + https://github.com/dotnet/arcade - 4e21d52dabbb9f5705a90f097acb1465a0354c0d + 46718d98c0fd03690a6a8c83da692a4a85a17902 diff --git a/eng/common/CheckSymbols.ps1 b/eng/common/CheckSymbols.ps1 index 074b423245c80eb3708be15ed02905bd329c5b1c..b8d84607b89b52199865a65840698c264f315983 100644 --- a/eng/common/CheckSymbols.ps1 +++ b/eng/common/CheckSymbols.ps1 @@ -9,7 +9,8 @@ Add-Type -AssemblyName System.IO.Compression.FileSystem function FirstMatchingSymbolDescriptionOrDefault { param( [string] $FullPath, # Full path to the module that has to be checked - [string] $TargetServerParam # Parameter to pass to `Symbol Tool` indicating the server to lookup for symbols + [string] $TargetServerParam, # Parameter to pass to `Symbol Tool` indicating the server to lookup for symbols + [string] $SymbolsPath ) $FileName = [System.IO.Path]::GetFileName($FullPath) @@ -33,9 +34,9 @@ function FirstMatchingSymbolDescriptionOrDefault { # DWARF file for a .dylib $DylibDwarf = $SymbolPath.Replace($Extension, ".dylib.dwarf") - - .\dotnet-symbol.exe --symbols --modules $TargetServerParam $FullPath -o $SymbolsPath -d | Out-Null - + + .\dotnet-symbol.exe --symbols --modules --windows-pdbs $TargetServerParam $FullPath -o $SymbolsPath | Out-Null + if (Test-Path $PdbPath) { return "PDB" } @@ -73,8 +74,9 @@ function CountMissingSymbols { $MissingSymbols = 0 $PackageId = [System.IO.Path]::GetFileNameWithoutExtension($PackagePath) - $ExtractPath = $ExtractPath + $PackageId; - $SymbolsPath = $ExtractPath + $PackageId + ".Symbols"; + $PackageGuid = New-Guid + $ExtractPath = Join-Path -Path $ExtractPath -ChildPath $PackageGuid + $SymbolsPath = Join-Path -Path $ExtractPath -ChildPath "Symbols" [System.IO.Compression.ZipFile]::ExtractToDirectory($PackagePath, $ExtractPath) @@ -84,10 +86,15 @@ function CountMissingSymbols { Get-ChildItem -Recurse $ExtractPath | Where-Object {$RelevantExtensions -contains $_.Extension} | ForEach-Object { - Write-Host -NoNewLine "`t Checking file" $_.FullName "... " + if ($_.FullName -Match "\\ref\\") { + Write-Host "`t Ignoring reference assembly file" $_.FullName + return + } - $SymbolsOnMSDL = FirstMatchingSymbolDescriptionOrDefault $_.FullName "--microsoft-symbol-server" - $SymbolsOnSymWeb = FirstMatchingSymbolDescriptionOrDefault $_.FullName "--internal-server" + $SymbolsOnMSDL = FirstMatchingSymbolDescriptionOrDefault $_.FullName "--microsoft-symbol-server" $SymbolsPath + $SymbolsOnSymWeb = FirstMatchingSymbolDescriptionOrDefault $_.FullName "--internal-server" $SymbolsPath + + Write-Host -NoNewLine "`t Checking file" $_.FullName "... " if ($SymbolsOnMSDL -ne $null -and $SymbolsOnSymWeb -ne $null) { Write-Host "Symbols found on MSDL (" $SymbolsOnMSDL ") and SymWeb (" $SymbolsOnSymWeb ")" @@ -116,18 +123,35 @@ function CountMissingSymbols { function CheckSymbolsAvailable { if (Test-Path $ExtractPath) { - Remove-Item -recurse $ExtractPath + Remove-Item $ExtractPath -Force -Recurse -ErrorAction SilentlyContinue } Get-ChildItem "$InputPath\*.nupkg" | ForEach-Object { $FileName = $_.Name + + # These packages from Arcade-Services include some native libraries that + # our current symbol uploader can't handle. Below is a workaround until + # we get issue: https://github.com/dotnet/arcade/issues/2457 sorted. + if ($FileName -Match "Microsoft\.DotNet\.Darc\.") { + Write-Host "Ignoring Arcade-services file: $FileName" + Write-Host + return + } + elseif ($FileName -Match "Microsoft\.DotNet\.Maestro\.Tasks\.") { + Write-Host "Ignoring Arcade-services file: $FileName" + Write-Host + return + } + Write-Host "Validating $FileName " $Status = CountMissingSymbols "$InputPath\$FileName" if ($Status -ne 0) { Write-Error "Missing symbols for $Status modules in the package $FileName" } + + Write-Host } } diff --git a/global.json b/global.json index 57c65b4e6be58d678ccf89c6ab54a84519688aa1..e793b9cb942f4abfd0dafea17acccdc031c72d5d 100644 --- a/global.json +++ b/global.json @@ -6,6 +6,6 @@ "version": "2.1.503" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19217.1" + "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19218.1" } }