winget-cli

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit ba0b9fc29293936d8f04421d2204b75d559922f2
parent f40d4d9910c0dc3791cc6c5cca68d0fccaca0503
Author: Josh Soref <2119212+jsoref@users.noreply.github.com>
Date:   Tue, 23 Aug 2022 12:45:15 -0400

Use check-spelling/check-spelling@v0.0.20 (#2467)


Diffstat:
M.github/ISSUE_TEMPLATE/Bug_Report.yml | 2+-
A.github/actions/spelling/README.md | 16++++++++++++++++
A.github/actions/spelling/advice.md | 25+++++++++++++++++++++++++
M.github/actions/spelling/allow.txt | 22----------------------
M.github/actions/spelling/excludes.txt | 36++++++++++++++++++++++++++++++++++--
M.github/actions/spelling/expect.txt | 36+++++++-----------------------------
A.github/actions/spelling/line_forbidden.patterns | 48++++++++++++++++++++++++++++++++++++++++++++++++
M.github/actions/spelling/patterns.txt | 55+++++++++++++++++++++++++++++++++++++++++++++++++++++--
M.github/actions/spelling/reject.txt | 11+++++++----
M.github/workflows/spelling2.yml | 41+++++++++++++++++++++++++++++++----------
Mdoc/specs/#182 - Support for installation of portable standalone apps.md | 6+++---
Mdoc/specs/#396 - Settings command.md | 4++--
Mdoc/specs/#888 - Com Api.md | 2+-
Mdoc/windows/package-manager/package/windows-package-manager-policies.md | 2+-
Msrc/AppInstallerCLICore/Resources.h | 2+-
Msrc/AppInstallerCLITests/main.cpp | 4++--
Msrc/AppInstallerRepositoryCore/Microsoft/Schema/1_0/ManifestTable.cpp | 2+-
Msrc/AppInstallerRepositoryCore/Microsoft/Schema/1_0/OneToManyTable.cpp | 4++--
Msrc/AppInstallerRepositoryCore/Microsoft/Schema/1_0/PathPartTable.cpp | 2+-
Msrc/Microsoft.Management.Deployment/PackageManager.idl | 4++--
Msrc/WinGetUtilInterop/Manifest/V1/Manifest.cs | 2+-
Msrc/WinGetUtilInterop/Manifest/V1/ManifestLocalization.cs | 2+-
22 files changed, 240 insertions(+), 88 deletions(-)

diff --git a/.github/ISSUE_TEMPLATE/Bug_Report.yml b/.github/ISSUE_TEMPLATE/Bug_Report.yml @@ -6,7 +6,7 @@ body: value: | > This bug tracker is monitored by Windows Package Manager development team and other technical folks. > - > **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to Github issues**. + > **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to GitHub issues**. > Instead, send dumps/traces to secure@microsoft.com, referencing this GitHub issue. > > If this is an application crash, please also provide a Feedback Hub submission link if at all possible so we can find your diagnostic data on the backend. diff --git a/.github/actions/spelling/README.md b/.github/actions/spelling/README.md @@ -0,0 +1,16 @@ +# check-spelling/check-spelling configuration + +File | Purpose | Format | Info +-|-|-|- +[dictionary.txt](dictionary.txt) | Replacement dictionary (creating this file will override the default dictionary) | one word per line | [dictionary](https://github.com/check-spelling/check-spelling/wiki/Configuration#dictionary) +[allow.txt](allow.txt) | Add words to the dictionary | one word per line (only letters and `'`s allowed) | [allow](https://github.com/check-spelling/check-spelling/wiki/Configuration#allow) +[reject.txt](reject.txt) | Remove words from the dictionary (after allow) | grep pattern matching whole dictionary words | [reject](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-reject) +[excludes.txt](excludes.txt) | Files to ignore entirely | perl regular expression | [excludes](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-excludes) +[only.txt](only.txt) | Only check matching files (applied after excludes) | perl regular expression | [only](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-only) +[patterns.txt](patterns.txt) | Patterns to ignore from checked lines | perl regular expression (order matters, first match wins) | [patterns](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-patterns) +[line_forbidden.patterns](line_forbidden.patterns) | Patterns to flag in checked lines | perl regular expression (order matters, first match wins) | [patterns](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-patterns) +[expect.txt](expect.txt) | Expected words that aren't in the dictionary | one word per line (sorted, alphabetically) | [expect](https://github.com/check-spelling/check-spelling/wiki/Configuration#expect) +[advice.md](advice.md) | Supplement for GitHub comment when unrecognized words are found | GitHub Markdown | [advice](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice) + +Note: you can replace any of these files with a directory by the same name (minus the suffix) +and then include multiple files inside that directory (with that suffix) to merge multiple files together. diff --git a/.github/actions/spelling/advice.md b/.github/actions/spelling/advice.md @@ -0,0 +1,25 @@ +<!-- See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice --> <!-- markdownlint-disable MD033 MD041 --> +<details><summary>If the flagged items are false positives</summary> + +If items relate to a ... +* binary file (or some other file you wouldn't want to check at all). + + Please add a file path to the `excludes.txt` file matching the containing file. + + File paths are Perl 5 Regular Expressions - you can [test]( +https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your files. + + `^` refers to the file's path from the root of the repository, so `^README\.md$` would exclude [README.md]( +../tree/HEAD/README.md) (on whichever branch you're using). + +* well-formed pattern. + + If you can write a [pattern](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns) that would match it, + try adding it to the `patterns.txt` file. + + Patterns are Perl 5 Regular Expressions - you can [test]( +https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your lines. + + Note that patterns can't match multiline strings. + +</details> diff --git a/.github/actions/spelling/allow.txt b/.github/actions/spelling/allow.txt @@ -216,33 +216,19 @@ http https HWND Hyperlink -IActivation -IApplication IAppx -IAsync -IBuffer icu -IDeserializer -IDisposable IDX -IEnumerable -IEquatable -IEquitable IFACEMETHOD ifdef ifndef ifstream -IInput -IInspectable IIS -ILogger -IManifest impl inapplicabilities Inet inheritdoc inno -INotify INPROC Inq installertype @@ -254,21 +240,13 @@ INSTALLPATH INSTALLUILEVEL interop INVALIDARG -IObservable iomanip iostream -IOutput -IProgress -IRandom -IRest ISAPPROVEDFOROUTPUT -ISet -ISource isspace istream istringstream isxdigit -ITest IUnknown json junit diff --git a/.github/actions/spelling/excludes.txt b/.github/actions/spelling/excludes.txt @@ -1,15 +1,32 @@ # See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes (?:^|/)(?i)COPYRIGHT (?:^|/)(?i)LICEN[CS]E +(?:^|/)go\.sum$ (?:^|/)package(?:-lock|)\.json$ (?:^|/)vendor/ /shared\.manifest$ ignore$ +\.a$ +\.ai$ \.avi$ +\.bmp$ +\.bz2$ \.cer$ +\.crt$ +\.dll$ +\.DS_Store$ +\.eot$ +\.exe$ \.gif$ +\.gitattributes$ +\.graffle$ +\.gz$ +\.icns$ \.ico$ +\.jar$ \.jpe?g$ +\.key$ +\.lib$ \.lock$ \.map$ \.min\. @@ -17,24 +34,38 @@ ignore$ \.mp[34]$ \.msix$ \.msixbundle$ +\.o$ +\.ocf$ +\.otf$ +\.pdf$ +\.pem$ \.png$ +\.psd$ +\.s$ \.sln$ +\.svg$ +\.tiff?$ +\.ttf$ \.vcxitems$ \.vcxproj$ \.vcxproj\.filters$ \.vdproj$ \.wapproj$ \.wav$ +\.webm$ +\.webp$ \.winmd$ +\.woff2?$ +\.zip$ ^cgmanifest\.json$ ^Localization/ ^NOTICE$ ^src/AppInstallerCLICore/Commands/ExperimentalCommand\.cpp$ +^src/AppInstallerCLIE2ETests/TestData/AppInstallerTestMsiInstaller.msi$ ^src/AppInstallerCLITests/TestData/InputARPData.txt$ ^src/AppInstallerCLITests/TestData/InputNames.txt$ ^src/AppInstallerCLITests/TestData/InputPublishers.txt$ ^src/AppInstallerCLITests/TestData/NormalizationInitialIds.txt$ -^src/AppInstallerCLIE2ETests/TestData/AppInstallerTestMsiInstaller.msi$ ^src/AppInstallerCommonCore/external/do.h$ ^src/catch2/ ^src/cpprestsdk/ @@ -44,4 +75,5 @@ ignore$ ^src/YamlCppLib/ # Because it doesn't handle argument -Words well ^tools/CorrelationTestbed/.*\.ps1$ -^\.github/ +^\.github/actions/spelling/ +^\Q.github/workflows/spelling.yml\E$ diff --git a/.github/actions/spelling/expect.txt b/.github/actions/spelling/expect.txt @@ -41,8 +41,6 @@ badbit Baz bcp BEFACEF -BEFACEFE -Beigi bfd BFirst bght @@ -57,6 +55,7 @@ BOMs boundparms brk Browsable +BSODs Buf buildtransitive BUILTINS @@ -105,6 +104,7 @@ desktopappinstaller dirs diskfull dllimport +DMPAs dnld Dobbeleer Dsc @@ -125,10 +125,9 @@ etest execustom EXEHASH experimentalfeatures -fcb -FECAFEB fd fdw +FECAFEB fedorapeople fileinuse Filtercriteria @@ -170,44 +169,23 @@ hresults htm IARP IAttachment -IConfiguration -ICreate idx IEnum IFACEMETHODIMP -IFile -IFind -IGlobal IHelp -IHost iid -IInstall -IInstance IISOn img -IMutable -IName inet inor installinprogress installshield insufficientmemory Intelli -IPackage -IPersist -IRead -IService -ISettings -IShell ishelp ISQ -issuecomment ISVs itr -IUninstall -IVector -IWeb -IZone jdk jfearn JObject @@ -216,8 +194,6 @@ jpalardy JREs jrsoftware jsoncpp -kayone -Keivan KF KNOWNFOLDERID Kp @@ -239,7 +215,6 @@ localizationpriority LPBYTE LPDWORD lpitemidlist -LPITEMIDLIST LPWCH LPWSTR LSTATUS @@ -289,7 +264,6 @@ normer NOSEPARATOR NOTAPROPERTY notmatch -npp nsis nuffing nullopt @@ -403,14 +377,17 @@ SUSE swervy SYD SYG +Syncy sysrefcomp Tagit TCpp Templating temppath testexampleinstaller +textarea thiscouldbeapc threehundred +timezone Tlg tombstoned TOptions @@ -423,6 +400,7 @@ TState TStatus typeof typeparam +ubuntu UCase ucasemap UChars diff --git a/.github/actions/spelling/line_forbidden.patterns b/.github/actions/spelling/line_forbidden.patterns @@ -0,0 +1,48 @@ +# reject `m_data` as there's a certain OS which has evil defines that break things if it's used elsewhere +# \bm_data\b + +# s.b. GitHub +\bGithub\b + +# s.b. GitLab +\bGitlab\b + +# s.b. JavaScript +\bJavascript\b + +# s.b. Microsoft +\bMicroSoft\b + +# s.b. another +\ban[- ]other\b + +# s.b. greater than +\bgreater then\b + +# s.b. less than +\bless then\b + +# s.b. otherwise +\bother[- ]wise\b + +# s.b. nonexistent +\bnon existing\b +\b[Nn]o[nt][- ]existent\b + +# s.b. preexisting +[Pp]re-existing + +# s.b. preempt +[Pp]re-empt\b + +# s.b. preemptively +[Pp]re-emptively + +# s.b. reentrancy +[Rr]e-entrancy + +# s.b. reentrant +[Rr]e-entrant + +# Reject duplicate words +\s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s diff --git a/.github/actions/spelling/patterns.txt b/.github/actions/spelling/patterns.txt @@ -15,8 +15,6 @@ data:[a-zA-Z=;,/0-9+-]+ "[0-9a-f]{64}" # sha-1 \b[0-9a-f]{40}\b -# ignore long runs of a single character: -\b([A-Za-z])\g{-1}{3,}\b El proyecto .* diferentes # Package family names \b[-.A-Za-z0-9]+_[a-z0-9]{13}\b @@ -45,8 +43,61 @@ http://rfc3161.gtm.corp.microsoft.com/TSS/HttpTspServer # Ignore test patterns REQUIRE\(RestHelper::GetRestAPIBaseUri\(".*"\) == L".*" +# fabricbot.json +"(?:id|user)": "[-A-Za-z0-9_]*" + # URL escaped characters \%[0-9A-F]{2} # Sample store product id for App Installer 9nblggh4nns1 + +# Automatically suggested patterns +# hit-count: 407 file-count: 78 +# IServiceProvider +\bI(?=(?:[A-Z][a-z]{2,})+\b) + +# hit-count: 13 file-count: 9 +# GitHub SHAs (markdown) +(?:\[`?[0-9a-f]+`?\]\(https:/|)/(?:www\.|)github\.com(?:/[^/\s"]+){2,}(?:/[^/\s")]+)(?:[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b|) + +# Compiler flags +(?:^|[\t ,"'`=(])-[D](?!ependency|esktop|estination|ev|irectory) +(?:^|[\t ,"'`=(])-[W](?!ait|in|orking) +(?:^|[\t ,"'`=(])-[l](?!og) +(?:^|[\t ,"'`=(])-[f](?!ind|eatures) + +# hit-count: 4 file-count: 2 +# w3 +\bw3\.org/[-0-9a-zA-Z/#.]+ + +# hit-count: 2 file-count: 2 +# hex runs +\b[0-9a-fA-F]{16,}\b + +# hit-count: 1 file-count: 1 +# Contributor +\[[^\]]+\]\(https://github\.com/[^/\s"]+\) + +# hit-count: 1 file-count: 1 +# GHSA +GHSA(?:-[0-9a-z]{4}){3} + +# hit-count: 1 file-count: 1 +# hex in url queries +=[0-9a-fA-F]*?(?:[A-F]{3,}|[a-f]{3,})[0-9a-fA-F]*?& + +# hit-count: 1 file-count: 1 +# hex digits including css/html color classes: +(?:[\\0][xX]|\\u|[uU]\+|#x?|\%23)[0-9a-fA-FgGrR_]{2,}(?:[uUlL]{0,3}|u\d+)\b + +# acceptable duplicates +# ls directory listings +[-bcdlpsw](?:[-r][-w][-sx]){3}\s+\d+\s+(\S+)\s+\g{-1}\s+\d+\s+ +# C types +\s(Architecture|long|LONG) \g{-1}\s +# javadoc / .net +(?:[\\@](?:groupname|param)|(?:public|private)(?:\s+static|\s+readonly)*)\s+(\w+)\s+\g{-1}\s + +# ignore long runs of a single character: +\b([A-Za-z])\g{-1}{3,}\b diff --git a/.github/actions/spelling/reject.txt b/.github/actions/spelling/reject.txt @@ -1,7 +1,10 @@ ^attache$ benefitting -occurence +occurences? +^dependan.* +^oer$ Sorce -^[Ss]pae -^untill -^wether +^[Ss]pae.* +^untill$ +^untilling$ +^wether.* diff --git a/.github/workflows/spelling2.yml b/.github/workflows/spelling2.yml @@ -11,17 +11,38 @@ on: jobs: spelling: name: Spell checking + permissions: + contents: read + pull-requests: read + actions: read + outputs: + followup: ${{ steps.spelling.outputs.followup }} runs-on: ubuntu-latest + if: "contains(github.event_name, 'pull_request') || github.event_name == 'push'" + concurrency: + group: spelling-${{ github.event.pull_request.number || github.ref }} + # note: If you use only_check_changed_files, you do not want cancel-in-progress + cancel-in-progress: true steps: - - name: checkout-merge - if: "contains(github.event_name, 'pull_request')" - uses: actions/checkout@v2 - with: - ref: refs/pull/${{github.event.pull_request.number}}/merge - - name: checkout - if: ${{ github.event_name == 'push' }} - uses: actions/checkout@v2 - - uses: check-spelling/check-spelling@v0.0.19 + - name: check-spelling id: spelling + uses: check-spelling/check-spelling@v0.0.20 + with: + suppress_push_for_open_pull_request: 1 + checkout: true + post_comment: 0 + + comment: + name: Report + runs-on: ubuntu-latest + needs: spelling + permissions: + contents: write + pull-requests: write + if: (success() || failure()) && needs.spelling.outputs.followup + steps: + - name: comment + uses: check-spelling/check-spelling@v0.0.20 with: - shortest_word: 2 + checkout: true + task: ${{ needs.spelling.outputs.followup }} diff --git a/doc/specs/#182 - Support for installation of portable standalone apps.md b/doc/specs/#182 - Support for installation of portable standalone apps.md @@ -43,7 +43,7 @@ The corresponding settings are "PortablePackageUserRoot" and "PortablePackageMac >Note: The "packageIdentifier" will be used to generate subdirectories for these binaries to be installed to. -Using Gitlab.gitlab runner as an example would result in the .exe being placed in "%LOCALAPPDATA%/Microsoft/WinGet/Packages/Gitlab.gitlab-runner/" +Using GitLab.gitlab runner as an example would result in the .exe being placed in "%LOCALAPPDATA%/Microsoft/WinGet/Packages/GitLab.gitlab-runner/" If a user has configured a path to be used for portable applications, that path should be honored. The user should also be able to specify if they want all portable packages placed in the same directory, or in a directory per package. A related setting for the uninstall scenario will be able to specify the default behavior for either "--clean" or "--purge". @@ -71,9 +71,9 @@ By default, portable apps will be installed with the "User" scope unless specifi #### Installation from multiple sources: -If the user chooses to install the same package but from a secondary source, the Windows Package Manager will append the source name to subdirectory. For example, if GitLabRunner is installed a second time but from the msstore, then the full path would be "%LOCALAPPDATA%/Microsoft/WinGet/Packages/Gitlab.GitLabRunner_msstore/". +If the user chooses to install the same package but from a secondary source, the Windows Package Manager will append the source name to subdirectory. For example, if GitLabRunner is installed a second time but from the msstore, then the full path would be "%LOCALAPPDATA%/Microsoft/WinGet/Packages/GitLab.GitLabRunner_msstore/". -The same behavior will be applied when creating a symlink in order to avoid overwriting an existing symlink of the same package but from a different source. Using the same example, the generated symlink for GitLabRunner from the msstore will have a full path of "%LOCALAPPDATA%/Microsoft/WinGet/Links/Gitlab.GitLabRunner_msstore.exe/" +The same behavior will be applied when creating a symlink in order to avoid overwriting an existing symlink of the same package but from a different source. Using the same example, the generated symlink for GitLabRunner from the msstore will have a full path of "%LOCALAPPDATA%/Microsoft/WinGet/Links/GitLab.GitLabRunner_msstore.exe/" ### Upgrade diff --git a/doc/specs/#396 - Settings command.md b/doc/specs/#396 - Settings command.md @@ -151,9 +151,9 @@ The author of this document firmly believes that `--plain` must be replaced with ### Source auto update -Currently, WinGet updates the source after 5 minutes. This setting will will enable users to set the timeout in minutes. +Currently, WinGet updates the source after 5 minutes. This setting will enable users to set the timeout in minutes. -Value must be integers with a minimum of 0. An arbitrary limit limit can be set but is not strictly necessary. A value of 0 indicates no update. +Value must be integers with a minimum of 0. An arbitrary limit can be set but is not strictly necessary. A value of 0 indicates no update. ``` "Source": { diff --git a/doc/specs/#888 - Com Api.md b/doc/specs/#888 - Com Api.md @@ -798,7 +798,7 @@ namespace Microsoft.Management.Deployment PackageInstallScope PackageInstallScope; /// Silent, Interactive, or Default PackageInstallMode PackageInstallMode; - /// Directs the logging to a log file. If provided, the installer must have have write access to the file + /// Directs the logging to a log file. If provided, the installer must have write access to the file String LogOutputPath; /// Continues the install even if the hash in the catalog does not match the linked installer. Boolean AllowHashMismatch; diff --git a/doc/windows/package-manager/package/windows-package-manager-policies.md b/doc/windows/package-manager/package/windows-package-manager-policies.md @@ -263,7 +263,7 @@ The Product should have a age rating that would merit a rating of PEGI 12, ESRB ### 2.11.1 -If the Product provides content (such as user-generated, retail or other web-based content) that might be appropriate for a higher age rating than its assigned rating, you must enable users to opt in to receiving such content by using a content filter or by signing in with a pre-existing account. +If the Product provides content (such as user-generated, retail or other web-based content) that might be appropriate for a higher age rating than its assigned rating, you must enable users to opt in to receiving such content by using a content filter or by signing in with a preexisting account. ### 2.12 User Generated Content diff --git a/src/AppInstallerCLICore/Resources.h b/src/AppInstallerCLICore/Resources.h @@ -434,7 +434,7 @@ namespace AppInstaller::CLI::Resource // Gets the singleton instance of the resource loader. static const Loader& Instance(); - // Gets the the string resource value. + // Gets the string resource value. std::string ResolveString(std::wstring_view resKey) const; private: diff --git a/src/AppInstallerCLITests/main.cpp b/src/AppInstallerCLITests/main.cpp @@ -20,7 +20,7 @@ using namespace std::string_literals; using namespace AppInstaller; -// Logs the the AppInstaller log target to break up individual tests +// Logs the AppInstaller log target to break up individual tests struct LoggingBreakListener : public Catch::TestEventListenerBase { using TestEventListenerBase::TestEventListenerBase; @@ -134,7 +134,7 @@ int main(int argc, char** argv) // Enable logging, to force log string building to run. // Disable SQL by default, as it generates 10s of MBs of log file and - // increases the the full test run time by 60% or more. + // increases the full test run time by 60% or more. // By not creating a log target, it will all be thrown away. Logging::Log().EnableChannel(Logging::Channel::All); if (!keepSQLLogging) diff --git a/src/AppInstallerRepositoryCore/Microsoft/Schema/1_0/ManifestTable.cpp b/src/AppInstallerRepositoryCore/Microsoft/Schema/1_0/ManifestTable.cpp @@ -273,7 +273,7 @@ namespace AppInstaller::Repository::Microsoft::Schema::V1_0 { using QCol = SQLite::Builder::QualifiedColumn; - // Build a select statement to find manifest rows containing references to 1:1 tables with non-existent rowids + // Build a select statement to find manifest rows containing references to 1:1 tables with nonexistent rowids // Such as: // Select manifest.rowid, manifest.id, ids.id from manifest left outer join ids on manifest.id = ids.rowid where ids.id is NULL SQLite::Builder::StatementBuilder builder; diff --git a/src/AppInstallerRepositoryCore/Microsoft/Schema/1_0/OneToManyTable.cpp b/src/AppInstallerRepositoryCore/Microsoft/Schema/1_0/OneToManyTable.cpp @@ -293,7 +293,7 @@ namespace AppInstaller::Repository::Microsoft::Schema::V1_0 bool result = true; { - // Build a select statement to find map rows containing references to manifests with non-existent rowids + // Build a select statement to find map rows containing references to manifests with nonexistent rowids // Such as: // Select map.rowid, map.manifest from tags_map as map left outer join manifest on map.manifest = manifest.rowid where manifest.id is null @@ -326,7 +326,7 @@ namespace AppInstaller::Repository::Microsoft::Schema::V1_0 } { - // Build a select statement to find map rows containing references to 1:1 tables with non-existent rowids + // Build a select statement to find map rows containing references to 1:1 tables with nonexistent rowids // Such as: // Select map.rowid, map.tag from tags_map as map left outer join tags on map.tag = tags.rowid where tags.tag is null SQLite::Builder::StatementBuilder builder; diff --git a/src/AppInstallerRepositoryCore/Microsoft/Schema/1_0/PathPartTable.cpp b/src/AppInstallerRepositoryCore/Microsoft/Schema/1_0/PathPartTable.cpp @@ -368,7 +368,7 @@ namespace AppInstaller::Repository::Microsoft::Schema::V1_0 { using QCol = SQLite::Builder::QualifiedColumn; - // Build a select statement to find pathpart rows containing references to parents with non-existent rowids + // Build a select statement to find pathpart rows containing references to parents with nonexistent rowids // Such as: // Select l.rowid, l.parent from pathparts as l left outer join pathparts as r on l.parent = r.rowid where l.parent is not null and r.pathpart is null constexpr std::string_view s_left = "left"sv; diff --git a/src/Microsoft.Management.Deployment/PackageManager.idl b/src/Microsoft.Management.Deployment/PackageManager.idl @@ -589,7 +589,7 @@ namespace Microsoft.Management.Deployment PackageInstallScope PackageInstallScope; /// Silent, Interactive, or Default PackageInstallMode PackageInstallMode; - /// Directs the logging to a log file. If provided, the installer must have have write access to the file + /// Directs the logging to a log file. If provided, the installer must have write access to the file String LogOutputPath; /// Continues the install even if the hash in the catalog does not match the linked installer. Boolean AllowHashMismatch; @@ -645,7 +645,7 @@ namespace Microsoft.Management.Deployment /// Silent, Interactive, or Default PackageUninstallMode PackageUninstallMode; - /// Directs the logging to a log file. If provided, the installer must have have write access to the file + /// Directs the logging to a log file. If provided, the installer must have write access to the file String LogOutputPath; /// Used by a caller to correlate the install with a caller's data. diff --git a/src/WinGetUtilInterop/Manifest/V1/Manifest.cs b/src/WinGetUtilInterop/Manifest/V1/Manifest.cs @@ -114,7 +114,7 @@ namespace Microsoft.WinGetUtil.Models.V1 public string CopyrightUrl { get; set; } /// <summary> - /// Gets or sets the the package short description in default locale. + /// Gets or sets the package short description in default locale. /// </summary> public string ShortDescription { get; set; } diff --git a/src/WinGetUtilInterop/Manifest/V1/ManifestLocalization.cs b/src/WinGetUtilInterop/Manifest/V1/ManifestLocalization.cs @@ -74,7 +74,7 @@ namespace Microsoft.WinGetUtil.Models.V1 public string CopyrightUrl { get; set; } /// <summary> - /// Gets or sets the the package short description. + /// Gets or sets the package short description. /// </summary> public string ShortDescription { get; set; }