На прошлой неделе я внес в менеджер расширений Firefox некоторые важные изменения. Эти изменения привели почти к полной перестройке менеджера расширений и привнесли в него следующие возможности (вкратце):
* Для разработчиков: Теперь ваши расширения не обязаны находиться в папке профиля или папке Extensions программной папки Firefox. Это сделает разработку расширений проще, так как вы можете разместить исходный код расширений в другом месте, используя неупакованный chrome (вместо файлов .jar), и поместить в папку "extensions" в профиле файл именем которого является {GUID} вашего расширения. В этом файле нужно указать путь к папке в которой расположено ваше расширение.
* Для пользователей: Вы можете устанавливать расширения просто помещая их файлы XPI в профиль или в папку Extensions программной папки Firefox.
* Для разработчиков: вы можете устанавливать расширение распаковывая его XPI файл в папку именем которой является {GUID} расширения, и помещая её в профиль или в папку Extensions программной папки Firefox.
* Для разработчиков: Еще до выхода 1.1 (не сейчас, но скоро) вы сможете устанавливать расширения установив ключ в реестре.
* Для пользователей и разработчиков: Вы сможете удалить расширение просто удалив его папку из профиля или из папки Extensions программной папки Firefox или удалив текстовый файл со ссылкой на него.
* Для разработчиков: Приложения XULRunner смогут указывать специальные местоположения из которых в них будут ставиться расширения вдобавок к папкам профиля и программной папке.
* Для разработчиков: Улучшенное отслеживание установки и обновления расширений.
* Для пользователей: Перемещение расширений вверх/вниз теперь работает нормально.
Эта новая архитектура отслеживания установки расширений - большой шаг вперед по сравнению с архитектурой используемой в Firefox 1.0. Она позволит создавать множество новых интересных вещей, делает процесс сборки и релиза расширений более эффективным, установку расширений проще и позволяет системе расширений легче отслеживать то, что происходит с другими компонентами браузера.
Я хочу выразить большую благодарность Benjamin Smedberg и Darin Fisher за быстрое и качественное review патча в 5600 строк и помощь в его быстром вносе в код Deer Park Alpha.