microsoft / winget-cli

WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell modules, and a COM (Component Object Model) API (Application Programming Interface).
https://learn.microsoft.com/windows/package-manager/
MIT License
22.54k stars 1.39k forks source link

Add Workflow logs and fix installed version workflow bug #4432

Closed JohnMcPMS closed 2 months ago

JohnMcPMS commented 2 months ago

Fixes #4425

Change

This adds a Workflow channel (disabled by default) that has the entry to tasks and the Get/Add/Contains calls logged to it. This enables a view into a flow that can be collected by a third party.

It also fixes a behavior change with the side-by-side code path for selecting the installed version that would lead to no data item being inserted, when the previous behavior was that a nullptr would be inserted when no version is installed.

Validation

Manual validation of the workflow output, including using the windbg command to see the function name (for function pointer tasks). Manual validation of at least one case of the GetVariant(14) issue being fixed.

Microsoft Reviewers: Open in CodeFlow