Skip to content

v0.4.0

Latest
Compare
Choose a tag to compare
@unnamed777 unnamed777 released this 28 Oct 10:33
· 1 commit to master since this release

Обновление не очень заметно снаружи, но очень большое внутри - расширение переработано для совместимости с Manifest V3, на который скоро перейдёт Google Chrome, отказавшись от поддержки V2. Новая версия манифеста известна своими драконовскими мерами по различного рода ограничениям, касаемым взамодействия с сетевыми запросами пользователя и исполнением кода (из-за которых плачут авторы блокировщиков рекламы в хроме). Миграция на V3 грозила проблемами двум главным функциям расширения - захвату oauth-токена и JS-телу запроса в Консоли. К счастью, обошлось практически без потерь функциональности. Новая версия уже опубликована в Mozilla Addons. Версия для Chrome Web Store на данный момент проходит модерацию и надеюсь, через несколько дней тоже станет доступной.

Из потерь. Ранее в консоли в режиме JS/JSON можно было написать js-код, который является валидным javascript, но невалидным json, и этот код при выполнении запроса преобразовывался в правильный json. Делалось это обычным eval(), который запрещён в V3. В хроме данная функциональность получилось оставить, использовав специальную песочницу для выполнения подобных задач. Но в FF она пока не реализована, поэтому там консоль стала чуть-чуть хуже - js преобразовывается в json путём простых строковых замен, а не исполняет код. То есть указать текущую дату new Date() или многострочное значение без экранирования переносов с помощью template literals (``) теперь не выйдет. Хотя это небольшая потеря и, скорее всего, этим пользовался только я.

  • Переход на Manifest V3
  • Консоль: для FF упрощен конвертер js в json - теперь код не исполняется, литералы не поддерживаются
  • При наличии на странице Б24 нескольких активных приложений (поля-встройки, вкладки и т.п.) клик по кнопке расширения отображает попап с выбором приложения для захвата ключа авторизации.