nsIBrowserSearchEngine interface change in latest Firefox 24 beta

There is a longer Firefox 24 add-on compatibility blog post coming up, but this change is particularly important because it was introduced during the beta cycle and could lead to stability problems for binary add-ons that use this interface.

In bug 493051, the nsIBrowserSearchEngine interface was changed, specifically the signature of the addEngine function. However, the interface UUID was not updated along with it. This is now corrected in bug 907893, fixed on the latest beta. This means that if you use nsIBrowserSearchEngine from a binary XPCOM component and you built it against one of the early betas, it will not work correctly with the latest beta or the final release version. The solution is to rebuild the component using the latest beta.

We avoid as much as possible to make compatibility-breaking changes during the beta cycle, but they can sometimes slip through the cracks. We’re working on improving our analysis tools so we can catch accidents like this one before they become a problem.