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:
... under no circumstances are currently installed packages removed, or packages not already installed retrieved and installed.
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. ...
--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.
Ubuntu 18.04 provides a newer, streamlined syntax of
apt which can be used instead of
sudo apt upgrade --with-new-pkgs