WinGet Configuration File Support #33818
Labels
new package manager
New package manager support
priority-3-medium
Default priority, "should be done" but isn't prioritised ahead of others
type:feature
Feature (new functionality)
New package manager questionnaire
Did you read our documentation on adding a package manager?
Basics
What's the name of the package manager?
Windows Package Manager (i.e. WinGet)
What language(s) does this package manager support?
Manages Windows packages and system settings.
How popular is this package manager?
Windows built-in.
Does this language have other (competing?) package managers?
Competing package managers:
What are the big selling points for this package manager?
Detecting package files
What kind of package files, and names, does this package manager use?
*.dsc.yaml
files.Which
fileMatch
pattern(s) should Renovate use?^*\\.dsc\\.yaml$
References:
configuration.dsc.yaml
config-file-name.dsc.yaml
Do many users need to extend the
fileMatch
pattern for custom file names?Is the
fileMatch
pattern going to get many "false hits" for files that have nothing to do with package management?Unlikely due to the extra
.dsc
.Vanilla PowerShell DSC configuration files (not WinGet configuration files) use
*.dsc.config.yaml
instead (docs).Parsing and Extraction
Can package files have "local" links to each other that need to be resolved?
No.
Package file parsing method
The package files should be:
Which format/syntax does the package file use?
How should we parse the package files?
Does the package file have different "types" of dependencies?
List all the sources/syntaxes of dependencies that can be extracted
Microsoft.WinGet.DSC/WinGetPackage
resource statements.For example:
configuration.dsc.yaml
Describe which types of dependencies above are supported and which will be implemented in future
Microsoft.WinGet.DSC/WinGetPackage
resource only.Versioning
What versioning scheme does the package file(s) use?
Semantic versioning (semver).
Does this versioning scheme support range constraints, like
^1.0.0
or1.x
?^1.0.0
or1.x
), provide details.Lookup
Is a new datasource required?
Data sources:
Will users want (or need to) set a custom host or custom registry for Renovate's lookup?
The
Microsoft.WinGet.DSC/WinGetPackage
resource has asource
option for indicating the package source, withwinget
referring to the winget-pkgs registry.Where can Renovate find the custom host/registry?
Are there any constraints in the package files that Renovate should use in the lookup procedure?
v3.x
), provide details.There doesn't seem to be a minimum OS enforcement in WinGet packages.
Will users need the ability to configure language or other constraints using Renovate config?
Artifacts
Does the package manager use a lock file or checksum file?
Is the locksum or checksum mandatory?
If lockfiles or checksums are used: what tool and exact commands should Renovate use to update one (or more) package versions in a dependency file?
N/A
Package manager cache
Does the package manager use a cache?
If the package manager uses a cache, how can Renovate control the cache?
Should Renovate keep a cache?
Generating a lockfile from scratch
Renovate can perform "lock file maintenance" by getting the package manager to generate a lockfile from scratch.
Can the package manager generate a lockfile from scratch?
Other
What else should we know about this package manager?
N/A.
The text was updated successfully, but these errors were encountered: