Просто шучу. В Интернете всегда есть что жаловаться.
С Firefox Quantum жалоба de jour заключается в том, что некоторые расширения больше не работают. Многочисленные расширения высокого профиля, включая DownThemAll и Greasemonkey, в настоящее время не работают с Quantum. Другие, включая Firebug и ScrapBook, скорее всего, никогда не будут работать снова.
Это разочаровывает, если вы являетесь пользователем одной из этих служб, и вы можете подумать, что это несколько произвольно. Это не так. Нравится вам это или нет, Mozilla считает, что у них нет выбора, кроме как отказаться от того, что он называет «устаревшими» дополнениями, чтобы двигаться вперед. Вот почему.
Как работают устаревшие расширения Firefox
Если это пошло вам на голову, просто знайте об этом: расширения Firefox имели более или менее полную способность изменять ваш браузер, и они внесли эти изменения напрямую. Вот почему эти расширения были настолько мощными: не было предписанного набора вещей, которые они могли бы и не могли изменить. Именно поэтому эти расширения, как правило, ломаются с новыми версиями Firefox.
Расширения для Chrome или Safari не работают таким образом. Эти браузеры предлагают API-интерфейсы разработчиков расширений, которые они могут использовать, что означает, что есть список вещей, которые расширения могут и не могут контролировать. Уже два года Firefox предлагает аналогичный API под названием WebExtensions, который он призвал разработчиков принять.
Традиционные расширения сделали улучшение Firefox трудным
Пользователи Firefox, не зная о расширениях, вызывают проблему, предполагают, что новая версия Firefox глючит, и с их точки зрения это было. Команда Firefox сделала бы все возможное, чтобы обеспечить, чтобы популярные расширения работали до нажатия новой версии, но легко представить себе все это замедляющее развитие.
API WebExtensions делает все это проще, конкретно определяя, какие расширения могут делать и как они могут это делать. Это означает, что разработчикам необходимо только убедиться, что API работает правильно, и не беспокоиться о том, что изменение производительности или изменение пользовательского интерфейса нарушают определенные расширения. Результатом должно быть меньшее количество расширений, разрыв в долгосрочной перспективе, но чтобы это стало возможным, Mozilla необходимо было отказаться от старой экосистемы расширения.
Это изменение также делает некоторые из лучших возможностей Quantam возможными. Например, многопроцессорная способность - большая часть ускорения скорости Firefox Quantam. Четыре отдельных процесса обрабатывают интерфейс Firefox и вкладки, то есть Firefox может использовать все четыре ядра вашего процессора вместо одного. Это реальность того, что традиционная экосистема расширения просто не была построена, и трудно представить, как заставить ее работать без множества слоев абстракции, которые неизбежно замедлят работу. Многие предстоящие изменения в Firefox были схожи с прежними дополнениями, что означало, что экосистема должна была измениться, чтобы Firefox развился.
Совместимость с кросс-платформой была проблемой
Конечно, есть несколько расширений Firefox, которые вы не можете получить в Chrome, но Chrome имеет большую экосистему. Новый API WebExtensions не будет исправлять это за одну ночь, но значительно упростить перенос расширений Chrome в Firefox, потому что язык, используемый для написания расширений, достаточно похож, чтобы сделать портирование поверхностным. Во многих случаях для расширения Chrome требуется только несколько настроек для Firefox, то есть нет причин, по которым ваши любимые расширения Chrome не могут появиться в Firefox сейчас, если вы попросите разработчика достаточно хорошо. Это должно привести к потоку новых расширений в экосистеме, которая могла бы откровенно ее использовать.
Firefox уже потерял пользователей
Некоторые могут утверждать, что Firefox потеряет пользователей из-за сломанных расширений, но стоит отметить, что Firefox уже терял пользователей в Chrome с угрожающей скоростью и был в течение многих лет. Сравнительная скорость и отсутствие определенных дополнений не помогли на этом фронте, и Firefox Quantum стремится исправить обе эти проблемы.
Есть ли шанс, что это будет иметь неприятные последствия? Конечно. Некоторые люди будут прыгать на корабль в Хром, а другие могут искать древние вилки, которые поддерживают старую экосистему расширения. Но это не похоже на то, что все прошло хорошо. Firefox должен развиваться, чтобы оставаться актуальным, и именно так они решили это сделать.
Разработчики имели время для перехода на новый API
Некоторые пользователи не заметят, что этот коммутатор даже произошел, потому что расширения, с которыми они работают, уже используют API WebExtension. Другие расширения не переключались.
Это может быть связано с тем, что разработчик давно отказался от расширения или не хочет переписывать его для использования API. В некоторых случаях API не предоставляет достаточного контроля для повторного создания исходного расширения, поэтому разработчики отказываются от своих проектов. И во многих случаях преобразование просто еще не завершено.
В любом случае расширения не прерываются, потому что Mozilla внезапно изменила что-то неожиданное. WebExtensions является частью Firefox в течение двух лет, и срок для обновления расширений был объявлен год назад:
By the end of 2017, and with the release of Firefox 57, we’ll move to WebExtensions exclusively, and will stop loading any other extension types on desktop.
Все еще не хватает расширения, от которого вы зависите? Этот документ Google отслеживает несколько популярных расширений и предоставляет альтернативы нескольким распространенным. Этот список также полезен.