Uranium
Application Framework
UM.VersionUpgradeManager.VersionUpgradeManager Class Reference

Public Member Functions

def __init__
 
def registerIgnoredFile
 
def getStoragePaths
 
def setCurrentVersions
 
def registerCurrentVersion
 
def upgrade (self)
 
def upgradeExtraFile
 
def getFileVersion
 
def updateFilesData
 
def getInstance (cls, args, kwargs)
 

Detailed Description

Regulates the upgrading of configuration from one application version to the
next.

The process of upgrading will take a look at all profiles, preferences and
machine instances and check their version numbers. If they are older than
the current version number of their respective type of file, an upgrade
route will be planned for it in order to upgrade the file to the current
version in as few conversions as possible.

To this end, the upgrade manager will maintain the shortest routes to the
current version for each of the types of profiles and each old version it
encounters. Once a shortest route is found, it is cached and can be re-used
for all nodes along this route. This minimises the extra start-up time
required for the conversions.

Old versions of the configuration are not deleted, but put in a folder next
to the current (upgraded) versions, where they are never loaded again unless
the user manually retrieves the files.

Member Function Documentation

◆ upgrade()

def UM.VersionUpgradeManager.VersionUpgradeManager.upgrade (   self,
  bool 
)
Performs the version upgrades of all configuration files to the most
recent version.

The upgrade plug-ins must all be loaded at this point, or no upgrades
can be performed.

:return: True if anything was upgraded, or False if it was already up to date.

The documentation for this class was generated from the following file: