-
Notifications
You must be signed in to change notification settings - Fork 929
Description
Checklist
- I have verified this is the correct repository for opening this issue.
- I have verified no other issues exist related to my request.
Is Your Feature Request Related To A Problem? Please describe.
When doing a choco install
it is possible to describe a set of packages to install, and what version of the package to install.
To upgrade all of those installed packages, it is possible to run the choco upgrade all
command, which would upgrade all the packages to the latest available packages. However, if you wanted to install specific packages to specific versions, it is not possible. For example, if you were to try something like:
choco upgrade all --version 1.2.3
Then it would attempt to install version 1.2.3 for all the currently installed packages.
By allowing someone to do:
choco upgrade packages.config
It would be possible to craft a packages.config file that specified what version of each package should be upgraded to. If the package was found to not be installed, it would simply install the specified package version (whilst taking into account the skippackageupgradeswhennotinstalled feature.
Describe The Solution. Why is it needed?
When doing the choco upgrade
command, Chocolatey CLI should take as input the packages.config file, and then enumerate through each package contained within it, and upgrade to the specified version. It should also take into account any additional settings that have been configured in the packages.config file, i.e. package parameters, checksums, proxy settings, etc.
Enumerating through each item in the packages.config file, is really the same operation as looping through all the installed packages when doing a choco upgrade all
, just using a different source of information for the packages to enumerate.
Additional Context
This is a follow up issue for this issue where full package management via the packages.config file was started. This issue extends that functionality by making it possible to use a packages.config file during the choco upgrade
command.