Skip to content

Commit 5eef05b

Browse files
authored
Update Documents with v1.12 Client Changes
1 parent 089b4cf commit 5eef05b

6 files changed

Lines changed: 162 additions & 25 deletions

File tree

hub/package-manager/package/manifest.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Create your package manifest
33
description: If you want to submit a software package to the Windows Package Manager repository, start by creating a package manifest.
4-
ms.date: 11/01/2023
4+
ms.date: 03/24/2026
55
ms.topic: how-to
66
ms.localizationpriority: medium
77
---
@@ -57,7 +57,7 @@ For a complete list and descriptions of items in a manifest, see the [manifest s
5757

5858
### Minimal required schema
5959

60-
As specified in the [singleton JSON schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.6.0/manifest.singleton.1.6.0.json),
60+
As specified in the [singleton JSON schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.12.0/manifest.singleton.1.12.0.json),
6161
only certain fields are required. The minimal supported YAML file would look like the example below. The singleton format is only valid for packages containing a single installer and a single locale. If more than one installer or locale is provided, the multiple YAML file format and schema must be used.
6262

6363
The partitioning scheme was added to help with GitHub's UX. Folders with thousands of children do not render well in the browser.
@@ -74,11 +74,11 @@ License: # The license of the application.
7474
ShortDescription: # The description of the application.
7575
Installers:
7676
- Architecture: # Enumeration of supported architectures.
77-
InstallerType: # Enumeration of supported installer types (exe, msi, msix, inno, wix, nullsoft, appx).
77+
InstallerType: # Enumeration of supported installer types (exe, msi, msix, inno, wix, nullsoft, appx, font).
7878
InstallerUrl: # Path to download installation file.
7979
InstallerSha256: # SHA256 calculated from installer.
8080
ManifestType: # The manifest file type
81-
ManifestVersion: 1.6.0
81+
ManifestVersion: 1.12.0
8282
```
8383
8484
#### [Example](#tab/minexample/)
@@ -100,7 +100,7 @@ Installers:
100100
InstallerSha256: 092aa89b1881e058d31b1a8d88f31bb298b5810afbba25c5cb341cfa4904d843
101101
SignatureSha256: e53f48473621390c8243ada6345826af7c713cf1f4bbbf0d030599d1e4c175ee
102102
ManifestType: singleton
103-
ManifestVersion: 1.6.0
103+
ManifestVersion: 1.12.0
104104
```
105105
106106
* * *
@@ -110,10 +110,10 @@ ManifestVersion: 1.6.0
110110
To provide the best user experience, manifests should contain as much meta-data as possible. In order to separate concerns for validating installers
111111
and providing localized metadata, manifests should be split into multiple files. The minimum number of YAML files for this kind of manifest is three. Additional locales should also be provided.
112112
113-
* A [version](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.6.0/version.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.6.0/manifest.version.1.6.0.json)) file.
114-
* The [default locale](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.6.0/defaultLocale.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.6.0/manifest.defaultLocale.1.6.0.json)) file.
115-
* An [installer](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.6.0/installer.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.6.0/manifest.installer.1.6.0.json)) file.
116-
* Additional [locale](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.6.0/locale.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.6.0/manifest.locale.1.6.0.json)) files.
113+
* A [version](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.12.0/version.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.12.0/manifest.version.1.12.0.json)) file.
114+
* The [default locale](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.12.0/defaultLocale.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.12.0/manifest.defaultLocale.1.12.0.json)) file.
115+
* An [installer](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.12.0/installer.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.12.0/manifest.installer.1.12.0.json)) file.
116+
* Additional [locale](https://github.com/microsoft/winget-pkgs/blob/master/doc/manifest/schema/1.12.0/locale.md) ([JSON Schema](https://github.com/microsoft/winget-cli/blob/master/schemas/JSON/manifests/v1.12.0/manifest.locale.1.12.0.json)) files.
117117
118118
The example below shows many optional metadata fields and multiple locales. Note the default locale has more requirements than additional locales. In the [show command](../winget/show.md), any required fields that aren't provided for additional locales will display fields from the default locale.
119119
@@ -126,7 +126,7 @@ PackageIdentifier: "Microsoft.WindowsTerminal"
126126
PackageVersion: "1.6.10571.0"
127127
DefaultLocale: "en-US"
128128
ManifestType: "version"
129-
ManifestVersion: "1.6.0"
129+
ManifestVersion: "1.12.0"
130130
```
131131
132132
#### [Default locale file example](#tab/default-locale-example/)
@@ -159,7 +159,7 @@ Tags:
159159
- "ps"
160160
- "terminal"
161161
ManifestType: "defaultLocale"
162-
ManifestVersion: "1.6.0"
162+
ManifestVersion: "1.12.0"
163163
```
164164
165165
#### [Additional locale file example](#tab/additional-locale-example/)
@@ -173,7 +173,7 @@ PackageLocale: "fr-FR"
173173
Publisher: "Microsoft"
174174
ShortDescription: "Le nouveau terminal Windows, une expérience de ligne de commande à onglets pour Windows."
175175
ManifestType: "locale"
176-
ManifestVersion: "1.6.0"
176+
ManifestVersion: "1.12.0"
177177
```
178178
179179
#### [Installer file example](#tab/installer-example/)
@@ -204,7 +204,7 @@ Installers:
204204
InstallerSha256: 092aa89b1881e058d31b1a8d88f31bb298b5810afbba25c5cb341cfa4904d843
205205
SignatureSha256: e53f48473621390c8243ada6345826af7c713cf1f4bbbf0d030599d1e4c175ee
206206
ManifestType: "installer"
207-
ManifestVersion: "1.6.0"
207+
ManifestVersion: "1.12.0"
208208
```
209209
210210
* * *

hub/package-manager/winget/index.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Use WinGet to install and manage applications
33
description: The WinGet command line tool enables developers to discover, install, upgrade, remove and configure applications on Windows computers.
4-
ms.date: 09/15/2025
4+
ms.date: 03/24/2026
55
ms.topic: overview
66
---
77

@@ -69,13 +69,13 @@ Some users have reported [issues](https://github.com/microsoft/winget-cli/issues
6969

7070
### Commands
7171

72-
The current preview of the **WinGet** tool supports the following commands.
72+
The current version of the **WinGet** tool supports the following commands.
7373

7474
| Command | Description |
7575
|---------|-------------|
7676
| [install](install.md) | Installs the specified application. |
7777
| [show](show.md) | Displays details for the specified application. |
78-
| [source](source.md) | Adds, removes, and updates the Windows Package Manager repositories accessed by **WinGet**. |
78+
| [source](source.md) | Adds, edits, removes, and updates the Windows Package Manager repositories accessed by **WinGet**. |
7979
| [search](search.md) | Searches for an application. |
8080
| [list](list.md) | Display installed packages. |
8181
| [upgrade](upgrade.md) | Upgrades the given specified application. |
@@ -123,6 +123,7 @@ The **WinGet** tool supports the following options.
123123
* MSIX
124124
* BURN
125125
* PORTABLE
126+
* FONT
126127

127128
## Scripting WinGet
128129

hub/package-manager/winget/list.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: list Command
33
description: Displays the list of listed apps and if an update is available.
4-
ms.date: 07/15/2025
4+
ms.date: 03/24/2026
55
ms.topic: overview
66
---
77

@@ -60,6 +60,7 @@ The options allow you to customize the list experience to meet your needs.
6060
| **--upgrade-available** | Lists only packages which have an upgrade available. |
6161
| **-u, --unknown, --include-unknown** | Lists packages even if their current version cannot be determined. |
6262
| **--pinned, --include-pinned** | Lists packages even if they have a pin that prevents upgrades by WinGet. |
63+
| **--details** | Displays detailed, `show`-like output for each matched package instead of a table view. |
6364
| **-?, --help** | Get additional help on this command. |
6465
| **--wait** | Prompts the user to press any key before exiting. |
6566
| **--logs,--open-logs** | Open the default logs location. |

hub/package-manager/winget/settings.md

Lines changed: 87 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: settings command
33
description: Provides customizations for the Windows Package Manager.
4-
ms.date: 07/08/2025
4+
ms.date: 03/24/2026
55
ms.topic: article
66
---
77

@@ -73,7 +73,7 @@ We have also defined a schema for the settings file. This allows you to use TAB
7373

7474
## Updating settings
7575

76-
The following settings are available for the 1.11 release of the Windows Package Manager.
76+
The following settings are available for the 1.12 release of the Windows Package Manager.
7777

7878
### source settings
7979

@@ -119,7 +119,7 @@ Color of the progress bar that WinGet displays when not specified by arguments.
119119

120120
Replaces some known folder paths with their respective environment variables.
121121

122-
#### enableSizels
122+
#### enableSixels
123123

124124
Enables output of sixel images in certain contexts.
125125

@@ -144,6 +144,39 @@ The following logging levels are available. Defaults to `info` if the value is n
144144
- error
145145
- critical
146146

147+
#### channels
148+
149+
The `channels` setting restricts logging output to specific log channels. Special values `default` (the default set of channels) and `all` (all channels) are also accepted. Invalid values are ignored.
150+
151+
```json
152+
"logging": {
153+
"channels": ["default"]
154+
}
155+
```
156+
157+
#### file
158+
159+
The `file` settings control automatic cleanup of log files in the default log directory. Cleanup runs at the start of each WinGet process and applies only to the default log location.
160+
161+
| Setting | Description | Default |
162+
|---------|-------------|---------|
163+
| `ageLimitInDays` | Maximum age in days of files in the log directory; older files are deleted. Set to `0` to disable. | 7 |
164+
| `totalSizeLimitInMB` | Maximum total size in megabytes of all files in the log directory; the oldest files are deleted first. Set to `0` to disable. | 128 |
165+
| `countLimit` | Maximum number of files in the log directory; the oldest files are deleted first. Set to `0` to disable. | 0 (disabled) |
166+
| `individualSizeLimitInMB` | Maximum size in megabytes of a single log file. If a file would exceed this limit, logs wrap. Set to `0` to disable. | 16 |
167+
168+
```json
169+
"logging": {
170+
"level": "verbose",
171+
"file": {
172+
"ageLimitInDays": 7,
173+
"totalSizeLimitInMB": 128,
174+
"countLimit": 0,
175+
"individualSizeLimitInMB": 16
176+
}
177+
}
178+
```
179+
147180
### preferences and requirements settings
148181

149182
Some of the settings are duplicated under `preferences` and `requirements`.
@@ -336,3 +369,54 @@ The `Interactivity` setting controls whether interactive prompts are shown by th
336369
### Enabling experimental features
337370

338371
To discover which experimental features are available, go to [https://aka.ms/winget-settings](https://aka.ms/winget-settings) where you can see the experimental features available to you.
372+
373+
The `experimentalFeatures` settings involve the configuration of these "experimental" features. Individual features can be enabled under this node:
374+
375+
```json
376+
"experimentalFeatures": {
377+
"directMSI": true,
378+
"resume": true
379+
}
380+
```
381+
382+
#### directMSI
383+
384+
This feature enables the Windows Package Manager to directly install MSI packages with the MSI APIs rather than through msiexec. Note that when silent installation is used this is already in effect, as MSI packages that require elevation will fail in that scenario without it.
385+
386+
```json
387+
"experimentalFeatures": {
388+
"directMSI": true
389+
}
390+
```
391+
392+
#### resume
393+
394+
This feature enables support for some commands to resume after a reboot.
395+
396+
```json
397+
"experimentalFeatures": {
398+
"resume": true
399+
}
400+
```
401+
402+
#### fonts
403+
404+
This feature enables support for fonts via `winget settings`. The `winget font list` command will list installed font families and the number of installed font faces.
405+
406+
```json
407+
"experimentalFeatures": {
408+
"fonts": true
409+
}
410+
```
411+
412+
#### sourcePriority
413+
414+
This feature enables sources to have a priority value assigned. Sources with a higher priority will appear earlier in search results and will be selected for installing new packages when multiple sources have a matching package.
415+
416+
Note that search result ordering is dependent on several factors, and source priority is the lowest field currently (match quality and field are more important).
417+
418+
```json
419+
"experimentalFeatures": {
420+
"sourcePriority": true
421+
}
422+
```

hub/package-manager/winget/source.md

Lines changed: 54 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
---
22
title: The WinGet source command
33
description: Use the WinGet source command and subcommands to list and manage the sources WinGet accesses.
4-
ms.date: 07/08/2025
4+
ms.date: 03/24/2026
55
ms.topic: reference
66
ms.custom: kr2b-contr-experiment
77
---
88

99
# The WinGet source command
1010

11-
The [WinGet](index.md) **source** command allows you to manage sources. With the **source** command, you can **add**, **list**, **update**, **remove**, **reset**, or **export** WinGet sources.
11+
The [WinGet](index.md) **source** command allows you to manage sources. With the **source** command, you can **add**, **edit**, **list**, **update**, **remove**, **reset**, or **export** WinGet sources.
1212

1313
A WinGet source provides the data for you to discover and install applications. Only use secure, trusted sources.
1414

@@ -33,6 +33,7 @@ The following arguments are available.
3333
| Sub-Command | Description |
3434
|--------------|-------------|
3535
| **add** | Adds a new source. |
36+
| **edit** | Edits an existing source. |
3637
| **list** | Lists current sources. |
3738
| **update** | Updates current sources. |
3839
| **remove** | Removes current sources. |
@@ -83,7 +84,7 @@ The following options are available.
8384
| **--trust-level** | Trust level of the source (none or trusted). |
8485
| **--header** | Optional Windows-Package-Manager REST source HTTP header. |
8586
| **--accept-source-agreements** | Used to accept the source license agreement, and avoid the prompt. |
86-
| **--explicit** | |
87+
| **--explicit** | Marks the source as explicit, requiring commands to directly target it using `--source`. |
8788
| **-?, --help** | Get additional help on this command. |
8889
| **--wait** | Prompts the user to press any key before exiting. |
8990
| **--logs,--open-logs** | Open the default logs location. |
@@ -104,6 +105,56 @@ The **add** subcommand supports the optional **type** parameter, which tells the
104105
| **Microsoft.PreIndexed.Package** | The default source type. |
105106
| **Microsoft.Rest** | A Microsoft REST API source. |
106107

108+
### edit
109+
110+
The **edit** subcommand modifies an existing source's configuration. The primary use is to toggle whether a source is **explicit** or **implicit**. When a source is explicit, WinGet commands must directly target it using `--source`. When a source is implicit, it is included in all commands automatically.
111+
112+
Usage:
113+
114+
```cmd
115+
winget source edit [-n] <name> [<options>]
116+
```
117+
118+
#### Arguments
119+
120+
The following arguments are available.
121+
122+
| Argument | Description |
123+
|--------------|-------------|
124+
| **-n, --name** | The name of the source to edit. |
125+
126+
#### Options
127+
128+
The following options are available.
129+
130+
| Option | Description |
131+
|-------------|-------------|
132+
| **--explicit** | Sets the source as explicit (`true`) or implicit (`false`). When explicit, commands must directly target the source using `--source`. |
133+
| **--header** | Optional Windows-Package-Manager REST source HTTP header. |
134+
| **--accept-source-agreements** | Used to accept the source license agreement, and avoid the prompt. |
135+
| **-?, --help** | Get additional help on this command. |
136+
| **--wait** | Prompts the user to press any key before exiting. |
137+
| **--logs,--open-logs** | Open the default logs location. |
138+
| **--verbose, --verbose-logs** | Used to override the logging setting and create a verbose log. |
139+
| **--nowarn,--ignore-warnings** | Suppresses warning outputs. |
140+
| **--disable-interactivity** | Disable interactive prompts. |
141+
| **--proxy** | Set a proxy to use for this execution. |
142+
| **--no-proxy** | Disable the use of proxy for this execution. |
143+
144+
#### Example
145+
146+
The **winget-font** source is explicit by default, meaning commands must target it directly using `--source winget-font`. To reset it to the default (implicit) state so that it is included in all WinGet commands automatically, run:
147+
148+
```cmd
149+
winget source edit winget-font --explicit false
150+
```
151+
152+
To set a source as explicit:
153+
154+
```cmd
155+
winget source edit winget-font --explicit true
156+
```
157+
107158
### list
108159

109160
The **list** subcommand enumerates the currently enabled sources, or provides details on a specific source.

hub/package-manager/winget/troubleshooting.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Debugging and troubleshooting issues with WinGet
33
description: Provides information on logging and WinGet diagnostics.
4-
ms.date: 07/15/2025
4+
ms.date: 03/24/2026
55
ms.topic: troubleshooting-general
66
---
77

@@ -19,7 +19,7 @@ When WinGet commands are failing, sometimes it is necessary to look at the log f
1919

2020
## WinGet Logs
2121

22-
Windows Package Manager by default creates log files when executing commands. These logs contain information that can aid in debugging issues with WinGet. There is no maximum size for the log files. They are typically only a few KB in size. When the number of log files in the directory exceeds 100, the oldest log files will begin being deleted. There is no time-based removal of logs and these settings are not configurable. If you have reached the 100 file log capacity, just move any WinGet logs that you wish to preserve into a different directory.
22+
Windows Package Manager by default creates log files when executing commands. These logs contain information that can aid in debugging issues with WinGet. Log file cleanup behavior is configurable via the [logging settings](./settings.md#logging-settings) in your settings file. By default, log files older than 7 days or exceeding 128 MB total are automatically removed, and individual log files wrap at 16 MB. Use the `logging.file` settings to adjust these limits.
2323

2424
Use the command [`winget --info`](./info.md) to find the directory path to your WinGet log files. The default path for WinGet log files is:
2525

0 commit comments

Comments
 (0)