Начиная с Firefox 40, выпуск которого запланирован на август, в дополнениях будет прекращена поддержка бинарных XPCOM-компонентов.
XPCOM представляет собой похожую на CORBA систему, предоставляющую слой для включения библиотек, разработанных на различных языках программирования.
Отмечается, что XPCOM устарел и испытывает проблемы со стабильностью, так как интеграции в дополнения бинарных библиотек, загружаемых в единое адресное пространство основного процесса, может использоваться для манипуляции внутренними структурами Firefox.
Вместо XPCOM для обращения к бинарным библиотекам из дополнений предложено использовать предоставляемый в SDK API s/system_child_process system/child_process, основанный на запуске отдельного дочернего процесса для внешнего кода.
Источник: http://www.opennet.ru/opennews/art.shtml?num=42164
Отсутствует
На самом деле большинство расширений с бинарными XPCOM-компонентами сломалось еще в Firefox 4.0, когда разморозили все интерфейсы и стало необходимо пересобирать под каждую версию. А с точки зрения реализации функционала с бинарниками, js-ctypes пока не выкидывают.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
например какие?
Из используемого мной зоопарка только FlashGot, вроде. Переживу, хоть это и будет большая потеря.
Впрочем, Giorgio Maone, весьма активный и незаурядный разработчик, думаю, выкрутится.
ну когда ж они уже выкинут xul
OpenNews: Демонстрация Browser.html, экспериментального браузера с HTML5-интерфейсом
тьфу-тьфу-тьфу...
Добавлено 05-05-2015 15:09:50
Есть Серво.
Он есть лишь чуть более, чем его нет.
Отредактировано turbot (05-05-2015 15:09:50)
Отсутствует
Из используемого мной зоопарка только FlashGot, вроде.
Вряд ли. У FlashGot как раз используется отдельный процесс, а не бинарные библиотеки, под которыми скорее всего понимаются DLL. Иначе при чем тут "... загружаемых в единое адресное пространство основного процесса, может использоваться для манипуляции внутренними структурами Firefox.". Так что - нет. Еще будут варианты?
Отсутствует
Dzirt
Может и так. Потому и написал: "вроде".
Сужу исключительно по наличию:
Добавлено 05-05-2015 15:47:04
Еще будут варианты?
У LastPass есть версия с бинарными компонентами. Но есть и без. В чем разница, когда пользовался, - не уловил.
Отредактировано turbot (05-05-2015 15:47:04)
Отсутствует
Ну то есть "новость" звучит примерно так - "мы прекращаем поддержку расширений с бинарными библиотеками, потому что они не совместимы с 64-х битным Firefox'ом и ... потому что нам не известно ни одного такого расширения, работу с которыми мы все равно сломали еще в версии 4.0, а починить ни ума, ни времени не хватило, надо было было пилить рюшечки". Ну ок. Суперновость. Так и запишем.
Отсутствует
Ну если только в дополнениях, то в полном масштабе не критично. А если дополнениями, например передача ссылки приложению, запуск приложения или кнопки Custom Buttons для запуска приложений., это действительно огорчит.
Отсутствует
Очередной вопрос:
Вместо XPCOM для обращения к бинарным библиотекам из дополнений предложено использовать предоставляемый в SDK API s/system_child_process system/child_process, основанный на запуске отдельного дочернего процесса для внешнего кода.
А чем это будет хуже? Я то не особо разбираюсь в этом.
Отсутствует
Отсутствует
Крошка Ру
До дизайнерских выс... кхе-кхе... "революционных идей" Яндекса мне как-то фиолетово. Как и до Эппловских (с чьих тот и был беззастенчиво содран).
Да и Мозилловские меня не беспокоят. Слава богу, тут гвоздями все не приколочено, всегда можно стилями поправить (в случае, если вместо xul'а будет html, это даже проще будет сделать). А вот совместимость расширений... Тут вон только треть из используемых мной работает в e10s (и то криво-косо). А он-то уже совсем близко. Что будет, если они внезапно и остальным своим идеям дадут жизнь, во главе с Серво?
Оно может и хорошо, и работать будет быстрее/лучшее/безопаснее, но без аддонов будет ничем не полезнее IE.
Отсутствует
DreamC
Ключевое слово у меня - "внезапно".
Пусть пилят. Я только за. Но только как отдельный продукт. Вот когда доведут до ума, сподвигнут какое-то кол-во разработчиков аддонов, хоть наиболее востребованных, переделать под новый движок, и тогда, по достижении какой-то критической массы, если продукт и впрямь толковым выйдет, пользователи и остальные разработчики и сами потянутся.
Отсутствует
turbot
Так сколько e10s в ночнушках висит то уже? У них в багах по нему даже совместимость наиболее востребованных аддонов висит.
По поводу XPCOM в этой ветке только 1 (!!!) человек смог назвать один аддон, которым он пользуется с внешним процессом. И то я (может конечно я просто чайник) не понимаю, что помешает реализовать тоже самое через SDK.
Отсутствует
DreamC
Тут людей скорее тенденция беспокоит (и небезосновательно) по выпиливанию чего-либо, что, по мнению разработчиков, мало кому нужно (а подавляющей массе пользователей, кроме возможности просматривать фоточки котиков, ничего и не нужно), а не данный конкретный случай.
Я вот с Хрома ушел, когда из него выпилили custom.css (аналог userChrome.css) (за малой востребованностью). Там это была единственная возможность хоть как-то перекроить интерфейс, так как у расширений не было api для этого (они вроде как обещали подумать, о добавлении подобного, но для меня это была последняя капля, не знаю, чем дело кончилось).
Отсутствует
человек смог назвать один аддон, которым он пользуется с внешним процессом.
С внешним процессом (FlashGot, да?) как раз не страшно, не попадает. Это не "бинарная библиотека". А вот в LastPass действительно есть две DLL для x86 и x64. Этот скорее всего перестанет работать.
Отсутствует
turbot
Просто, по-моему, данный шаг (про XPCOM) был единственным "резким". Т.е. его обсуждали только в не особо популярных дев-рассылках.
Про интерфейс - да, вынужден согласиться, что есть некоторые вещи, которые не нравятся, но ИМЕННО интерфейс должен идти за хомячками (не на все 100%, конечно).
А что еще выпиливается?
Dzirt
На сколкьо я понял из https://blog.mozilla.org/addons/2015/05 … omponents/ (но еще раз повторюсь, что я в этом не особо разбираюсь), то практически все тоже самое можно сделать при помощи SDK?
Отсутствует
А вот в LastPass действительно есть две DLL для x86 и x64. Этот скорее всего перестанет работать.
Кстати, скоре всего нет. Только они там код обфусцировали, неудобно смотреть. А так, вроде, там тоже js-ctypes:
Components.utils["import"]("resource://gre/modules/ctypes.jsm"); var g = __LOCATION__.parent.parent; g.append("platform"); for(var h = d ? 2 : 1, d = d ? 0 : -1; d < h; d++) try { var l = g.clone(); c ? (l.append(0 == d ? "WINNT_x86_64-msvc" : "WINNT_x86-msvc"), l.append("components"), l.append(0 == d ? "lpxpcom_x86_64.dll" : "lpxpcom.dll")) : e ? (l.append(0 == d ? "Darwin_x86_64-gcc3" : "Darwin"), l.append("components"), l.append(0 == d ? "lpxpcom_x86_64.dylib" : "lpxpcom.dylib")) : f && (l.append(0 == d ? "Linux_x86_64-gcc3" : "Linux_x86-gcc3"), l.append("components"), l.append(0 == d ? "lpxpcom_x86_64.so" : "lpxpcom.so")); if(l.exists()) { ka = ctypes.open(l.path); la = c && 0 != d ? ctypes.winapi_abi : ctypes.default_abi; Or = l.path; break } }
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
А что еще выпиливается?
Затруднюсь конкретно сказать, ибо сам никакого отношения к разработке не имею. Но всякие раздраженные высказывания на эту тему встречались. Думаю тут лучше спросить вот, например, Infocatcher'а.
Отсутствует
turbot
Даже на mozillazine практически ничего не найти по этому поводу.
И только в гугл-ргуппе было пару коментариев в стиле "вывесили бы новость пораньше".
Такое ощущение, что это мало кого беспокоит как раз.
Большинство шагов Мозилы мне нравятся, хоть некоторые из них и можно пообсуждать. (наверное из моих постов это и так ясно )
Infocatcher
А мне идея с SDK как раз больше нравится.
Это ведь заодно все уйдет и в B2G с их телефонами.
Отсутствует
turbot
Я не говорил, что подобных вещей нет
А вот этот баг - да, согласен, что они могли бы сделать и по-другому.
Но подобные моменты я уверен, что заканчиваются нормально.
Отсутствует
А мне идея с SDK как раз больше нравится.
В идее ничего плохого, просто новые фишки чаще ломают, чем старые.
Ладно хоть старые генераторы пока работают (только документация уже обновлена), а это Firefox 2.0+, совсем старье. Зато более древнее уже так просто не сломать – и старые интернеты рухнут, и множество расширений.
Как-то вот пока выходит, что об обратной совместимости заботятся слабо, достаточно сложные расширения надо постоянно поддерживать.
Но подобные моменты я уверен, что заканчиваются нормально.
Обычно это заканчивается тем, что разработчик правит свое расширение. Альтернативы-то особой нет.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует