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
2 changes: 2 additions & 0 deletions eng/Signing.props
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,8 @@
<ItemGroup>
<!-- Roslyn apphosts -->
<FileSignInfo Condition="'$(TargetOS)' == 'osx'" Include="csc;vbc;VBCSCompiler" CertificateName="MacDeveloperHarden" />
<!-- MSBuild apphost -->
<FileSignInfo Condition="'$(TargetOS)' == 'osx'" Include="MSBuild" CertificateName="MacDeveloperHarden" />
</ItemGroup>

<!-- Filter out any test packages from ItemsToSign -->
Expand Down
389 changes: 195 additions & 194 deletions eng/Version.Details.props

Large diffs are not rendered by default.

544 changes: 274 additions & 270 deletions eng/Version.Details.xml

Large diffs are not rendered by default.

5 changes: 3 additions & 2 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
<VersionMajor>10</VersionMajor>
<VersionMinor>0</VersionMinor>
<VersionSDKMinor>3</VersionSDKMinor>
<VersionFeature>00</VersionFeature>
<VersionSDKMinorPatch>0</VersionSDKMinorPatch>
<VersionFeature>$([System.String]::Copy('$(VersionSDKMinorPatch)').PadLeft(2, '0'))</VersionFeature>
<!-- This property powers the SdkAnalysisLevel property in end-user MSBuild code.
It should always be the hundreds-value of the current SDK version, never any
preview version components or anything else. E.g. 8.0.100, 9.0.300, etc. -->
Expand All @@ -20,7 +21,7 @@
<StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion>
<DotNetFinalVersionKind Condition="'$(StabilizePackageVersion)' == 'true'">release</DotNetFinalVersionKind>
<PreReleaseVersionLabel>preview</PreReleaseVersionLabel>
<PreReleaseVersionIteration></PreReleaseVersionIteration>
<PreReleaseVersionIteration>0</PreReleaseVersionIteration>
<!-- In source-build the version of the compiler must be same or newer than the version of the
compiler API targeted by analyzer assemblies. This is mostly an issue on source-build as
in that build mode analyzer assemblies always target the live compiler API. -->
Expand Down
1 change: 0 additions & 1 deletion eng/common/core-templates/steps/publish-logs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ steps:
-runtimeSourceFeed https://ci.dot.net/internal
-runtimeSourceFeedKey '$(dotnetbuilds-internal-container-read-token-base64)'
'$(publishing-dnceng-devdiv-code-r-build-re)'
'$(MaestroAccessToken)'
'$(dn-bot-all-orgs-artifact-feeds-rw)'
'$(akams-client-id)'
'$(microsoft-symbol-server-pat)'
Expand Down
21 changes: 0 additions & 21 deletions eng/common/templates/steps/vmr-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,27 +38,6 @@ steps:
displayName: Label PR commit
workingDirectory: $(Agent.BuildDirectory)/repo

- script: |
vmr_sha=$(grep -oP '(?<=Sha=")[^"]*' $(Agent.BuildDirectory)/repo/eng/Version.Details.xml)
echo "##vso[task.setvariable variable=vmr_sha]$vmr_sha"
displayName: Obtain the vmr sha from Version.Details.xml (Unix)
condition: ne(variables['Agent.OS'], 'Windows_NT')
workingDirectory: $(Agent.BuildDirectory)/repo

- powershell: |
[xml]$xml = Get-Content -Path $(Agent.BuildDirectory)/repo/eng/Version.Details.xml
$vmr_sha = $xml.SelectSingleNode("//Source").Sha
Write-Output "##vso[task.setvariable variable=vmr_sha]$vmr_sha"
displayName: Obtain the vmr sha from Version.Details.xml (Windows)
condition: eq(variables['Agent.OS'], 'Windows_NT')
workingDirectory: $(Agent.BuildDirectory)/repo

- script: |
git fetch --all
git checkout $(vmr_sha)
displayName: Checkout VMR at correct sha for repo flow
workingDirectory: ${{ parameters.vmrPath }}

- script: |
git config --global user.name "dotnet-maestro[bot]"
git config --global user.email "dotnet-maestro[bot]@users.noreply.github.com"
Expand Down
1 change: 1 addition & 0 deletions eng/common/templates/vmr-build-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ resources:
type: github
name: dotnet/dotnet
endpoint: dotnet
ref: refs/heads/main # Set to whatever VMR branch the PR build should insert into

stages:
- template: /eng/pipelines/templates/stages/vmr-build.yml@vmr
Expand Down
5 changes: 5 additions & 0 deletions eng/common/tools.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -824,6 +824,11 @@ function MSBuild-Core() {

$cmdArgs = "$($buildTool.Command) /m /nologo /clp:Summary /v:$verbosity /nr:$nodeReuse /p:ContinuousIntegrationBuild=$ci"

# Add -mt flag for MSBuild multithreaded mode if enabled via environment variable
if ($env:MSBUILD_MT_ENABLED -eq "1") {
$cmdArgs += ' -mt'
}

if ($warnAsError) {
$cmdArgs += ' /warnaserror /p:TreatWarningsAsErrors=true'
}
Expand Down
8 changes: 7 additions & 1 deletion eng/common/tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -526,7 +526,13 @@ function MSBuild-Core {
}
}

RunBuildTool "$_InitializeBuildToolCommand" /m /nologo /clp:Summary /v:$verbosity /nr:$node_reuse $warnaserror_switch /p:TreatWarningsAsErrors=$warn_as_error /p:ContinuousIntegrationBuild=$ci "$@"
# Add -mt flag for MSBuild multithreaded mode if enabled via environment variable
local mt_switch=""
if [[ "${MSBUILD_MT_ENABLED:-}" == "1" ]]; then
mt_switch="-mt"
fi

RunBuildTool "$_InitializeBuildToolCommand" /m /nologo /clp:Summary /v:$verbosity /nr:$node_reuse $warnaserror_switch $mt_switch /p:TreatWarningsAsErrors=$warn_as_error /p:ContinuousIntegrationBuild=$ci "$@"
}

function GetDarc {
Expand Down
38 changes: 32 additions & 6 deletions eng/common/vmr-sync.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -103,12 +103,20 @@ Set-StrictMode -Version Latest
Highlight 'Installing .NET, preparing the tooling..'
. .\eng\common\tools.ps1
$dotnetRoot = InitializeDotNetCli -install:$true
$env:DOTNET_ROOT = $dotnetRoot
$darc = Get-Darc
$dotnet = "$dotnetRoot\dotnet.exe"

Highlight "Starting the synchronization of VMR.."

# Synchronize the VMR
$versionDetailsPath = Resolve-Path (Join-Path $PSScriptRoot '..\Version.Details.xml') | Select-Object -ExpandProperty Path
[xml]$versionDetails = Get-Content -Path $versionDetailsPath
$repoName = $versionDetails.SelectSingleNode('//Source').Mapping
if (-not $repoName) {
Fail "Failed to resolve repo mapping from $versionDetailsPath"
exit 1
}

$darcArgs = (
"vmr", "forwardflow",
"--tmp", $tmpDir,
Expand All @@ -130,9 +138,27 @@ if ($LASTEXITCODE -eq 0) {
Highlight "Synchronization succeeded"
}
else {
Fail "Synchronization of repo to VMR failed!"
Fail "'$vmrDir' is left in its last state (re-run of this script will reset it)."
Fail "Please inspect the logs which contain path to the failing patch file (use -debugOutput to get all the details)."
Fail "Once you make changes to the conflicting VMR patch, commit it locally and re-run this script."
exit 1
Highlight "Failed to flow code into the local VMR. Falling back to resetting the VMR to match repo contents..."
git -C $vmrDir reset --hard

$resetArgs = (
"vmr", "reset",
"${repoName}:HEAD",
"--vmr", $vmrDir,
"--tmp", $tmpDir,
"--additional-remotes", "${repoName}:${repoRoot}"
)

& "$darc" $resetArgs

if ($LASTEXITCODE -eq 0) {
Highlight "Successfully reset the VMR using 'darc vmr reset'"
}
else {
Fail "Synchronization of repo to VMR failed!"
Fail "'$vmrDir' is left in its last state (re-run of this script will reset it)."
Fail "Please inspect the logs which contain path to the failing patch file (use -debugOutput to get all the details)."
Fail "Once you make changes to the conflicting VMR patch, commit it locally and re-run this script."
exit 1
}
}
30 changes: 25 additions & 5 deletions eng/common/vmr-sync.sh
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,13 @@ fi

# Synchronize the VMR

version_details_path=$(cd "$scriptroot/.."; pwd -P)/Version.Details.xml
repo_name=$(grep -m 1 '<Source ' "$version_details_path" | sed -n 's/.*Mapping="\([^"]*\)".*/\1/p')
if [[ -z "$repo_name" ]]; then
fail "Failed to resolve repo mapping from $version_details_path"
exit 1
fi

export DOTNET_ROOT="$dotnetDir"

"$darc_tool" vmr forwardflow \
Expand All @@ -199,9 +206,22 @@ export DOTNET_ROOT="$dotnetDir"
if [[ $? == 0 ]]; then
highlight "Synchronization succeeded"
else
fail "Synchronization of repo to VMR failed!"
fail "'$vmr_dir' is left in its last state (re-run of this script will reset it)."
fail "Please inspect the logs which contain path to the failing patch file (use --debug to get all the details)."
fail "Once you make changes to the conflicting VMR patch, commit it locally and re-run this script."
exit 1
highlight "Failed to flow code into the local VMR. Falling back to resetting the VMR to match repo contents..."
git -C "$vmr_dir" reset --hard

"$darc_tool" vmr reset \
"$repo_name:HEAD" \
--vmr "$vmr_dir" \
--tmp "$tmp_dir" \
--additional-remotes "$repo_name:$repo_root"

if [[ $? == 0 ]]; then
highlight "Successfully reset the VMR using 'darc vmr reset'"
else
fail "Synchronization of repo to VMR failed!"
fail "'$vmr_dir' is left in its last state (re-run of this script will reset it)."
fail "Please inspect the logs which contain path to the failing patch file (use --debug to get all the details)."
fail "Once you make changes to the conflicting VMR patch, commit it locally and re-run this script."
exit 1
fi
fi
6 changes: 3 additions & 3 deletions global.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"errorMessage": "The .NET SDK is not installed or is not configured correctly. Please run ./build to install the correct SDK version locally."
},
"tools": {
"dotnet": "10.0.102",
"dotnet": "10.0.105",
"runtimes": {
"dotnet": [
"$(MicrosoftNETCorePlatformsPackageVersion)"
Expand All @@ -21,8 +21,8 @@
}
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26118.105",
"Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.26118.105",
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26173.111",
"Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.26173.111",
"Microsoft.Build.NoTargets": "3.7.0",
"Microsoft.Build.Traversal": "3.4.0",
"Microsoft.WixToolset.Sdk": "5.0.2-dotnet.2811440"
Expand Down
1 change: 1 addition & 0 deletions source-build.slnf
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
"src\\Dotnet.Watch\\DotNetDeltaApplier\\Microsoft.Extensions.DotNetDeltaApplier.csproj",
"src\\Dotnet.Watch\\DotNetWatchTasks\\DotNetWatchTasks.csproj",
"src\\Dotnet.Watch\\dotnet-watch\\dotnet-watch.csproj",
"src\\Dotnet.Watch\\HotReloadAgent.WebAssembly.Browser\\Microsoft.DotNet.HotReload.WebAssembly.Browser.csproj",
"src\\Cli\\Microsoft.DotNet.Cli.Utils\\Microsoft.DotNet.Cli.Utils.csproj",
"src\\Cli\\Microsoft.DotNet.Configurer\\Microsoft.DotNet.Configurer.csproj",
"src\\Cli\\Microsoft.DotNet.InternalAbstractions\\Microsoft.DotNet.InternalAbstractions.csproj",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public static string GetPackageDirectory(this LockFile lockFile, LockFileTargetL
var fallbackPackageFolders = packageFoldersCount > 1 ? packageFolders.Skip(1) : packageFolders;

var packageDirectory = new FallbackPackagePathResolver(userPackageFolder, fallbackPackageFolders)
.GetPackageDirectory(library.Name, library.Version);
.GetPackageDirectory(library.Name!, library.Version!)!;

return packageDirectory;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ public NugetPackageMetadata(PackageSource packageSource, IPackageSearchMetadata
LicenseUrl = metadata.LicenseUrl;
License = metadata.LicenseMetadata?.License;
Identity = metadata.Identity;
LicenseExpression = metadata.LicenseMetadata?.LicenseExpression.ToString();
LicenseExpression = metadata.LicenseMetadata?.LicenseExpression?.ToString();
PackageVersion = metadata.Identity.Version;

Source = packageSource;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Microsoft.Build.Framework" ExcludeAssets="Runtime" />
<PackageReference Include="Microsoft.Build.Utilities.Core" ExcludeAssets="Runtime" />
<PackageReference Include="Microsoft.Build.Framework" ExcludeAssets="runtime;buildTransitive" />
<PackageReference Include="Microsoft.Build.Utilities.Core" ExcludeAssets="runtime;buildTransitive" />
<!-- We carry NuGet as part of the package in case the package is used with an older SDKs or with full framework MSBuild. -->
<PackageReference Include="NuGet.Packaging" PrivateAssets="All" Publish="true" />
<!-- The ApiCompatibility/PackageValidation stuff depends on CodeAnalysis.CSharp at the version that is
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Microsoft.Build.Framework" ExcludeAssets="Runtime" />
<PackageReference Include="Microsoft.Build.Utilities.Core" ExcludeAssets="Runtime" />
<PackageReference Include="Microsoft.Build.Framework" ExcludeAssets="runtime;buildTransitive" />
<PackageReference Include="Microsoft.Build.Utilities.Core" ExcludeAssets="runtime;buildTransitive" />
<ProjectReference Include="..\Microsoft.DotNet.GenAPI\Microsoft.DotNet.GenAPI.csproj" />
</ItemGroup>

Expand Down
4 changes: 4 additions & 0 deletions src/Layout/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -84,4 +84,8 @@
<_RoslynAppHost Include="$(OutputPath)Roslyn\bincore\VBCSCompiler.dll" />
</ItemGroup>

<ItemGroup>
<_MSBuildAppHost Include="$(OutputPath)MSBuild.dll" />
</ItemGroup>

</Project>
16 changes: 16 additions & 0 deletions src/Layout/redist/msbuild-entitlements.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.debugger</key>
<true/>
<key>com.apple.security.get-task-allow</key>
<true/>
</dict>
</plist>
1 change: 1 addition & 0 deletions src/Layout/redist/targets/Crossgen.targets
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,7 @@
<Exec Command="find $(InstallerOutputDirectory) -type d -exec chmod 755 {} \;" Condition="'$(OSName)' != 'win'" />
<Exec Command="find $(InstallerOutputDirectory) -type f -exec chmod 644 {} \;" Condition="'$(OSName)' != 'win'" />
<Exec Command="chmod 755 $(InstallerOutputDirectory)Roslyn/bincore/%(_RoslynAppHost.Filename)" Condition="'$(OSName)' != 'win'" />
<Exec Command="chmod 755 $(InstallerOutputDirectory)%(_MSBuildAppHost.Filename)" Condition="'$(OSName)' != 'win'" />
</Target>

</Project>
26 changes: 25 additions & 1 deletion src/Layout/redist/targets/GenerateLayout.targets
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,28 @@
Condition="$(SharedFrameworkRid.StartsWith('osx'))" />
</Target>

<Target Name="CreateMSBuildAppHost">
<CreateAppHost AppHostSourcePath="$(NuGetPackageRoot)\microsoft.netcore.app.host.$(SharedFrameworkRid)\$(MicrosoftNETCoreAppHostPackageVersion)\runtimes\$(SharedFrameworkRid)\native\apphost$(ExeExtension)"
AppHostDestinationPath="%(_MSBuildAppHost.RootDir)%(_MSBuildAppHost.Directory)%(_MSBuildAppHost.Filename)$(ExeExtension)"
AppBinaryName="%(_MSBuildAppHost.Filename)%(_MSBuildAppHost.Extension)"
IntermediateAssembly="%(_MSBuildAppHost.FullPath)"
EnableMacOSCodeSign="$(SharedFrameworkRid.StartsWith('osx'))" />

<!-- Copy the COM type library next to the apphost on Windows (needed for ITaskHost marshaling).
The .tlb is generated by the MSBuild build (CreateTypeLib target) and included in the
Microsoft.Build.Framework NuGet package under tools/net472/. -->
<PropertyGroup Condition="$(SharedFrameworkRid.StartsWith('win'))">
<_FrameworkTlbPath>$(NuGetPackageRoot)microsoft.build.framework\$(MicrosoftBuildVersion)\tools\net472\Microsoft.Build.Framework.tlb</_FrameworkTlbPath>
</PropertyGroup>
<Copy SourceFiles="$(_FrameworkTlbPath)"
DestinationFolder="%(_MSBuildAppHost.RootDir)%(_MSBuildAppHost.Directory)"
SkipUnchangedFiles="true"
Condition="$(SharedFrameworkRid.StartsWith('win'))" />

<Exec Command="codesign --sign - --force --entitlements '$(MSBuildProjectDirectory)/msbuild-entitlements.plist' %(_MSBuildAppHost.RootDir)%(_MSBuildAppHost.Directory)%(_MSBuildAppHost.Filename)$(ExeExtension)"
Condition="$(SharedFrameworkRid.StartsWith('osx'))" />
</Target>

<Target Name="PublishNETAnalyzers">
<!-- Microsoft.CodeAnalysis.NetAnalyzers -->
<PropertyGroup>
Expand Down Expand Up @@ -499,12 +521,13 @@
</Target>

<Target Name="ChmodPublishDir"
DependsOnTargets="GenerateCliRuntimeConfigurationFiles"
DependsOnTargets="GenerateCliRuntimeConfigurationFiles;CreateMSBuildAppHost"
Condition="'$(OSName)' != 'win'">

<Exec Command="find $(OutputPath) -type d -exec chmod 755 {} \;" />
<Exec Command="find $(OutputPath) -type f -exec chmod 644 {} \;" />
<Exec Command="chmod 755 %(_RoslynAppHost.RootDir)%(_RoslynAppHost.Directory)%(_RoslynAppHost.Filename)" />
<Exec Command="chmod 755 %(_MSBuildAppHost.RootDir)%(_MSBuildAppHost.Directory)%(_MSBuildAppHost.Filename)" />
</Target>

<Target Name="DeleteSymbolsFromPublishDir" DependsOnTargets="GenerateCliRuntimeConfigurationFiles">
Expand Down Expand Up @@ -552,6 +575,7 @@
GeneratePackagePruneData;
PublishContainersSdk;
GenerateCliRuntimeConfigurationFiles;
CreateMSBuildAppHost;
MakeFscRunnableAndMoveToPublishDir;
RemoveFscFilesAfterPublish;
PublishTargetExtensions;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,6 @@ Copyright (c) .NET Foundation. All rights reserved.
<ProvideApplicationPartFactoryAttributeTypeName Condition="'$(ProvideApplicationPartFactoryAttributeTypeName)' == ''">Microsoft.AspNetCore.Mvc.ApplicationParts.ConsolidatedAssemblyApplicationPartFactory, Microsoft.AspNetCore.Mvc.Razor</ProvideApplicationPartFactoryAttributeTypeName>
</PropertyGroup>

<PropertyGroup>
<RazorEncConfigFile>$(_RazorSdkSourceGeneratorDirectoryRoot)RazorSourceGenerator.razorencconfig</RazorEncConfigFile>
</PropertyGroup>

<ItemGroup>
<EditorConfigFiles Include="$(RazorEncConfigFile)" Condition="'$(DesignTimeBuild)' == 'true' AND '$(BuildingInsideVisualStudio)' == 'true'"/>
</ItemGroup>

<ItemGroup>
<_RazorAnalyzer Include="$(_RazorSdkSourceGeneratorDirectoryRoot)*.dll" />
</ItemGroup>
Expand Down
18 changes: 10 additions & 8 deletions src/WebSdk/Web/Tasks/Microsoft.NET.Sdk.Web.Tasks.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,17 @@
<TargetFrameworks>$(SdkTargetFramework);net472</TargetFrameworks>

<!--
Disable CS9057 in source-only dev/ci builds. This is necessary because the SDK distributes Microsoft.AspNetCore.Analyzers
with its Microsoft.NET.Sdk.Web.Tasks package. Microsoft.AspNetCore.Analyzers gets built with a dependency on the live
version of Microsoft.CodeAnalysis. In a dev/ci build, the assembly version associated with Microsoft.CodeAnalysis in
that case is 42.42.42.4242, set by Arcade in dev/ci builds. So when building Microsoft.NET.Sdk.Web.Tasks with its
analyzer dependencies, it will cause CS9057 because the analyzer assembly version is not the same as the compiler
assembly version being used by the sdk that the project is being built with. But this is fine because the analyzer
is just being used here to distribute it with the Microsoft.NET.Sdk.Web.Tasks package.
Disable CS9057. This is necessary because Microsoft.NET.Sdk.Web.Tasks distributes some ASP.NET Core analyzers. These
analyzers get built with a dependency on the live version of Microsoft.CodeAnalysis. There can be cases where the live
version of Microsoft.CodeAnalysis differs from the version contained in the SDK being used to build:
* In a dev/ci build, the assembly version associated with Microsoft.CodeAnalysis in that case is 42.42.42.4242, set by
Arcade in dev/ci builds.
* The Microsoft.CodeAnalysis has been upgraded in the live version such that it is a higher version than what is in the SDK.
In both cases, when building Microsoft.NET.Sdk.Web.Tasks with its analyzer dependencies, it will cause CS9057 because the
analyzer assembly version is not the same as the compiler assembly version being used by the sdk that the project is being
built with. But this is fine because the analyzer is just being used here to distribute it with the tool.
-->
<NoWarn Condition="'$(DotNetBuildSourceOnly)' == 'true' and '$(OfficialBuild)' != 'true'">$(NoWarn);CS9057</NoWarn>
<NoWarn Condition="'$(DotNetBuildSourceOnly)' == 'true'">$(NoWarn);CS9057</NoWarn>
</PropertyGroup>

<ItemGroup>
Expand Down
Loading
Loading