Add-ons devs heads up: we are killing old bookmarks GUIDS.

If you don't manage an add-on that is using Places bookmarks GUIDs, you can stop reading here.

As part of the performances improvements efforts, in Firefox 4 we replaced the old UUID-style GUIDs annotations on bookmarks with new 12-chars GUIDs that are directly stored in a guid column of the bookmarks table.

This has been done for a lot of reasons: memory consumption, disk space, performances

The following APIs in nsINavBookmarksService have also been marked as deprecated:

  • nsINavBookmarksService::getItemGUID
  • nsINavBookmarksService::setItemGUID
  • nsINavBookmarksService::getItemIdForGUID

Unfortunately we found that some add-ons, even quite famous ones, are still using some of these APIs and the old GUIDs. We didn't get any answer to notifications we sent them, as of today. This is blocking possible improvements for all of our users, so we finally have to proceed with the removal.

Starting from Firefox 14 these APIs will be removed and all the existing GUIDs will be deleted from the database (any new instance of them will also be removed at regular intervals).

Since we understand some of these APIs don't yet have a replacement (though nsINavBookmarkObserver provides the new GUIDs and we are working on a new asynchronous bookmarking API), we are asking for your feedback to make new asynchronous APIs that can satisfy the GUID needs of your add-on. You can leave your feedback in the removal bug.

The remaining time before Firefox 14 is released should be enough to plan an eventual users migration or a refactoring of your add-on, so we hope this solution may be satisfying for everyone.

MaK Giovedì 16 Febbraio 2012 at 10:28 am | | Mozilla-EN