If the upgrade of an existing package would require a "new" package (e.g. not-yet-installed) to be installed, then that particular existing package will be "kept back."
According to the man apt-get, upgrade
by default does not install other not-yet-installed packages:
upgrade
... under no circumstances are currently installed packages removed, or packages not already installed retrieved and installed.
--with-new-pkgs
Allow installing new packages when used in conjunction with upgrade. This is useful if the update of a installed package requires new dependencies to be installed. Instead of holding the package back upgrade will upgrade the package and install the new dependencies. ...
so, --with-new-pkgs
needs to be added to allow inclusion of the related other packages.
sudo apt-get --with-new-pkgs upgrade
--with-new-pkgs
allows the related "not-yet-installed" packages to be installed with a Y/n interactive prompt.
Also, as an added benefit, sudo apt-get --with-new-pkgs upgrade
does NOT have side affect of causing packages to be marked as manually installed.
Update
Ubuntu 18.04 provides a newer, streamlined syntax of apt
which can be used instead of apt-get
.
sudo apt upgrade --with-new-pkgs
n
for "no" (or the equivalent of the language that Apt uses). If you're still unsure about what might happen during an Apt operation you can use the command-line options-s
/--simulate
/--just-print
/--dry-run
/--recon
/--no-act
to see what Apt would do without actually doing it.