Skip to content

Commit

Permalink
EnsurePackage*Async() handling options.RegisterNewerIfAvailable(true)…
Browse files Browse the repository at this point in the history
…. RegisterPackageByPackageFull/FamilyNameAsync crash. Test + Warning fixes (#4845)

EnsurePackage*Async() not handling options.RegisterNewerIfAvailable(true)

RegisterPackageByPackageFullNameAsync() and RegisterPackageByPackageFullNameAsync() take their target parameter as const hstring& resulting in the reference captured by their implementations' co_await and not the actual value. The caller deallocates the memory before Register... is done with it potentially leading to BadMojo(TM). Tests don't notice it as they're too simple to notice this use-after-free -- the memory may be deallocated but the memory's not overwritten (yet) in simple loads (like the tests). Larger scale (real world) use with more diverse memory patterns notice the problem (usually as a crash).

ApplicationDataTests_Elevated test cases were blocked state due to user context vs environmental state vs access control (ACLs whee!). Changed RunAs and associated test process setup to play nice together.

Fixed some PackageManagerTests that had incomplete state setup potentially causing false errors if a past previous test failed.

Fixed 400+ build warnings (mostly CS8305 due to [Experimental] attribute, almost all from OAuth generated C#/WinRT)

Removed redundant .props import (fixing a VS warning)

Fixed misleading log message

Removed wrong test cases

Added diagnostics to all Setup fixtures to hunt down Setup failures

Change IsReady tests to RunAs RestrictedUser

Fixed compiler warnings

Split ApplicationDataTests_Elevated to separate source file. Added diagnostics to ApplicationDataTests[_Elevated]. Moved TAEF display+compare support for C++/WinRT hstring into shared file (test/inc/WindowsAppRuntime.Test.TAEF.cppwinrt.h). Added Parameters to ApplicationData tests to (hopefully) troubleshoot failure.

Added whomi /all to build pipeline test output. Changed ApplicationData tests' default to IsolationLevel=Class (not TAEF's default =Module)

Changed PackageManager tests' default to IsolationLevel=Class (not TAEF's default =Module)

Factored tests into separate runs to aid troubleshooting failures

Added suppression of CS8305 (Feature is experimental... duh) as not helpful and negatively helpful (400+ warnings that are, for us, features).

https://task.ms/54835036
https://task.ms/54858998
https://task.ms/54884960
  • Loading branch information
DrusTheAxe committed Nov 8, 2024
1 parent 5f333ed commit 3b69779
Show file tree
Hide file tree
Showing 51 changed files with 1,797 additions and 460 deletions.
67 changes: 49 additions & 18 deletions WindowsAppRuntime.sln
Original file line number Diff line number Diff line change
Expand Up @@ -446,8 +446,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "VersionInfoTests", "test\Ve
{9C1A6C58-52D6-4514-9120-5C339C5DF4BE} = {9C1A6C58-52D6-4514-9120-5C339C5DF4BE}
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.FrameworkUdk.PackageReference", "eng\PackageReference\FrameworkUdk\Microsoft.FrameworkUdk.PackageReference.csproj", "{FD0CC14A-ED4B-4936-B68B-F31E58372E32}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "PackageManager", "PackageManager", "{380C8BE1-1868-4860-BD32-ADCD8683285D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "API", "API", "{CC969A0B-9B01-479D-A563-C9866BCC6F83}"
Expand Down Expand Up @@ -529,6 +527,18 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PackageManager.Test.M.White
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PackageManager.Test.M.White.msix", "test\PackageManager\data\PackageManager.Test.M.White.msix\PackageManager.Test.M.White.msix.vcxproj", "{28DCF9CE-D9F4-4A7D-8AD1-F2EFC0D3B4DF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "eng", "eng", "{8F5A44EF-D182-49C9-9BE9-7549CFE38A7F}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "PackageReference", "PackageReference", "{5C88AE1D-AC20-4A41-9299-1EEA15B80724}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FrameworkUdk", "FrameworkUdk", "{E24C263A-DE3E-4844-BA50-842DA5AD7A49}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.FrameworkUdk.PackageReference", "eng\PackageReference\FrameworkUdk\Microsoft.FrameworkUdk.PackageReference.csproj", "{D5958784-4518-44F1-A518-80514B380ED5}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "IXP", "IXP", "{7B323048-439F-47E9-A3D4-7342C5ADE2A5}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IXP.TransportPackage.PackageReference", "eng\PackageReference\IXP\IXP.TransportPackage.PackageReference.csproj", "{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -1663,22 +1673,6 @@ Global
{442FB943-1197-48FE-B3B6-8C1BCA1E81E4}.Release|x64.Build.0 = Release|x64
{442FB943-1197-48FE-B3B6-8C1BCA1E81E4}.Release|x86.ActiveCfg = Release|Win32
{442FB943-1197-48FE-B3B6-8C1BCA1E81E4}.Release|x86.Build.0 = Release|Win32
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|ARM64.ActiveCfg = Debug|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|ARM64.Build.0 = Debug|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|x64.ActiveCfg = Debug|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|x64.Build.0 = Debug|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|x86.ActiveCfg = Debug|Any CPU
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Debug|x86.Build.0 = Debug|Any CPU
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|Any CPU.Build.0 = Release|Any CPU
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|ARM64.ActiveCfg = Release|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|ARM64.Build.0 = Release|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|x64.ActiveCfg = Release|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|x64.Build.0 = Release|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|x86.ActiveCfg = Release|x64
{FD0CC14A-ED4B-4936-B68B-F31E58372E32}.Release|x86.Build.0 = Release|x64
{4A38CB80-3580-4960-9B31-3301058B7AFE}.Debug|Any CPU.ActiveCfg = Debug|x64
{4A38CB80-3580-4960-9B31-3301058B7AFE}.Debug|Any CPU.Build.0 = Debug|x64
{4A38CB80-3580-4960-9B31-3301058B7AFE}.Debug|ARM64.ActiveCfg = Debug|ARM64
Expand Down Expand Up @@ -1871,6 +1865,38 @@ Global
{28DCF9CE-D9F4-4A7D-8AD1-F2EFC0D3B4DF}.Release|x64.Build.0 = Release|x64
{28DCF9CE-D9F4-4A7D-8AD1-F2EFC0D3B4DF}.Release|x86.ActiveCfg = Release|Win32
{28DCF9CE-D9F4-4A7D-8AD1-F2EFC0D3B4DF}.Release|x86.Build.0 = Release|Win32
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|Any CPU.ActiveCfg = Debug|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|Any CPU.Build.0 = Debug|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|ARM64.ActiveCfg = Debug|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|ARM64.Build.0 = Debug|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|x64.ActiveCfg = Debug|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|x64.Build.0 = Debug|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|x86.ActiveCfg = Debug|x86
{D5958784-4518-44F1-A518-80514B380ED5}.Debug|x86.Build.0 = Debug|x86
{D5958784-4518-44F1-A518-80514B380ED5}.Release|Any CPU.ActiveCfg = Release|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Release|Any CPU.Build.0 = Release|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Release|ARM64.ActiveCfg = Release|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Release|ARM64.Build.0 = Release|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Release|x64.ActiveCfg = Release|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Release|x64.Build.0 = Release|x64
{D5958784-4518-44F1-A518-80514B380ED5}.Release|x86.ActiveCfg = Release|x86
{D5958784-4518-44F1-A518-80514B380ED5}.Release|x86.Build.0 = Release|x86
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|Any CPU.ActiveCfg = Debug|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|Any CPU.Build.0 = Debug|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|ARM64.ActiveCfg = Debug|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|ARM64.Build.0 = Debug|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|x64.ActiveCfg = Debug|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|x64.Build.0 = Debug|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|x86.ActiveCfg = Debug|x86
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Debug|x86.Build.0 = Debug|x86
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|Any CPU.ActiveCfg = Release|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|Any CPU.Build.0 = Release|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|ARM64.ActiveCfg = Release|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|ARM64.Build.0 = Release|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|x64.ActiveCfg = Release|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|x64.Build.0 = Release|x64
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|x86.ActiveCfg = Release|x86
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -2033,6 +2059,11 @@ Global
{7C240089-0F22-4247-9C91-51255C8DC18B} = {6213B1A3-E854-498F-AAFA-4CFC1E71023E}
{AC79B8FF-4C27-4326-AD20-BBC70059FF51} = {7C240089-0F22-4247-9C91-51255C8DC18B}
{28DCF9CE-D9F4-4A7D-8AD1-F2EFC0D3B4DF} = {6759ECC6-9381-4172-89E6-853F81A03D28}
{5C88AE1D-AC20-4A41-9299-1EEA15B80724} = {8F5A44EF-D182-49C9-9BE9-7549CFE38A7F}
{E24C263A-DE3E-4844-BA50-842DA5AD7A49} = {5C88AE1D-AC20-4A41-9299-1EEA15B80724}
{D5958784-4518-44F1-A518-80514B380ED5} = {E24C263A-DE3E-4844-BA50-842DA5AD7A49}
{7B323048-439F-47E9-A3D4-7342C5ADE2A5} = {5C88AE1D-AC20-4A41-9299-1EEA15B80724}
{A949149D-29CA-4AA7-B1ED-0E571B4AD9BB} = {7B323048-439F-47E9-A3D4-7342C5ADE2A5}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {4B3D7591-CFEC-4762-9A07-ABE99938FB77}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,9 @@ steps:
Write-Host "Get-WinSystemLocale"
Get-WinSystemLocale
Write-Host "WhoAmI"
Write-Host (whoami /user /groups /priv)
- task: PowerShell@2
displayName: 'Run TAEF Tests'
inputs:
Expand Down
2 changes: 1 addition & 1 deletion dev/ApplicationData/M.W.S.ApplicationData.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ namespace winrt::Microsoft::Windows::Storage::implementation
throw;
}
}
winrt::Microsoft::Windows::Storage::ApplicationData ApplicationData::GetForUnpackaged(hstring const& publisher, hstring const& product)
winrt::Microsoft::Windows::Storage::ApplicationData ApplicationData::GetForUnpackaged(hstring const& /*publisher*/, hstring const& /*product*/)
{
// TODO implement GetForUnpackaged
throw hresult_not_implemented();
Expand Down
32 changes: 26 additions & 6 deletions dev/PackageManager/API/M.W.M.D.PackageDeploymentManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -429,7 +429,17 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
const double c_progressPercentageStartOfIsReady{ 0.01 };
packageDeploymentProgress.Progress = c_progressPercentageStartOfIsReady;
progress(packageDeploymentProgress);
if (IsPackageSetReady(packageSet))
bool isReady{};
if (options.RegisterNewerIfAvailable())
{
THROW_HR_IF_MSG(E_NOTIMPL, !IsPackageDeploymentFeatureSupported(winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentFeature::IsPackageReadyOrNewerAvailable), "RegisterNewerIfAvailable is not supported on this system");
isReady = (IsPackageSetReadyOrNewerAvailable(packageSet) == winrt::Microsoft::Windows::Management::Deployment::PackageReadyOrNewerAvailableStatus::Ready);
}
else
{
isReady = IsPackageSetReady(packageSet);
}
if (isReady)
{
co_return winrt::make<PackageDeploymentResult>(PackageDeploymentStatus::CompletedSuccess, winrt::guid{});
}
Expand Down Expand Up @@ -1222,7 +1232,7 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
catch (...)
{
const auto exception{ hresult_error(to_hresult(), take_ownership_from_abi) };
error = LOG_HR_MSG(exception.code(), "ExtendedError:0x%08X PackageFamilyName:%ls PackageUri:%ls",
error = LOG_HR_MSG(exception.code(), "ExtendedError:0x%08X PackageFullName:%ls PackageUri:%ls",
extendedError, packageFullName, packageUriAsString.c_str());
}
if (FAILED(error))
Expand Down Expand Up @@ -1392,7 +1402,7 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
catch (...)
{
const auto exception{ hresult_error(to_hresult(), take_ownership_from_abi) };
error = LOG_HR_MSG(exception.code(), "ExtendedError:0x%08X PackageFamilyName:%ls PackageUri:%ls",
error = LOG_HR_MSG(exception.code(), "ExtendedError:0x%08X PackageFullName:%ls PackageUri:%ls",
extendedError, packageFullName, packageUriAsString.c_str());
}
if (FAILED(error))
Expand Down Expand Up @@ -1612,7 +1622,7 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
}

winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress>
PackageDeploymentManager::RegisterPackageByPackageFamilyNameAsync(winrt::hstring const& packageFamilyName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options)
PackageDeploymentManager::RegisterPackageByPackageFamilyNameAsync(const winrt::hstring packageFamilyName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options)
{
auto logTelemetry{ PackageManagementTelemetry::RegisterPackageByPackageFamilyNameAsync::Start(packageFamilyName) };

Expand Down Expand Up @@ -1660,7 +1670,7 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
}

winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress>
PackageDeploymentManager::RegisterPackageByPackageFullNameAsync(winrt::hstring const& packageFullName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options)
PackageDeploymentManager::RegisterPackageByPackageFullNameAsync(const winrt::hstring packageFullName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options)
{
auto logTelemetry{ PackageManagementTelemetry::RegisterPackageByPackageFullNameAsync::Start(packageFullName) };

Expand Down Expand Up @@ -1892,7 +1902,17 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
errorText.clear();
activityId = winrt::guid{};

if (IsReady(packageSetItem))
bool isReady{};
if (options.RegisterNewerIfAvailable())
{
// Our caller already verified PackageDeploymentFeature::IsPackageReadyOrNewerAvailable is supported so no need to check again
isReady = (IsReadyOrNewerAvailable(packageSetItem) == winrt::Microsoft::Windows::Management::Deployment::PackageReadyOrNewerAvailableStatus::Ready);
}
else
{
isReady = IsReady(packageSetItem);
}
if (isReady)
{
return S_OK;
}
Expand Down
4 changes: 2 additions & 2 deletions dev/PackageManager/API/M.W.M.D.PackageDeploymentManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation

private:
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress> AddPackageByAppInstallerFileAsync(winrt::Windows::Foundation::Uri packageUri, winrt::Microsoft::Windows::Management::Deployment::AddPackageOptions options);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress> RegisterPackageByPackageFamilyNameAsync(winrt::hstring const& packageFamilyName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress> RegisterPackageByPackageFullNameAsync(winrt::hstring const& packageFullName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress> RegisterPackageByPackageFamilyNameAsync(const winrt::hstring packageFamilyName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options);
winrt::Windows::Foundation::IAsyncOperationWithProgress<winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentResult, winrt::Microsoft::Windows::Management::Deployment::PackageDeploymentProgress> RegisterPackageByPackageFullNameAsync(const winrt::hstring packageFullName, winrt::Microsoft::Windows::Management::Deployment::RegisterPackageOptions options);

private:
winrt::hstring GetUupProductIdIfMsUup(winrt::Windows::Foundation::Uri const& uri) const;
Expand Down
4 changes: 2 additions & 2 deletions dev/PackageManager/API/M.W.M.D.PackageRuntimeManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -103,12 +103,12 @@ namespace winrt::Microsoft::Windows::Management::Deployment::implementation
THROW_HR_IF_NULL_MSG(E_INVALIDARG, packageUri, "PackageUri:<null>");
}

void PackageRuntimeManager::Validate(winrt::Microsoft::Windows::ApplicationModel::DynamicDependency::CreatePackageDependencyOptions const& options) const
void PackageRuntimeManager::Validate(winrt::Microsoft::Windows::ApplicationModel::DynamicDependency::CreatePackageDependencyOptions const& /*options*/ ) const
{
// Nothing to do!
}

void PackageRuntimeManager::Validate(winrt::Microsoft::Windows::ApplicationModel::DynamicDependency::AddPackageDependencyOptions const& options) const
void PackageRuntimeManager::Validate(winrt::Microsoft::Windows::ApplicationModel::DynamicDependency::AddPackageDependencyOptions const& /*options*/) const
{
// Nothing to do!
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-windows10.0.17763.0</TargetFramework>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<Platforms>x64;x86;arm64</Platforms>
<PlatformTarget>AnyCPU</PlatformTarget>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>

<PropertyGroup>
<EnableTrimAnalyzer>true</EnableTrimAnalyzer>
<IsTrimmable>true</IsTrimmable>
</PropertyGroup>

<!-- Suppress CS8305: Feature is for evaluation purposes only and is subject to change or removal in future updates. -->
<PropertyGroup>
<NoWarn>8305</NoWarn>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage" />
<PackageReference Include="Microsoft.SourceLink.Common">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.SourceLink.GitHub">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.Windows.CsWinRT" />
</ItemGroup>

<PropertyGroup>
<CSWinRTIncludes>Microsoft.Security.Authentication.OAuth</CSWinRTIncludes>
<CSWinRTWindowsMetadata>10.0.17763.0</CSWinRTWindowsMetadata>
<ProduceReferenceAssembly>false</ProduceReferenceAssembly>
</PropertyGroup>

<!-- Configure the release build binary to be as required by internal API scanning tools. -->
<PropertyGroup Condition="'$(Configuration)'=='Release'">
<DebugType>pdbonly</DebugType>
<DebugSymbols>true</DebugSymbols>
</PropertyGroup>

<ItemGroup>
<CsWinRTInputs Include="$(OutDir)/**/*.winmd" />
</ItemGroup>

<ItemGroup>
<Compile Include="$(RepoRoot)\build\VersionInfo\AssemblyInfo.cs" Link="AssemblyInfo.cs" />
</ItemGroup>

<ItemGroup>
<Reference Include="Microsoft.Security.Authentication.OAuth">
<HintPath>$(OutDir)..\WindowsAppRuntime_DLL\StrippedWinMD\Microsoft.Security.Authentication.OAuth.winmd</HintPath>
<IsWinMDFile>true</IsWinMDFile>
</Reference>
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0-windows10.0.17763.0</TargetFramework>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
Expand All @@ -12,6 +12,11 @@
<IsTrimmable>true</IsTrimmable>
</PropertyGroup>

<!-- Suppress CS8305: Feature is for evaluation purposes only and is subject to change or removal in future updates. -->
<PropertyGroup>
<NoWarn>8305</NoWarn>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.Common">
<PrivateAssets>all</PrivateAssets>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,11 @@
<IsTrimmable>true</IsTrimmable>
</PropertyGroup>

<!-- Suppress CS8305: Feature is for evaluation purposes only and is subject to change or removal in future updates. -->
<PropertyGroup>
<NoWarn>8305</NoWarn>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.Common">
<PrivateAssets>all</PrivateAssets>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,11 @@
<IsTrimmable>true</IsTrimmable>
</PropertyGroup>

<!-- Suppress CS8305: Feature is for evaluation purposes only and is subject to change or removal in future updates. -->
<PropertyGroup>
<NoWarn>8305</NoWarn>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.Common">
<PrivateAssets>all</PrivateAssets>
Expand Down
Loading

0 comments on commit 3b69779

Please sign in to comment.