Each package needs to specify its own dependency requirement. (packages and compatible versions). Should this be defined in the package or should the package manager have this information?
Who should do automated compatibility checks? The project while "building" or the CI-job after building the project?
Should the package only hold a list with dependencies and the CI-job would find the list of compatible versions? This has the advantage that the repository itself must not be changed after building.
If the responsibiliy of compatibility checking lies with the CI-job, we could remove the abi/api-checker targets from the CPFCMake.
If the package-manager is the instance that knows about package compatiblities, we need that list for each package manager.
If the build checks for compatibility, it needs some generic package manager interface to get older package versions.
Random Questions: