You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Issue
Updating the version of CsWinRT that we use lead to a problem with
conflicting WinRT.Runtime assemblies (microsoft/winget-dsc#140). While
that issue was mitigated by delisting the offending version, in order to
ship any release with the newer version of CsWinRT, we need to embed the
WinRT.Runtime in our assemblies.
## Change
Move to use embedded CsWinRT, specifically in
`Microsoft.WinGet.Client.Engine` and
`Microsoft.Management.Configuration.Processor`. The dependent projects
are updated to no longer reference CsWinRT, but requires some special
handling to prevent errors.
Since the configuration code was leveraging a projection assembly, it is
being replaced by the processor. The projected types are shared out to
those dependent binaries via `InternalsVisibleTo`.
Also fixes an annoying behavior where an exception escaping from a
command execution would prevent the `--logs` option from opening the log
location (error cases being more likely to be the time one would want
the logs of course).
<ErrorCondition="!Exists('$(MicrosoftManagementConfigurationProcessorPath)')"Text="Microsoft.Management.Configuration.Processor.winmd was not found in $(MicrosoftManagementConfigurationProcessorPath)" />
0 commit comments