PackageManager.InitializationState

Whether refreshLocal / refreshCache has been called or not

User local cache can get pretty large, and we want to avoid our build time being dependent on their size. However, in order to support local packages and overrides, we were scanning the whole cache prior to v1.39.0 (although attempts at fixing this behavior were made earlier). Those booleans record whether we have been semi-initialized (local packages and overrides have been loaded) or fully initialized (all caches have been scanned), the later still being required for some API (e.g. getBestPackage or getPackageIterator).

Values

ValueMeaning
none

No refresh* function has been called

partial

refreshLocal has been called

full

refreshCache (and refreshLocal) has been called

Meta