Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Winget v1.4.3531 passes /SILENT to Inno installers when using --silent, should use /VERYSILENT #2793

Closed
o-l-a-v opened this issue Dec 21, 2022 · 3 comments
Labels
Issue-Bug It either shouldn't be doing this or needs an investigation.
Milestone

Comments

@o-l-a-v
Copy link

o-l-a-v commented Dec 21, 2022

Brief description of your issue

Winget v1.4.3531 passes /SILENT to Inno installers instead of /VERYSILENT when using --silent.

This behavior is not present in the latest stable from Microsoft Store, v1.3.2691, which passes /VERYSILENT as it should.

Related issues that got me here

Resources

Steps to reproduce

Command:

  • winget install --exact --silent --scope user --id JanDeDobbeleer.OhMyPosh

v1.3.2691 / latest in App Installer from Microsoft Store:

  • No progress is shown, winget logs says /VERYSILENT was passed.

v1.4.3531

  • Progress is shown, logs says /SILENT was passed.

Expected behavior

/VERYSILENT should be used to be --silent.

Actual behavior

/SILENT was used, which is not --silent.

Environment

v1.3.2691 installed with Microsoft Store app App Installer

Windows Package Manager v1.3.2691
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.19045.2364
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.2691.0

v1.4.3531 extracted from msix with 7-zip

Windows Package Manager v1.4.0
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.19045.2364
System Architecture: X64
@ghost ghost added the Needs-Triage Issue need to be triaged label Dec 21, 2022
@o-l-a-v o-l-a-v changed the title Winget v1.4.3531 passes /SILENT to Inno installers when using --silent instead of /VERYSILENT Winget v1.4.3531 passes /SILENT to Inno installers when using --silent, should use /VERYSILENT Dec 21, 2022
@denelon denelon added Issue-Bug It either shouldn't be doing this or needs an investigation. and removed Needs-Triage Issue need to be triaged labels Dec 21, 2022
@florelis
Copy link
Member

I just tried doing that with the same v1.4.3531 and it did use /VERYSILENT.

Log snippet:

2022-12-21 15:10:43.160 [CORE] WinGet, version [1.4.3531], activity [{175C57E7-D866-4BAF-83D3-80629FD20E3A}]
...
2022-12-21 15:10:43.167 [CLI ] WinGet invoked with arguments: 'install' '--exact' '--silent' '--scope' 'user' '--id' 'JanDeDobbeleer.OhMyPosh'
...
2022-12-21 15:10:45.637 [CLI ] Installer args: /VERYSILENT /NORESTART /LOG="C:\Users...

I went to check the code that adds /VERYSILENT for silent mode in Inno installers, and it hasn't changed recently

{InstallerSwitchType::Silent, ManifestInstaller::string_t("/VERYSILENT /NORESTART")},

/SILENT is still used for SilentWithProgress, which is the default for winget, so maybe it's a manifestation of that same bug with upgrade --all --silent?

@o-l-a-v
Copy link
Author

o-l-a-v commented Dec 21, 2022

@florelis

Hmm, interesting. I only tried v1.4 with --all --silent. Strange that the 1st package got installed with progress, and not the 2nd one.

I tried to quickly gather info and make sense of this strange behavior before going to bed, my investigation was obviously a bit too hasty.

@florelis
Copy link
Member

I had a hunch on what the cause was and it seemed easy enough, so I went ahead and submitted a fix :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Issue-Bug It either shouldn't be doing this or needs an investigation.
Projects
None yet
Development

No branches or pull requests

3 participants