Will Woods wrote:
In last week's QA meeting, Chris Aillon (aka caillon, our
fearless
firefox/xulrunner maintainer) stopped by to tell us what happened with
xulrunner dep breakage, and how package maintainers can help reduce /
prevent it in the future. Here's a quick summary:
There are two APIs provided by xulrunner - the stable API (gecko-devel),
and the unstable one (gecko-devel-unstable).
The stable API, as you might guess, is not expected to change. So if a
package uses the stable API, it won't have any problems when the
xulrunner package is updated. The unstable API could change at any time,
so if your app is using the unstable API it must be rebuilt *every time*
xulrunner is updated.
Packages using the stable API should have:
Requires: gecko-libs >= 1.9
BuildRequires: gecko-devel >= 1.9
Packages using the unstable API should have:
%define gecko_ver 1.9.0.1
Requires: gecko-libs = %{gecko_ver}
BuildRequires: gecko-devel-unstable = %{gecko_ver}
Maybe consider something like this to help both stable/unstable camps:
Provides: gecko-libs(1.9) = 1.9.0.1
Then "stable" folks could
Requires: gecko-libs(1.9)
and "unstable" folks
Requires: gecko-libs(1.9) = 1.9.0.1
-- Rex