Am 19.06.2005 um 16:17 schrieb Avi Bryant:
On 6/18/05, Bert Freudenberg bert@impara.de wrote:
"upgrading" from a config map loads (*) all the packages in it, but only if there is not a newer version already in the system. So after updating you can be sure to have at least these versions.
How is "newer" defined? By the ancestry tree, or just by version number? Hopefully the former, ie, you have to have that version or some descendant of it.
The former, yes. A config map is just a collection of MCVersionDependencies, and a dependency's version is loaded if the "dependency isFulfilledByAncestors not" (literally from MCConfiguration>>upgrade). (*)
The version number is only used when updating the config map from a repository's file listing, to quickly determine the latest version for each package. That version is retrieved and its UUID put into the config map. When installing, the exact version specified in the config map is loaded, nothing else.
- Bert -
(*) Basically, an MCConfiguration is just the dependencies part of an MCVersion. It's the reification of that "versions without code" concept others have been using. It probably would be a good idea to unify both, or to factor out the dependencies from the versions. Is there anything planned along that direction in MC2?