tiun
Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Если только не распространить хеширование name вообще на все расширения | А зачем? Обращаю внимание, что проблема, с которой всё это обсуждение началось, проистекает из того, что браузер при установке расширения помещает его к себе в профиль в файл с именем "id_расширения.xpi" - независимо от того, какое имя файл устанавливаемого расширения имел на диске или на сервере. Делается это для того, чтобы гарантировать отсутствие конфликтов имён файлов (id-то гарантированно уникальны). Придумано это было давным-давно, ещё в те времена, когда наличие id у расширения было обязательным. Сбой логики начался с переходом на WebExtensions, где никаких id изначально не было (в Гугловской спецификации), да и сейчас они не обязательны. Пришлось выкручиваться. Сначала заставили браузер назначать id в виде GUID. Они точно уникальны, но всплыла проблема с обновлениями. Тогда начали назначать id вида "название_расширения@noid". Получилось уже лучше. Но находятся расширения, у которых в названиях присутствуют символы, недопустимые для имён файлов. Для id это значения не имеет, там нынешняя схема продолжает замечательно работать. Проблемным оказался этап "Сохранение расширения в профиль". Но проблемным он является только для "особо отдельных" расширений, которые попадаются крайне редко. Зачем же ради них всё остальное корёжить? Нет, можно конечно. Большинство пользователей ничего и не заметит. Но если мне нужно найти в профиле файл конкретного расширения, то намного удобнее, когда имена файлов там более-менее осмысленные. А браузер, насколько я понимаю, при обновлении смотрит только на id (прописанный или "придуманный"), и ему безразлично, какое у расширения имя файла. Если я с этим не ошибаюсь, то обновление "безыдейных" расширений, установленных "по старому стилю", будет нормально работать и после начала использования хешей. А поскольку я предлагаю эту схему только для тех расширений, которые сейчас вообще не устанавливаются, то проблем в принципе никаких возникнуть не может. Цитата: но тогда проблемы с дубликатами могут возникнуть у тех, кто мигрирует со старых профилей. | Особо не должно. Насколько я знаю, браузер профиле держит свою собственную "базу данных", в которую записывает, в каком файле какое расширение лежит. Цитата: Не совсем понятно, зачем хешировать вместе с @noid? | Можно и без. Для будущего имени файла разницы никакой. Просто я предполагаю, что в том месте модуля установки расширений, где подсчёт этого хеша будет вызываться, строка будет уже с хвостиком "@noid", и отрезать его - только ресурсы компьютера зря тратить. Цитата: А ведь id обычно опускают именно потому, что они проштампованы в файле подписи. | А откуда Мозилловский подписывающий код возьмёт этот id, если он автором расширения изначально не был прописан в манифесте? Цитата: To whom how. Лично мне обновлять просто нечего. Но насколько я помню, автор Mypal специально приложил некоторые усилия, чтобы автообновление работало. Цитата: кстати как я понимю ты пакуешь зипом потомучто гитхуб не принимает 7зип? | И обязательно найдутся люди, которые потом не смогут это распаковать. Было уже такое. | Всего записей: 510 | Зарегистр. 02-11-2007 | Отправлено: 15:58 06-07-2025 | Исправлено: tiun, 16:27 06-07-2025 |
|