The reason for this is mostly to avoid complications when versions are continuously updated: the .hi files that must be provided for hs-plugins to load the object code contain the versions of package dependencies, and thus fail to load if only a version of the API with a newer version number is available.