Upgrades a package or a list of packages. Some may prefer to use cup
as a shortcut for [[choco upgrade
|Commandsupgrade]]. If you do not have a package
installed, upgrade will install it.
NOTE: 100% compatible with older Chocolatey client (0.9.8.x and below)
with options and switches. Add -y
for previous behavior with no
prompt. In most cases you can still pass options and switches with one
dash (-
). For more details, see [[how to pass arguments|CommandsReference#how-to-pass-options--switches]] (choco -?
).
choco upgrade <pkg|all> [<pkg2> <pkgN>] [<options/switches>]
cup <pkg|all> [<pkg2> <pkgN>] [<options/switches>]
NOTE: all
is a special package keyword that will allow you to upgrade
all currently installed packages.
Skip upgrading certain packages with [[choco pin
|Commandspin]] or with the option
--except
.
NOTE: Chocolatey Pro / Business automatically synchronizes with Programs and Features, ensuring automatically updating apps' versions (like Chrome) are up to date in Chocolatey's repository.
choco upgrade chocolatey
choco upgrade notepadplusplus googlechrome atom 7zip
choco upgrade notepadplusplus googlechrome atom 7zip -dvfy
choco upgrade git -y --params="'/GitAndUnixToolsOnPath /NoAutoCrlf'"
choco upgrade git -y --params="'/GitAndUnixToolsOnPath /NoAutoCrlf'" --install-args="'/DIR=C:\git'"
# Params are package parameters, passed to the package
# Install args are installer arguments, appended to the silentArgs
# in the package for the installer itself
choco upgrade nodejs.install --version 0.10.35
choco upgrade git -s "'https://somewhere/out/there'"
choco upgrade git -s "'https://somewhere/protected'" -u user -p pass
choco upgrade all
choco upgrade all --except="'skype,conemu'"
NOTE: See scripting in [[how to pass arguments|CommandsReference#how-to-pass-options--switches]] (choco -?
) for how to
write proper scripts and integrations.
Exit codes that normally result from running this command.
Normal:
- 0: operation was successful, no issues detected
- -1 or 1: an error has occurred
Package Exit Codes:
- 1641: success, reboot initiated
- 3010: success, reboot required
- other (not listed): likely an error has occurred
In addition to normal exit codes, packages are allowed to exit with their own codes when the feature 'usePackageExitCodes' is turned on. Uninstall command has additional valid exit codes. Available in v0.9.10+.
Reboot Exit Codes:
- 350: pending reboot detected, no action has occurred
- 1604: install suspended, incomplete
In addition to the above exit codes, you may also see reboot exit codes when the feature 'exitOnRebootDetected' is turned on. It typically requires the feature 'usePackageExitCodes' to also be turned on to work properly. Available in v0.10.12+.
NOTE: Options and switches apply to all items passed, so if you are
running a command like install that allows installing multiple
packages, and you use --version=1.0.0
, it is going to look for and
try to install version 1.0.0 of every package passed. So please split
out multiple package calls when wanting to pass specific options.
Includes [[default options/switches|CommandsReference#default-options-and-switches]] (included below for completeness).
-?, --help, -h
Prints out the help menu.
-d, --debug
Debug - Show debug messaging.
-v, --verbose
Verbose - Show verbose messaging. Very verbose messaging, avoid using
under normal circumstances.
--trace
Trace - Show trace messaging. Very, very verbose trace messaging. Avoid
except when needing super low-level .NET Framework debugging. Available
in 0.10.4+.
--nocolor, --no-color
No Color - Do not show colorization in logging output. This overrides
the feature 'logWithoutColor', set to 'False'. Available in 0.10.9+.
--acceptlicense, --accept-license
AcceptLicense - Accept license dialogs automatically. Reserved for
future use.
-y, --yes, --confirm
Confirm all prompts - Chooses affirmative answer instead of prompting.
Implies --accept-license
-f, --force
Force - force the behavior. Do not use force during normal operation -
it subverts some of the smart behavior for commands.
--noop, --whatif, --what-if
NoOp / WhatIf - Don't actually do anything.
-r, --limitoutput, --limit-output
LimitOutput - Limit the output to essential information
--timeout, --execution-timeout=VALUE
CommandExecutionTimeout (in seconds) - The time to allow a command to
finish before timing out. Overrides the default execution timeout in the
configuration of 2700 seconds. '0' for infinite starting in 0.10.4.
-c, --cache, --cachelocation, --cache-location=VALUE
CacheLocation - Location for download cache, defaults to %TEMP% or value
in chocolatey.config file.
--allowunofficial, --allow-unofficial, --allowunofficialbuild, --allow-unofficial-build
AllowUnofficialBuild - When not using the official build you must set
this flag for choco to continue.
--failstderr, --failonstderr, --fail-on-stderr, --fail-on-standard-error, --fail-on-error-output
FailOnStandardError - Fail on standard error output (stderr), typically
received when running external commands during install providers. This
overrides the feature failOnStandardError.
--use-system-powershell
UseSystemPowerShell - Execute PowerShell using an external process
instead of the built-in PowerShell host. Should only be used when
internal host is failing. Available in 0.9.10+.
--no-progress
Do Not Show Progress - Do not show download progress percentages.
Available in 0.10.4+.
--proxy=VALUE
Proxy Location - Explicit proxy location. Overrides the default proxy
location of ''. Available for config settings in 0.9.9.9+, this CLI
option available in 0.10.4+.
--proxy-user=VALUE
Proxy User Name - Explicit proxy user (optional). Requires explicity
proxy (`--proxy` or config setting). Overrides the default proxy user of
'123'. Available for config settings in 0.9.9.9+, this CLI option
available in 0.10.4+.
--proxy-password=VALUE
Proxy Password - Explicit proxy password (optional) to be used with
username. Requires explicity proxy (`--proxy` or config setting) and
user name. Overrides the default proxy password (encrypted in settings
if set). Available for config settings in 0.9.9.9+, this CLI option
available in 0.10.4+.
--proxy-bypass-list=VALUE
ProxyBypassList - Comma separated list of regex locations to bypass on
proxy. Requires explicity proxy (`--proxy` or config setting). Overrides
the default proxy bypass list of ''. Available in 0.10.4+.
--proxy-bypass-on-local
Proxy Bypass On Local - Bypass proxy for local connections. Requires
explicity proxy (`--proxy` or config setting). Overrides the default
proxy bypass on local setting of 'True'. Available in 0.10.4+.
--log-file=VALUE
Log File to output to in addition to regular loggers. Available in 0.1-
0.8+.
-s, --source=VALUE
Source - The source to find the package(s) to install. Special sources
include: ruby, webpi, cygwin, windowsfeatures, and python. To specify
more than one source, pass it with a semi-colon separating the values (-
e.g. "'source1;source2'"). Defaults to default feeds.
--version=VALUE
Version - A specific version to install. Defaults to unspecified.
--pre, --prerelease
Prerelease - Include Prereleases? Defaults to false.
--x86, --forcex86
ForceX86 - Force x86 (32bit) installation on 64 bit systems. Defaults to
false.
--ia, --installargs, --installarguments, --install-arguments=VALUE
InstallArguments - Install Arguments to pass to the native installer in
the package. Defaults to unspecified.
-o, --override, --overrideargs, --overridearguments, --override-arguments
OverrideArguments - Should install arguments be used exclusively without
appending to current package passed arguments? Defaults to false.
--notsilent, --not-silent
NotSilent - Do not install this silently. Defaults to false.
--params, --parameters, --pkgparameters, --packageparameters, --package-parameters=VALUE
PackageParameters - Parameters to pass to the package. Defaults to
unspecified.
--argsglobal, --args-global, --installargsglobal, --install-args-global, --applyargstodependencies, --apply-args-to-dependencies, --apply-install-arguments-to-dependencies
Apply Install Arguments To Dependencies - Should install arguments be
applied to dependent packages? Defaults to false.
--paramsglobal, --params-global, --packageparametersglobal, --package-parameters-global, --applyparamstodependencies, --apply-params-to-dependencies, --apply-package-parameters-to-dependencies
Apply Package Parameters To Dependencies - Should package parameters be
applied to dependent packages? Defaults to false.
--allowdowngrade, --allow-downgrade
AllowDowngrade - Should an attempt at downgrading be allowed? Defaults
to false.
-m, --sxs, --sidebyside, --side-by-side, --allowmultiple, --allow-multiple, --allowmultipleversions, --allow-multiple-versions
AllowMultipleVersions - Should multiple versions of a package be
installed? Defaults to false.
-i, --ignoredependencies, --ignore-dependencies
IgnoreDependencies - Ignore dependencies when upgrading package(s).
Defaults to false.
-n, --skippowershell, --skip-powershell, --skipscripts, --skip-scripts, --skip-automation-scripts
Skip Powershell - Do not run chocolateyInstall.ps1. Defaults to false.
--failonunfound, --fail-on-unfound
Fail On Unfound Packages - If a package is not found in sources
specified, fail instead of warn.
--ignore-unfound
Ignore Unfound Packages - Ignore packages that are not found on the
sources used (or the defaults). Overrides the default feature
'ignoreUnfoundPackagesOnUpgradeOutdated' set to 'False'. Available in -
0.10.9+.
--failonnotinstalled, --fail-on-not-installed
Fail On Non-installed Packages - If a package is not already installed,
fail instead of installing.
-u, --user=VALUE
User - used with authenticated feeds. Defaults to empty.
-p, --password=VALUE
Password - the user's password to the source. Defaults to empty.
--cert=VALUE
Client certificate - PFX pathname for an x509 authenticated feeds.
Defaults to empty. Available in 0.9.10+.
--cp, --certpassword=VALUE
Certificate Password - the client certificate's password to the source.
Defaults to empty. Available in 0.9.10+.
--ignorechecksum, --ignore-checksum, --ignorechecksums, --ignore-checksums
IgnoreChecksums - Ignore checksums provided by the package. Overrides
the default feature 'checksumFiles' set to 'True'. Available in 0.9.9.9+.
--allowemptychecksum, --allowemptychecksums, --allow-empty-checksums
Allow Empty Checksums - Allow packages to have empty/missing checksums
for downloaded resources from non-secure locations (HTTP, FTP). Use this
switch is not recommended if using sources that download resources from
the internet. Overrides the default feature 'allowEmptyChecksums' set to
'False'. Available in 0.10.0+.
--allowemptychecksumsecure, --allowemptychecksumssecure, --allow-empty-checksums-secure
Allow Empty Checksums Secure - Allow packages to have empty checksums
for downloaded resources from secure locations (HTTPS). Overrides the
default feature 'allowEmptyChecksumsSecure' set to 'True'. Available in
0.10.0+.
--requirechecksum, --requirechecksums, --require-checksums
Require Checksums - Requires packages to have checksums for downloaded
resources (both non-secure and secure). Overrides the default feature
'allowEmptyChecksums' set to 'False' and 'allowEmptyChecksumsSecure' set
to 'True'. Available in 0.10.0+.
--checksum, --downloadchecksum, --download-checksum=VALUE
Download Checksum - a user provided checksum for downloaded resources
for the package. Overrides the package checksum (if it has one).
Defaults to empty. Available in 0.10.0+.
--checksum64, --checksumx64, --downloadchecksumx64, --download-checksum-x64=VALUE
Download Checksum 64bit - a user provided checksum for 64bit downloaded
resources for the package. Overrides the package 64-bit checksum (if it
has one). Defaults to same as Download Checksum. Available in 0.10.0+.
--checksumtype, --checksum-type, --downloadchecksumtype, --download-checksum-type=VALUE
Download Checksum Type - a user provided checksum type. Overrides the
package checksum type (if it has one). Used in conjunction with Download
Checksum. Available values are 'md5', 'sha1', 'sha256' or 'sha512'.
Defaults to 'md5'. Available in 0.10.0+.
--checksumtype64, --checksumtypex64, --checksum-type-x64, --downloadchecksumtypex64, --download-checksum-type-x64=VALUE
Download Checksum Type 64bit - a user provided checksum for 64bit
downloaded resources for the package. Overrides the package 64-bit
checksum (if it has one). Used in conjunction with Download Checksum
64bit. Available values are 'md5', 'sha1', 'sha256' or 'sha512'.
Defaults to same as Download Checksum Type. Available in 0.10.0+.
--ignorepackagecodes, --ignorepackageexitcodes, --ignore-package-codes, --ignore-package-exit-codes
IgnorePackageExitCodes - Exit with a 0 for success and 1 for non-succes-
s, no matter what package scripts provide for exit codes. Overrides the
default feature 'usePackageExitCodes' set to 'True'. Available in 0.-
9.10+.
--usepackagecodes, --usepackageexitcodes, --use-package-codes, --use-package-exit-codes
UsePackageExitCodes - Package scripts can provide exit codes. Use those
for choco's exit code when non-zero (this value can come from a
dependency package). Chocolatey defines valid exit codes as 0, 1605,
1614, 1641, 3010. Overrides the default feature 'usePackageExitCodes'
set to 'True'. Available in 0.9.10+.
--except=VALUE
Except - a comma-separated list of package names that should not be
upgraded when upgrading 'all'. Defaults to empty. Available in 0.9.10+.
--stoponfirstfailure, --stop-on-first-failure, --stop-on-first-package-failure
Stop On First Package Failure - stop running install, upgrade or
uninstall on first package failure instead of continuing with others.
Overrides the default feature 'stopOnFirstPackageFailure' set to 'False-
'. Available in 0.10.4+.
--skip-if-not-installed, --only-upgrade-installed, --skip-when-not-installed
Skip Packages Not Installed - if a package is not installed, do not
install it during the upgrade process. Overrides the default feature
'skipPackageUpgradesWhenNotInstalled' set to 'False'. Available in 0.1-
0.12+.
--install-if-not-installed
Install Missing Packages When Not Installed - if a package is not
installed, install it as part of running upgrade (typically default
behavior). Overrides the default feature
'skipPackageUpgradesWhenNotInstalled' set to 'False'. Available in 0.1-
0.12+.
--exclude-pre, --exclude-prerelease, --exclude-prereleases
Exclude Prerelease - Should prerelease be ignored for upgrades? Will be
ignored if you pass `--pre`. Available in 0.10.4+.
--userememberedargs, --userememberedarguments, --userememberedoptions, --use-remembered-args, --use-remembered-arguments, --use-remembered-options
Use Remembered Options for Upgrade - use the arguments and options used
during install for upgrade. Does not override arguments being passed at
runtime. Overrides the default feature
'useRememberedArgumentsForUpgrades' set to 'False'. Available in 0.10.4+.
--ignorerememberedargs, --ignorerememberedarguments, --ignorerememberedoptions, --ignore-remembered-args, --ignore-remembered-arguments, --ignore-remembered-options
Ignore Remembered Options for Upgrade - ignore the arguments and options
used during install for upgrade. Overrides the default feature
'useRememberedArgumentsForUpgrades' set to 'False'. Available in 0.10.4+.
--exitwhenrebootdetected, --exit-when-reboot-detected
Exit When Reboot Detected - Stop running install, upgrade, or uninstall
when a reboot request is detected. Requires 'usePackageExitCodes'
feature to be turned on. Will exit with either 350 or 1604. Overrides
the default feature 'exitOnRebootDetected' set to 'False'. Available in
0.10.12+.
--ignoredetectedreboot, --ignore-detected-reboot
Ignore Detected Reboot - Ignore any detected reboots if found. Overrides
the default feature 'exitOnRebootDetected' set to 'False'. Available in
0.10.12+.
--sdc, --skipdownloadcache, --skip-download-cache
Skip Download Cache - Use the original download even if a private CDN
cache is available for a package. Overrides the default feature
'downloadCache' set to 'True'. Available in 0.9.10+. [Licensed editions](https://chocolatey.org/compare)
only. See https://chocolatey.org/docs/features-private-cdn
--dc, --downloadcache, --download-cache, --use-download-cache
Use Download Cache - Use private CDN cache if available for a package.
Overrides the default feature 'downloadCache' set to 'True'. Available
in 0.9.10+. [Licensed editions](https://chocolatey.org/compare) only. See https://chocolate-
y.org/docs/features-private-cdn
--svc, --skipvirus, --skip-virus, --skipviruscheck, --skip-virus-check
Skip Virus Check - Skip the virus check for downloaded files on this ru-
n. Overrides the default feature 'virusCheck' set to 'True'. Available
in 0.9.10+. [Licensed editions](https://chocolatey.org/compare) only. See https://chocolate-
y.org/docs/features-virus-check
--virus, --viruscheck, --virus-check
Virus Check - check downloaded files for viruses. Overrides the default
feature 'virusCheck' set to 'True'. Available in 0.9.10+. Licensed
editions only. See https://chocolatey.org/docs/features-virus-check
--viruspositivesmin, --virus-positives-minimum=VALUE
Virus Check Minimum Scan Result Positives - the minimum number of scan
result positives required to flag a package. Used when virusScannerType
is VirusTotal. Overrides the default configuration value
'virusCheckMinimumPositives' set to '5'. Available in 0.9.10+. Licensed
editions only. See https://chocolatey.org/docs/features-virus-check
--install-arguments-sensitive=VALUE
InstallArgumentsSensitive - Install Arguments to pass to the native
installer in the package that are sensitive and you do not want logged.
Defaults to unspecified. Available in 0.10.1+. [Licensed editions](https://chocolatey.org/compare) only.
--package-parameters-sensitive=VALUE
PackageParametersSensitive - Package Parameters to pass the package that
are sensitive and you do not want logged. Defaults to unspecified.
Available in 0.10.1+. [Licensed editions](https://chocolatey.org/compare) only.
--dir, --directory, --installdir, --installdirectory, --install-dir, --install-directory=VALUE
Install Directory Override - Override the default installation director-
y. Chocolatey will automatically determine the type of installer and
pass the appropriate arguments to override the install directory. The
package must use Chocolatey install helpers and be installing an
installer for software. Available in 0.9.10+. [Licensed editions](https://chocolatey.org/compare) only.
See https://chocolatey.org/docs/features-install-directory-override
--bps, --maxdownloadrate, --max-download-rate, --maxdownloadbitspersecond, --max-download-bits-per-second, --maximumdownloadbitspersecond, --maximum-download-bits-per-second=VALUE
Maximum Download Rate Bits Per Second - The maximum download rate in
bits per second. '0' or empty means no maximum. A number means that will
be the maximum download rate in bps. Defaults to config setting of '0'.
Available in [licensed editions](https://chocolatey.org/compare) v1.10+ only. See https://chocolate-
y.org/docs/features-package-throttle
--reduce, --reduce-package-size, --deflate, --deflate-package-size
Reducer Installed Package Size (Package Reducer) - Reduce size of the
nupkg file to very small and remove extracted archives and installers.
Overrides the default feature 'reduceInstalledPackageSpaceUsage' set to
'True'. [Licensed editions](https://chocolatey.org/compare) only (version 1.12.0+). See https://chocolate-
y.org/docs/features-package-reducer
--no-reduce, --no-reduce-package-size, --no-deflate, --no-deflate-package-size
Do Not Reduce Installed Package Size - Leave the nupkg and files alone
in the package. Overrides the default feature
'reduceInstalledPackageSpaceUsage' set to 'True'. [Licensed editions](https://chocolatey.org/compare) only
(version 1.12.0+). See https://chocolatey.org/docs/features-package-
reducer
--reduce-nupkg-only, --deflate-nupkg-only
Reduce Only Nupkg File Size - reduce only the size of nupkg file when
using Package Reducer. Overrides the default feature
'reduceOnlyNupkgSize' set to 'False'. [Licensed editions](https://chocolatey.org/compare) only (version -
1.12.0+). See https://chocolatey.org/docs/features-package-reducer
[[Command Reference|CommandsReference]]
NOTE: This documentation has been automatically generated from choco upgrade -h
.