On Sun, 03 Apr 2005 02:04:44 -1000, Warren Togami wrote:
MODULE_COMPAT was designed to allow for distinctions of more than just the version (which is all python-abi does). This is necessary for perl and not python because it is possible to rebuild perl in different ways that breaks ABI compat, while python is almost entirely noarch. This happened with the perl package IIRC in the RH8-RH9-RHEL3 timeframe.
Since then however perl has not broken ABI (?), so it seems that we have this seemingly overcomplicated construct. But if we do break ABI again like in FC5 because we recompile the same version of FC4 perl with some new flag, MODULE_COMPAT can enforce exact deps and prevent incompatible FC4 packages from being installed on FC5.
Chip put a lot of thought into designing this.
I've thought the perl(:WITH_FOO) virtual provides define the Perl ABI requirements and not perl(:MODULE_COMPAT_...).