RU AdList JS Fixes

try to take over the world!

< Feedback on RU AdList JS Fixes

Review: Good - script works

На сайте https://murmansk.tele2.ru при включённом скрипте + Firefox 60 невозможно войти в личный кабинет, возникает постоянная ошибка, смс с кодом для подтверждения не приходит. При отключении скрипта вход в личный кабинет на сайте проходит нормально.
На сайте https://www.rbc.ru/ при работе скрипта на Firefox 60 скрывается видео. Окно с ним появляется на несколько секунд и становится невидимым. При отключении скрипта видео воспроизводится нормально.
§
Posted:

https://murmansk.tele2.ru по понятным причинам возможности проверить нет, но на странице https://www.rbc.ru/ проблема не повторяется. Укажите пожалуйста все детали конфигурации, при использовании которой вы наблюдаете проблему на странице https://www.rbc.ru/. Как это сделать, описано здесь (пункт 4).

Браузер - Firefox 60.9.0esr, Win7 (32-бит)

Основное расширение для блокировки - uBlock Origin 1.30.4

Подключенные фильтры - EasyList, EasyPrivacy, EasyList Cookie, Peter Lowe’s Ad and tracking server list, RU AdList, RU AdList: BitBlock + Fanboy's General, RU AdList: Counters

Дополнительные средства - RU AdList JS Fixes 20201015.6 (Tampermonkey 4.11.6117)
§
Posted:

Я правильно понимаю, что пропадает мини-плеер, находящийся на странице https://www.rbc.ru/ в левом верхнем углу?

§
Posted:
Edited:
Нет. Плеер на месте. Пропадает видео в центре странице, например, здесь: https://www.rbc.ru/politics/11/10/2020/5f82ac589a7947e8b26c65f8?from=from_main_3
Вот вид страницы с включённым скриптом: http://ipic.su/img/img7/fs/Snimok5.1602939559.jpg
A здесь с отключенным: http://ipic.su/img/img7/fs/Snimok6.1602939688.jpg
uBlock вообще не трогал. Он постоянно включен.
Такая же ситуация и с сайтом tele2.ru.
§
Posted:

Повторяется. К сожалению, в первых ревизиях Quantum, на базе которых собрана 60-я серия ESR, содержался ряд багов и исполнение определённого кода происходило не совсем обычным образом, из-за чего некоторые скрипты либо не работают, либо делают не то, что задумано, в том числе и RU AdList JS Fixes. Я не уверен, что Lain inVerse будет готов прописывать в код скрипта костыли для браузера, поддержку которого (так и не внеся исправлений) прекратил сам разработчик. Хотя буду рад ошибиться.

Скорее всего, в 60.9.0 ESR скрипт будет косячить не только на указанных вами ресурсах, но и на многих других. Вы можете временно отключить скрипт, у вас уже есть фильтр RU AdList: Counters, который содержит некий аналог кода RU AdList JS Fixes в синтаксисе uBlock Origin. Правда, для того чтобы он работал в FF на доменах яндекса, потребуется ещё Scriptlet-doctor-quantum, чтобы пофиксить CSP-баг Firefox, без исправления которого правила uBlock Origin в этом браузере тупо отбрасываются. Если скрипт всё же будет исправлен, то можно будет вернуть всё обратно.

Спасибо за ответ. Могу добавить, что данный баг появился сравнительно недавно, после 2-3 последних обновлений скрипта. До этого на обоих указанных сайтах скрипт работал нормально.
§
Posted:

Ок, дождёмся реакции моего коллеги. Кстати, вы совершенно напрасно в uBlock Origin отключили собственные фильтры, uBlock filters (6 шт). Как корректно настроить это расширение, описано здесь.

Спасибо ещё раз за подсказку.
Оставил включённым Tampermonkey со скриптом JS Fixes 20201015.6, т.к. Scriptlet-doctor у меня устанавливается и работает коряво. Оба сайта добавил в исключения, и теперь они работают нормально.
§
Posted:

Что значит "работает коряво"? Он либо меняет CSP на сайтах яндекса, либо не меняет. Больше он не делает ничего. При его установке не должно быть каких-то проблем, при условии, что для Quantum FF устанавливается версия scriptlet-doctor-quantum, а для for Gecko/Goanna FF - версия scriptlet-doctor-classic. Если при отключенном скрипте RU AdList JS Fixes и включенном Scriptlet Doctor в новостях, погоде, тв-программе, почте (яндекса) рекламы нет, значит Scriptlet Doctor работает. Если она есть, то соответственно - не работает.

Версия scriptlet-doctor-quantum 1.2.3 при установке на FF 60.9.0 сообщает о своей несовместимости с ним. На сайте Scriptlet-doctor пишут, что Quantum предназначен для FF 68+. При установке scriptlet-doctor-classic не отображаются его настройки. Уже несколько раз удалял и устанавливал указанное расширение. В чём причина такой работы - не знаю.
§
Posted:

Очень странно. Прямо сейчас без проблем установил для сочетания Win 7 + FF 60.9.0 ESR версию scriptlet-doctor-quantum и никаких сбоев в её работе не обнаружил. Возможно, вы используете подмену юзер-агента, или правили что-то вручную в about:config? Потому как других причин я предположить не могу. Что касается обычных версий FF и ESR, то нумерация у них не совпадает. На гитхабе JustOff указал (68+) как номер обычной версии, не ESR.

Кстати, какова причина использования неподдерживаемой 60.9.0 ESR, вместо актуальной 78.3.1ESR?

Сейчас не знаю с какой попытки установился scriptlet-doctor-quantum 1.2.3! Подмену юзер-агента в about:config использую только на одном сайте. Версией 60.9.0 ESR до сих пор пользуюсь лишь по той причине, что у меня на ней работает расширение Tab Mix Plus 0.5.8.1. В более поздних версиях FF оно уже, к сожалению, не работает.
dimisa, вопрос не совсем по теме. После установки Scriptlet-doctor иконка на панели инструментов не кликабельная, постоянно голубого цвета, т.е. при нажатии на неё никакие настройки расширения не открываются, цвет иконки не меняется. Это так и задумано?
§
Posted:

При нажатии на иконку Scriptlet-doctor её цвет должен меняться с голубого на серый (индикация отключенного статуса), однако в 60-х версиях ESR этого не происходит. Очевидно, тот же самый баг, который позволяет запускать в этих версиях FF несовместимый с Quantum аддон Tab Mix Plus, ломает при этом работу остальных расширений.

Понятно. Я так и предполагал, что цвет значка должен меняться. Ладно, пусть будет всегда голубой. Ещё раз спасибо за ответы.
Lain inVerseAuthor
§
Posted:
Edited:
Как оказалось в Firefox 60 ESR вызов toString на функцию обернутую в Proxy вызывает ошибку при исполнении. -_-
Пример: (new Proxy(() => null, {})).toString()
Нормальные браузеры возвращают "function () { [native code] }" или что-то подобное, но в Fx 60 ESR это не работает.

Поправил в данном конкретном случае, но я практически везде использую Proxy и это гарантирует подобные ошибки в других местах. Другое дело, что обычно toString никто в здравом уме не вызывает на window.setTimeout и подобных функциях.
Lain inVerseAuthor
§
Posted:
UPD: Поправил на обоих сайтах. Таки пришлось сделать более общую обёртку.
Большое спасибо! Всё работает нормально, как прежде.
Прошу извинить, что сразу не поменял. Впервые тут обращался с вопросом. Всё работает на обоих указанных мною сайтах хорошо.
Lain inVerseAuthor
§
Posted:
Всё ок. ;)
Главное, что работает. Хотя стоит заметить, что затычка довольно грубая.

Post reply

Sign in to post a reply.