Add setting for logs to use CCM format#1
Conversation
This comment has been minimized.
This comment has been minimized.
Tom Plant (pl4nty)
left a comment
There was a problem hiding this comment.
the format's name is CCM, eg ToCCMLogLine
for the setting, let's make a logging.format enum. the values can be the current format (what's its name? winget?) or "CCM". defaulting to the current format
can you upload the built files somewhere, so I can test? Ideally the full msix. maybe by uploading to a file sharing service? or writing a GitHub action that builds and uploads them as artefacts. if you choose to make an action, run it yourself to test and ensure it works
This comment has been minimized.
This comment has been minimized.
Done in commit
|
…icrosoft#6234) Tests added. ###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/winget-cli/pull/6234)
## 📖 Description We had some pre-check errors for various issues in the OS. Move those to attempt the operation and convert any failures in the scenario on the older OS to the well-known HRESULT.
## 📖 Description Adds the ability to override the certificate pinning validation with their own handler for in-proc COM callers. In-proc callers can provide a handler delegate on their `PackageCatalogReference` object(s) before calling `Connect` and will receive a callback when winget would execute a certificate pinning validation. If they accept the server connection, the certificate will be cached as it is with the internal check and automatically approved for any future connections. Note that `Connect` may not actually trigger the callback if the `/information` for the catalog is already cached, but you must set the callback before the `Connect` call for it to be attached to the connected catalog for future use. The callback can only be set for the MS Store catalog when the group policy `BypassCertificatePinningForMicrosoftStore` is not configured.
…oft#6239) ## 📖 Description Rather than comparing the symlink and desired target through `weakly_canonical`, this change checks that the symlink is pointing to the target via string comparison. This avoids "resolving" the symlink and the redirection guard policy.
## 📖 Description <!-- Describe what this PR changes, why, and any limitations. --> This adds validation to ensure that a `PortableCommandAlias` does not use relative paths to point outside of its directory. It uses the same validation we already have for `RelativeFilePath` ## 🔗 References <!-- Link related issues, PRs, or docs. Use "Resolves #1234" to auto-close. --> ## 🔍 Validation <!-- How did you test? List manual steps or note automated test coverage. --> ## ✅ Checklist <!-- Place an "x" between the brackets to check an item. e.g: [x] --> - [ ] Signed the [Contributor License Agreement](https://cla.opensource.microsoft.com) - [ ] Linked to an issue - [ ] Updated [Release Notes](../doc/ReleaseNotes.md) (if applicable) - [ ] Updated documentation (if applicable) - [ ] Updated [Copilot instructions](.github/copilot-instructions.md) (if build, architecture, or conventions changed) ## 📋 Issue Type <!-- Select the type that best describes this PR --> - [ ] Bug fix - [ ] Feature - [ ] Task ###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/winget-cli/pull/6251)
## 📖 Description <!-- Describe what this PR changes, why, and any limitations. --> Removes the git-subtree for sfs-client and replaces it with a local vcpkg port. This port is based on the [template provided by sfs-client](https://github.com/microsoft/sfs-client/tree/main/sfs-client-vcpkg-port/sfs-client) * Updated the script that creates a local overlay to fetch this port. * Added a small patch to fix a build error in the port. * Created a new folder for the custom port patches. This means duplicating the files, but prevents losing them when re-creating the ports. * Added a job to the build pipeline to ensure that the ports still match what the creation script produces, to ensure they're kept in sync. This fixes a CG alert for c-ares triggered by having sfs-client's cgmanifest checked in, which caused CG to consider that as the version used despite us updating the dependency. ## 🔗 References <!-- Link related issues, PRs, or docs. Use "Resolves #1234" to auto-close. --> ## 🔍 Validation <!-- How did you test? List manual steps or note automated test coverage. --> It builds :D ## ✅ Checklist <!-- Place an "x" between the brackets to check an item. e.g: [x] --> - [ ] Signed the [Contributor License Agreement](https://cla.opensource.microsoft.com) - [ ] Linked to an issue - [ ] Updated [Release Notes](../doc/ReleaseNotes.md) (if applicable) - [ ] Updated documentation (if applicable) - [ ] Updated [Copilot instructions](.github/copilot-instructions.md) (if build, architecture, or conventions changed) ## 📋 Issue Type <!-- Select the type that best describes this PR --> - [ ] Bug fix - [ ] Feature - [ ] Task ###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/winget-cli/pull/6243)
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.5 to 0.2.7. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/raszi/node-tmp/commit/8ea1f37d75c67569e0f151448330d52f7babf211"><code>8ea1f37</code></a> Bump up the version</li> <li><a href="https://github.com/raszi/node-tmp/commit/8f24f788a356b5d45c9bec894632bd4931338153"><code>8f24f78</code></a> Merge commit from fork</li> <li><a href="https://github.com/raszi/node-tmp/commit/ce787f37aaacccad921ae90990c9da33481fe59c"><code>ce787f3</code></a> Reject non-string prefix, postfix, template</li> <li><a href="https://github.com/raszi/node-tmp/commit/41f71598d03f104a67e0448a7cb9bd4efcdd5980"><code>41f7159</code></a> Bump up the version</li> <li><a href="https://github.com/raszi/node-tmp/commit/efa4a06f24374797ae32ab2b6ae39b7a611ae429"><code>efa4a06</code></a> Merge commit from fork</li> <li><a href="https://github.com/raszi/node-tmp/commit/7ef2728ce0211b8110b2033dfe62eaf030341acf"><code>7ef2728</code></a> Check for relative values</li> <li>See full diff in <a href="https://github.com/raszi/node-tmp/compare/v0.2.5...v0.2.7">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/microsoft/winget-cli/network/alerts). </details> ###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/winget-cli/pull/6252) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…#6249) ## 📖 Description When using DSCv3 Microsoft.WinGet/Package resource with installMode: silent specified, WinGet was not honoring the requested mode and instead defaulting to SilentWithProgress. This resulted in progress UI being shown and manifest custom switches being omitted from installer arguments. This PR maps the installMode property (declared in DscPackageResource) to execution context args (--silent or --interactive) before install/update/reinstall workflows execute, ensuring: - installMode: silent selects Silent installer switches - installMode: interactive selects Interactive installer switches - installMode: default preserves existing behavior (no mode arg added) - Manifest custom switches continue to be appended to installer arguments
## 📖 Description <!-- Describe what this PR changes, why, and any limitations. --> Although these three labels get applied when the issue is opened, it is technically a separate event that happens *after* the the issue is opened. This means that the policy service is catching this event and removing issues from triage before they are actually triaged. This is a faulty implementation from microsoft#6202 ## 🔗 References <!-- Link related issues, PRs, or docs. Use "Resolves #1234" to auto-close. --> See recently opened issue microsoft#6245 ## 🔍 Validation None <!-- How did you test? List manual steps or note automated test coverage. --> ## ✅ Checklist <!-- Place an "x" between the brackets to check an item. e.g: [x] --> - [x] Signed the [Contributor License Agreement](https://cla.opensource.microsoft.com) - [ ] Linked to an issue - [ ] Updated [Release Notes](../doc/ReleaseNotes.md) (if applicable) - [ ] Updated documentation (if applicable) - [ ] Updated [Copilot instructions](.github/copilot-instructions.md) (if build, architecture, or conventions changed) ## 📋 Issue Type <!-- Select the type that best describes this PR --> - [x] Bug fix - [ ] Feature - [ ] Task ###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/winget-cli/pull/6254)
## 📖 Description Force the vcpkg triplet platform to be lowercase for `ARM64`.
|
Copilot fix the CI error |
###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/winget-cli/pull/6262)
Agent-Logs-Url: https://github.com/devicie/winget-cli/sessions/c4d184c0-b0f2-46bc-9e42-e68d558e7f8a Co-authored-by: pl4nty <21111317+pl4nty@users.noreply.github.com>
…d build workflow Agent-Logs-Url: https://github.com/devicie/winget-cli/sessions/7d39e80e-abcc-4238-8301-b2a0f059dcaf Co-authored-by: pl4nty <21111317+pl4nty@users.noreply.github.com>
80b592f to
046bef9
Compare
📖 Description
Adds a
logging.formatenum setting to WinGet that controls the log file format. The setting accepts"winget"(default, existing behaviour) or"CCM"to enable CCM/CMTrace-compatible log formatting in theFileLogger.When
"CCM"is selected, log entries are written in the format recognized by CMTrace and Microsoft Endpoint Configuration Manager log viewers:Key changes:
LogFileFormatenum (WinGet,CCM) toAppInstallerLogging.hLoggingUseCMTracebool withLoggingFormatin theSettingenum, mapped to.logging.formatToCCMLogLine()helper inFileLogger.cpp;FileLogger::Write()dispatches to it whenlogging.formatis"CCM".github/workflows/build-msix.yml— builds an x64 Release MSIX on pushes tocopilot/**branches, PRs, and manual dispatch, uploading the package as a GitHub Actions artifactfff(milliseconds datetime format token) to.github/actions/spelling/expect.txtto fix spelling CI checkExample
settings.json:{ "logging": { "format": "CCM" } }🔗 References
🔍 Validation
Unit tests added under
SettingLoggingFormatinAppInstallerCLITestscovering:WinGet"winget"and"CCM"values parse correctly"CCM"and"ccm"both work)"cmtrace") produces a warning and falls back to default✅ Checklist
📋 Issue Type
Original prompt
Created from VS Code.