subj.
OperatingSystem is initialized with a name and version. I think it make sense to pass version into a Version object used for packages so that package developers could write conditionals which include OS version like self.spec.os_version < Version('10.10') where os_version is an instance of Version object for OS.
subj.
OperatingSystemis initialized with anameandversion. I think it make sense to passversioninto aVersionobject used for packages so that package developers could write conditionals which include OS version likeself.spec.os_version < Version('10.10')whereos_versionis an instance ofVersionobject for OS.