Core Sublime packages (the ones that it ships with) only update when Sublime gets bumped to a new version; Package Control is responsible for upgrading packages that you asked it to install, and packages that you manually installed never get updated unless you do it yourself.
Primarily you’re probably concerned with Package Control updates here; by default it’s configured to automatically try to update packages every time Sublime starts, but only once per hour (so if you restart 5 times in a hour, it will only happen at most once).
The associated configuration for this is in the Package Control settings:
// If packages should be automatically upgraded when ST starts
"auto_upgrade": true,
// If missing packages should be automatically installed when ST starts
"install_missing": true,
// If a package was installed by Package Control (has a
// package-metadata.json file) but is not in installed_packages, remove it
// based upon the assumption that it was removed on another machine and
// the Package Control.sublime-settings file was synced to this machine.
"remove_orphaned": true,
// The minimum frequency in hours in which to check for automatic upgrades,
// setting this to 0 will always check for automatic upgrades
"auto_upgrade_frequency": 1,
// Packages to not auto upgrade
"auto_upgrade_ignore": [],
As seen in the comments, auto upgrading is turned on by default, but will only occur once per hour. The list of packages to ignore for upgrade purposes is empty so everything will upgrade whenever a check is made.
In addition, missing packages (packages which are in the installed_packages
setting) which aren’t currently installed will be installed, and any orphaned packages (packages which are installed but no longer in the installed_packages
setting) will be removed. These are the settings that allow you to synchronize your package control settings across machines and have it keep your list of packages up to date.
You can also manually upgrade a package that Package Control installed by using the Package Control: Upgrade Package
command from the command palette. That will show you packages that have updates which haven’t been automatically updated yet (assuming you have that turned on). So for example if package updates happen while you’re running Sublime, you could use that to upgrade the package manually, or within the time limit you specified.
All of this only applies to packages that Package Control installed, which have a metadata file inside of them put there by package control at install time (it’s mentioned in the comments above). So you don’t have to worry about Package Control removing or updating packages that it didn’t install, though if you try to copy a sublime-package
file that it installed from one machine to another without updating the appropriate settings, Package Control will notice the file and remove the package as an orphan.
There’s generally a delay of an hour or two between when a package author updates a package and Package Control is able to see it (due to a web crawler on the package control website having to notice that the package updated) so in this case as noted by Randy above, there was a delay between when the mentioned update happened and Package Control on your machine would first notice that it’s available for update.
There’s a bit of a demonstration/explanation of this in a video I made on Package Control as well.