В рамках проекта SmartAdBlock (https://www.smartadblock.co.uk/) развивается новое дополнение для блокировки рекламы и нежелательного контента для Chrome и Firefox. Дополнение обеспечивает блокировку рекламы по спискам EasyList, автоматически убирает всплывающие диалоги с соглашением об использовании Cookie на сайтах, запрещает открытие всплывающих запросов и отключает код для отслеживания перемещений. Код проекта распространяется (https://github.com/smartadblock/SmartAdBlock) под лицензий LGPLv3.Основное внимание при разработке делается на оптимизацию кода для экономии памяти и потребление ресурсов CPU. Судя по тестам разработчиков проекта SmartAdBlock является одним из самых быстрых дополнений в своей категории и потребляет минимальный объём памяти, опережая по этому показателю даже uBlock Origin.
Особенности SmartAdBlock:
- Блокировка всевозможных всплывающих окон и диалогов, с условиями использования, приглашениями подписаться на рассылку, соглашениями об обеспечении приватности и уведомлениями о применении Cookie.- Блокировка всех видов рекламы, без разделения на приемлемую и агрессивную, и без белых списков с рекламными сетями спонсоров;
- Запрещение выполнения вредоносных скриптов и встраиваемого на сайты кода для майнинга, а также сомнительных вставок, диалогов проверки и всплывающих блоков, часто размещаемых на сайтах с торрентами, сервисах для обмена файлами и системах потокового просмотра видео (например, Putlocker, 123movies, solarmovie, fullmatchesandshows, azmovies);
- Поддержка обхода типовых приёмов для обнаружения блокировщиков рекламы (например, обходит проверку на таких сайтах, как Webmd, IGN, CNET, Eurogamer и Techradar). Блокирует диалоги с предложением отключить блокировщик;- Отсутствие сбора телеметрии и накопления сведений об активности пользователя;
- Автоматическая система проверки и обновления фильтров. Новые правила блокировки загружаются раз в 24 часа.URL: https://github.com/smartadblock/SmartAdBlock
Новость: https://www.opennet.dev/opennews/art.shtml?num=50281
А как же манифест хрома?
Почти решили уже этот вопрос. Разработчики дополнений выработали предложения по расширению нового API declarativeNetRequest, которые Google обещал учесть.https://docs.google.com/document/d/1sKZFojq_fUusrebKsyNHfRk_...
Есть Firefox. Этого достаточно.
Нет, есть Iridium. Этого достаточно.
> Нет, есть Iridium. Этого достаточно.https://git.iridiumbrowser.de/cgit.cgi/iridium-browser/commi...
@@ -32,13 +32,13 @@ namespace history {
namespace {
const char kHistoryOAuthScope[] =
- "https://www.googleapis.com/auth/chromesync";
+ "https://trk-138.iridiumbrowser.de/www.googleapis.com/auth/ch...
> A BROWSER SECURING YOUR PRIVACY. THAT’S IT.
> Automatic transmission of partial queries, keywords and metrics to central services is prevented and only occurs with the approval of the user.Действительно достаточно.
https://np.reddit.com/r/firefox/comments/74n0b2/mozilla_ship.../
https://www.ghacks.net/2017/10/06/mozilla-to-launch-firefox-.../
https://bugzilla.mozilla.org/show_bug.cgi?id=1392855#c5
https://gizmodo.com/mozilla-slipped-a-mr-robot-promo-plugin-...
https://www.thewindowsclub.com/firefox-quantum-disable-telem...
Это тебе тоже по кайфу?
Нет, поэтому есть PaleMoon, Waterfox, Basilisk, Otter, ...А веб как был помойкой так и остался.
авторы паленой луны и сифилисы не собираются бороться за тебя с твоими проблемами, у них своих полно. Там никто специально не выискивает телеметрию и не удаляет ее ради удаления.ее если и удаляют, то либо вместе с уже поломанным кодом, либо когда случайно наткнутся на очередной кусок, и решат что им он не нужен (а могут и мимо пройти).
паленая - она об xul, а не о privacy
P.S. в том что гуглезила не может жить без зондов - веб виноват?
Я не тебя спрашивал. Это было адресовано тем, кто восхваляет Firefox.
> Я не тебя спрашивал. Это было адресовано тем, кто восхваляет Firefox.И давно Вы э-э-э … слышите голоса, восхваляющие Firefox? o_O
> https://www.thewindowsclub.com/firefox-quantum-disable-telem...
> Это тебе тоже по кайфу?Во-первых, там хотя бы не заявляют что это " A BROWSER SECURING YOUR PRIVACY." и что там "Automatic transmission of partial queries, keywords and metrics to central services is prevented and only occurs with the approval of the user",
Во-вторых:
> thewindowsclub
> In our earlier post on how to manage Windows 10 Telemetry and Data CollectionВаши страдания нам почти интересны, держите нас в курсе!
Достаточно умно сделано. Предыстория:Разрабы иридиума боролись с исходящими соединениями с гуглом. Сделали это так: все урлы, ведущие в гугл, преобразовали в невалидный урл trk:XXX:... Например, trk:209:https://www.googleapis.com/auth/chromewebstore
https://github.com/Eloston/ungoogled-chromium/blob/master/pa...
Далее, они запускали хром и видели в консоли в рантайме варнинги, что хром пытается соединиться с trk:209:... Далее, они патчили хром так, чтобы такого соединения не было в принципе.
Выхлоп в консоль - это конечно хорошо, позволяет разрабу отловить те попытки соединения, которые хром производит на локальной тачке самого же разраба. Если хром сделает это на тачке конечного юзверя, разраб об этом не узнает. Да и юзверь тоже, не станет же он мониторить stderr хрома?
А потому все trk:XXX: заменили на иридиумовскую инфраструктуру. Т.о., если хотя бы один экземпляр хрома конечного юзверя попытается соединиться по гугловскому урлу, иридиумовцы об этом узнают и оперативно пропатчат.
Хорошая попытка, но нет
> Если хром сделает это на тачке конечного юзверя, разраб об этом не узнает.Если хром обратится по ссылке в dev/null, никому не будет от этого ни жарче, ни холоднее.
> А потому все trk:XXX: заменили на иридиумовскую инфраструктуру. Т.о., если хотя бы
> один экземпляр хрома конечного юзверя попытается соединиться по гугловскому урлу, иридиумовцы
> об этом узнают и оперативно пропатчат.Т.е. они вдруг, волшебным образом, найдут пропущеный реф на код/ссылку, потому что им придет сообщение "вы пропустили" … крутая лапша, хорошо на ушах висит!
> Достаточно умно сделано. Предыстория:
Для умеющих читать я предысторию уже процитировал и даже выделил жирным:
Если кто-то громче всех пиарится^W орет о важности конфиденциальности и о том, что "никаких метрих, телеметрий и прочего без разрешения пользователя", то пусть не удивляется, что с него, чуть-что -- и спрос строже.А то была уже сборка Iron, тоже официально много о приватности говорилось, а неофициально
http://neugierig.org/software/chromium/chromium-dev-2008-09-17
12:03 < Iron> because a fork will bring a lot of publicity to my person and my homepage
12:03 < Iron> that means: a lot of money too ;)
<Iron> i dont take money for my fork
<Iron> but i have adsense on my page ;)
<Iron> a lot of visitor -> a lot of clicka > a lot of money ;)
> они вдруг, волшебным образом, найдут пропущеный реф на код/ссылкуПочему "волшебным образом"? Ты что, совсем и не умеешь искать использование константы по проекту?
>> они вдруг, волшебным образом, найдут пропущеный реф на код/ссылку
> Почему "волшебным образом"?Очевидно, потому что до этого не нашли. Не помог поиск.
> Ты что, совсем и не умеешь искать использование константы по проекту?
Ну, у всех свои слабости -- вот ты например, похоже не особо умеешь читать предложения целиком. Ведь речь шла не обо мне и не о "первичном" поиске.
Насчет анонимных умений (и знаний) о поиске констант по проекту -- тоже есть некоторые сомнения:
% cat hello.c && gcc -Wall -Wextra -std=c99 hello.c -o hello && ./hello
#include <stdio.h>#define CON_I(x,y) x##y
#define CON(x,y) CON_I(x,y)
#define NAME(x) xconst char hello[] = "hello world!";
int main(void) {
puts(CON( NAME(he),NAME(llo) ));
return 0;
}hello world!
Ты, главное, не забывай минусики и плюсики накручивать и с умным видом пытаться перейти на ад-хоминем, полностью игнорируя неудобные вопросы и особо не утруждая себя аргументацией :)
> потому что до этого не нашлиДо этого-то нашли. И поиск помог. Смысл таких вставок в том, чтобы пресекать ситуации, когда хром с очередным обновлением вдруг стал обращаться по trk-нутым урлам с еще одного, нового места. Errare humanum est, а потому не стоит быть самонадеянным и считать, что уж точно потер все обращения к урлам: следует оставить подушку безопасности для собственной невнимательности. То, что водитель пристегивается ремнем безопасности, не говорит о том, что это плохой водитель.
> Насчет анонимных умений (и знаний) о поиске констант по проекту -- тоже есть некоторые сомнения:
Сомневаюсь, что в высоко-забюрократизированной корпорации пройдут такие приемчики. Банально код-ревью не пройдет. Но ты можешь опровергнуть это, приведя не теоретический, а реальный пример из сорцов хромиума.
>> потому что до этого не нашли
> До этого-то нашли. И поиск помог. Смысл таких вставок в том, чтобы
> пресекать ситуации, когда хром с очередным обновлением вдруг стал обращаться по trk-нутым урлам с еще одного, нового места. Errare humanum est,Что возвращает нас к исходному тезису:
>> Если хром обратится по ссылке в dev/null, никому не будет от этого ни жарче, ни холоднее.и грубейшему нарушению авторами своих же обещаний.
> потому не стоит быть самонадеянным и считать, что уж точно потер все обращения к урлам:
> следует оставить подушку безопасности для собственной невнимательности. То, что водитель пристегивается
> ремнем безопасности, не говорит о том, что это плохой водитель.А это плохая аналогия напополам с демагогией. Но как отмазка сойдет.
>> Насчет анонимных умений (и знаний) о поиске констант по проекту -- тоже есть некоторые сомнения:
> Сомневаюсь, что в высоко-забюрократизированной корпорации пройдут такие приемчики.Ну вот тут -- прокатывают:
https://github.com/systemd/systemd/blob/31e775ec3866618ff73d...#define _DEFINE_STRING_TABLE_LOOKUP_TO_STRING(name,type,scope) \
scope const char *name##_to_string(type i) {
Но если аноним сомневается, то конечно этого не будет.
> Но ты можешь опровергнуть это, приведя не теоретический, а реальный пример из сорцов хромиума.Благодарю за разрешение, Мастер! Спешу уже!
"Обожаю" местных анонимов -- у них в качесте собственных "аргументов" прокатывают сомнения и размышлизмы, а вот другим очень желательно не ограничиваться конкретными PoC, но и перелопатить полтора десятка миллионов строк кода …
Но так и быть, лови:
https://github.com/chromium/chromium/blob/fc59e2b97fe899b559...
#define SIS_CONCAT2(a, b) a##b
#define SIS_CONCAT(a, b) SIS_CONCAT2(a,b)
...
SIS_CONCAT(GetStackFrames_, GST_SUFFIX),
SIS_CONCAT(GetStackFramesWithContext_, GST_SUFFIX),
> Но так и быть, ловиА теперь то же самое, но для сокрытия обращений к гуглосерверам.
Зачем же, если есть зонды - их следует выявить и нейтрализовать. Аноним84701 приводит правильную мысль, что они могут быть сокрыты через препроцессорные макросы. Примеры схожих приемов из third_party-папок в дереве исходников хромиума приводит. Теперь осталось лишь довести исследование до конца и найти их использование именно с целью сокрыть соединение с гуглосерверами. Если им это будет осуществлено, можно будет сообщить о них иридиумовцам и мейнтейнерам схожих проектов.
>> Но так и быть, лови
> А теперь то же самое, но для сокрытия обращений к гуглосерверам.Хм, вначале аноним не знал, что константы можно скрывать -- его ткнули носом.
Потом аноним сомневался, что в хромом коде такое встречается -- его опять ткнули носом.
Теперь аноним требует показать совершенно конкретное скрытие обращений -- видимо, это такая форма мазохизма …https://git.iridiumbrowser.de/cgit.cgi/iridium-browser/tree/...
namespace {const char kHistoryDeleteHistoryUrl[] =
"trk:140:https://history.google.com/history/api/delete?client=chrome&...const char kHistoryAudioHistoryUrl[] =
"https://history.google.com/history/api/lookup?client=audio&q...const char kHistoryAudioHistoryChangeUrl[] =
"https://history.google.com/history/api/change";const char kQueryWebAndAppActivityUrl[] =
"https://history.google.com/history/api/lookup?client=web_app...
Скрытое? Очевидно же -- ведь его не заметили и не заменили для "предотвращения обращений".
Ну или оно противоречит такой стройной изначальной отмазк^W теории:
>>> Далее, они патчили хром так, чтобы такого соединения не было в принципе.
>>> Т.о., если хотя бы один экземпляр хрома конечного юзверя попытается соединиться по гугловскому урлу, иридиумовцы об этом узнают и оперативно пропатчат.Теперь, в продолжение славных традиций, мне нужно будет доказать, что по этому каналу действительно что-то сливают "иначе ничего не было"?
Предлагаю, для начала, притянуть за уши более убедительную отмазку.
> вначале аноним не знал, что константы можно скрывать -- его ткнули носомПриведенные тобой примерчики просто не столь впечатляют, как успешно внедренный в одну биржу форк биткоина с замаскированным бэкдором, уж прости https://github.com/alerj78/lucky7coin/issues/1
Но уж если на то пошло, то ты все еще не привел ничего похожего, -- требовалось показать, что в сорцах хромиума старательно пытаются сокрыть обращения к гуглу через жонглирование макросами; ну а как я говорил ранее, такие приёмчики попросту не пройдут гугловский же код-ревью (thirt_party-bundled-либы не в счет)
> const char kQueryWebAndAppActivityUrl
Вот видишь? А теперь с этим урлом наперевес следует обратиться к иридиумовцам и спросить с них, чего это они его не trk-нули.
>> вначале аноним не знал, что константы можно скрывать -- его ткнули носом
> Приведенные тобой примерчики просто не столь впечатляют, как успешно внедренный в одну
> биржу форк биткоина с замаскированным бэкдором, уж прости https://github.com/alerj78/lucky7coin/issues/1Приведенный анонимом спрыг на абсолютно левую тему (особенно после того как анониму показали, что "так тоже можно было") тоже не очень впечатляет, тем более, не в сравнении с "underhanded с contest" www.underhanded-c.org , уж прости.
> Но уж если на то пошло, то ты все еще не привел ничего похожего,
Ты бы для начала обосновал, чем оно докажет мой изначальный тезис (подрыв доверия разработчиками) и опровергнет твои утверждения (по теме #53 и выше, а не после спрыга и юлежа куда-то в совершенно левое русло). Ничем?
А на кой мне тогда вообще доказывать анониму "почему я не прав"?
Тем более, если все что у анонима есть -- невнятные оправдания, крики "этанисчитаица!" и старательный уход с темы, вместо ссылок, примеров и цитат.> требовалось показать, что в сорцах хромиума старательно пытаются сокрыть обращения к гуглу через жонглирование макросами;
Требовалось кем и для чего? Анонимом, после юлежа и притягивания чего-то за уши, без утруждения анонима аргументацией, но с требованием у других доказательств по принципу "докажи мне, что ты не прав!"?
Если уж на то пошло, изначальное "обоснование" анонима хромает на обе ноги, потому что часть ссылок спокойно ведет к гуглу. Так что аноним для начала пускай сформирует более стройную гипоте^W отговорку-оправдание, а потом уже требует опровержения чего-то, придуманного им же …
>> const char kQueryWebAndAppActivityUrl
> Вот видишь?Ну, аноним тоже мог увидеть, если бы вместо попыток объяснить с умным видом "почему оно так, а не иначе" соизволил глянуть в код. Оно там сразу под трк-нтуными ссылками было.
> А теперь с этим урлом наперевес следует обратиться к иридиумовцам и спросить с них, чего это они его не trk-нули.Т.е. аноним с самого начала не знал, но старательно делал умный вид?
В общем, зря я понадеялся на ответы. Вместо них так и будут нелепые оправдания, домыслы, отмазки и юлеж :(
> > требовалось показать, что в сорцах хромиума старательно пытаются сокрыть обращения к гуглу через жонглирование макросами
> Требовалось кем и для чего?Тобой:
> Насчет анонимных умений (и знаний) о поиске констант по проекту -- тоже есть некоторые сомнения:
> #define CON_I(x,y) x##y
> #define CON(x,y) CON_I(x,y)
> #define NAME(x) xХелло-ворлд-примерчик оказался "прикольным", не более. (Не настолько прикольным, как lucky7coin, но на первый раз сойдет.) На практике ты не показал, как через эти самые x##y разрабы хромиума старательно скрывают соединения с гуглом, а потому твои "некоторые сомнения о поиске констант по проекту" оказались сомнениями исключительно конспирологического характера.
Но это и правильно, я считаю. К коду хромиума и следует подходить с конспирологическим и чрезмерно подозрительным настроем. Конкретно твой оказался пшиком, но может в следующий-то раз...
ответы гугловцев куда эпичней в этом топике -- "ну и что что мы воруем данные и притворяемся корпорацией добра, ведь чувак который поёт в рекламе мака Para-pa-pa-pam, I'm lovin it в рекламе мака не обязательно на самом деле любит мак."
Файрфокс сам по себе безопасен, я же говорю - добавили защиту от биткоина например. Я файрфокс вообще из-под рута запускаю, поскольку он безопасный
Все хорошо, но от рута излишне.
два смузи этому анониму!
Ты что, отрицаешь, что фф безопасин? Ты адепт секты хрома? Фф безопасин, можно запускать из под рута. Если нельзя, значит он не безопасин.
>Я файрфокс вообще из-под рута запускаю, поскольку он безопасныйА на уровне ядра слабо?
Третий манифест только в разработке, да и когда его зарелизят, второй будет поддерживаться какое-то время.Если гугл не одумается к тому времени, ну перейдет значительная часть пользователей на ФФ, это только плюс.
Идея отличная, но почему NIH, неужели нельзя было законтрибьютить изменения в uBlock Origin?
Да ваще... Кстати, а на кой чёрт это ублок написали? До него блокировщиков рекламы уже пачка была, вот ты лучше контрибутили туда, развели тут велосипедов...
uBlock Origin имеет существенные отличия от других блокировщиков, в то время как этот Smart-блокировщик практически дублирует функционал uBO, отличаясь лишь тем, что потребляет в состоянии Idle 13.5 MB вместо 15.9 MB (ничего себе! целых 2.4 MB!)
да, забавно, 1 процесс браузера можнет отжирать легко полгига памяти. а тут каких-то 2 мегабайта экономят :)))
Не распарсили обитатели тут сарказм.
Того, чего остро не хватает uBO (просмотр заблокированных элементов с выборочной разблокировкой), тут всё равно нет.
В uBO это есть в Advanced-режиме
> В uBO это есть в Advanced-режимеЭто который «Я опытный пользователь»? Ни хрена я там не вижу такого режима, как был в старом ABP.
https://i.imgur.com/7CANcVK.png или вам этого мало?
Мало. Оно, судя по всему, не даёт разблокировать элементы, заблокированные по подпискам. Я пробовал, даже если «позеленить» всё в этом списке, элементы, заблокированные по списку RU AdList остаются заблокированными.
Сейчас в uBO есть белый список, но он полностью отключает расширение на заданных сайтах. Вот если б по этому списку можно было игнорировать сторонние фильтры (которые по подпискам), а свои оставлять — было бы круто.
> Я пробовал, даже если «позеленить» всё в этом списке, элементы, заблокированные по списку RU AdList остаются заблокированными.Это не так. Зелёный полностью разрешает, выключая и динамическую фильтрацию, и статическую.
Серый выключает только динамическую, оставляя статическую подписками.
Перезагружайте страницу без кеша. CSP на запреты фреймов и скриптов могут кешироваться.
В Хромом не работает, ни перезагрузка страницы без кэша, ни даже очистка кэша браузера.
Ctrl+R нажимай когда отключаешь
если я правильно понял - это делает uMatrix
Который просто ломает все сайты без разбору. Спасибо, не надо.
Который просто отрубает все скрипты. Если у вас рук не хватает настроить - это проблема ваших рук, а не umatrix.
uMatrix нужно настраивать под каждый сайт отдельно. Не хрен больше делать что-ли?
Хорошо бы все эти резалки с контейнерами скрестили: в одном контейнере umatrix режет все, в другом простой встроенный блокировщик разрешает нормально гуглить по сайтам.
Контриб(ь)ють, тебе запрещают чтоли?
>по спискам EasyListОно только EasyList использует или можно подключить своих списков как в uBlock?
Можно, но как то не айсhttps://i.imgur.com/LLRgJcC.png
вообще настроек можно сказать нет
Только через управление дополнениями. И исключительно вручную.
uMatrix почему нет в списке?
Это не просто блокировщик, а намного большее.
Потому, что uMatrix давно часть uBlock. Просто надо было изучить настройки
наоборот, может? Алсо в юматриксе нет пипетки и возможности отдельно блочить шрифты. Так что увы
> без белых списков с рекламными сетями спонсоровЭто ненадолго.
Да, и телеметрию, телеметрию дайте!
Обычный клон, зачем новость?
Это не клон, это и правда очень легкий блокировщик: как по жирноте потребления, так и по функционалу.Да еще и сырое, многое у меня не заблокировало, я чтоб себе глаза и психику не портить скорее включил обратно ублок.
Т.к. лгпл наверное можно запихать к какому-нибудь вебкит-недобраузеру как штатный, а так... Ну мож допилят, но пока не готово.
он потому легкий, что настроек нифига нет
Именно. SourceForge - good, GitHub - bad.
Один изилист и потребляет меня ублок оригин, всем бояться, ага. Уносите.
Интересно, чего все клюнули на график? Там же честно написано: "Idle". Т.е. когда он ничего не делает. Вот выложили бы потребление памяти при работе -- тогда бы и сравнили. Невелико достижение сравнивать потребление памяти при блокировке злобной рекламы на самой жирной страничке about:blank
Серъезно? Блокировщик рекламы, сайт которого грузит кучу трекинг скриптов, в т.ч. от stripe (видимо оплату "легковесности" скоро можно будет делать онлайн).
Говорили же не раз - любой блокировщик рекламы служит для блокирования чужой рекламы и показа своей.
Какие милые авторы :) Правда слегка запутались кто какой аддон выпускает
https://addons.mozilla.org/en-US/firefox/addon/trafiklite/
Hi guys, pleased to see this article, sorry I dont speak russian I will post in english. I am a dev of smartadblock and I can reply to some of the comments here:-We are not doing this for a living the 3 developers have dayjobs
-I always hear why not contributing to ublockorigin, but is it not allowed anymore to start an adblocker project? Our concept is very different and it is just a different offer in the world of adblockers I believe it was worth publishing.
-Memory usage is lower but smartadblock is also faster and performs less regex, we will publish more statistics soon
-The filter interface was introduced in 1.0.9, choosing a list of famous filters will be introduced in the next version, be patient with us we started this 3 months ago
-Smartadblock is not simply easylist, we have additional rules a different parser and very different performance.
-As I said we started recently and if you find ads-unblocked stuff we would love to hear about it from russian public, please let us know in reddit r/smartadblock.
-Yes there was a stripe javascript in the website as we are planning to get donations to compensate for our time maintaining the filters. Anyway we removed for now.Anyway, great to see an article appear in russian about smartadblock, and we will keep working on this young project.
Thanks
Ok, i will try your adblocker. Thanks
Ok, no stripe script anymore, but still 5 assets (fonts) from google servers and google tracking scripts! :)
You're talking about it as if it's something bad. Google fonts are cached across multiple sites so the site loads significantly faster.
Sure! Google is your best friend, dude :)
Guys, have you ever tried to open your website with javascript disabled? Goog luck :)
Guys, have you ever tried to open your website in "Links" web browser? Good luck :)
You won't need to block tracking scripts if your browser supports no scripts.
Hey! Thanks for your answer. Any plans on supporting Safari in future?
Вместо исходников wasm блоб
и что? Оно GPLv3, так что исходники глянуть - не проблема. А если они за счёт васма сделали штуку шустрее - чем плохо-то?
Добавят нескучный дизайн и сравняется с uBlock Origin
Почему я не стал ставить это, просто посмотрев исходники:
1. Форматирование табуляцией в 8 строк; одна функция может быть отформатирована вообще без отступов, следующая - с отступами в 2 символа, а остальной файл по 8 символов
2. Нет пробелов там, где нормальные люди их ставят (понравилась лепнина вида if(str.length>0){...}else{...})
3. Изменяют прототипы встроенных классов (String.prototype.replaceAll). Считается bad practice даже в мире вебмакак.
4. Почему-то массивы, в которые по ключу добавляют значения (да, я знаю, что массив это тот же обьект, но всё же) - suf=[];suf["com.ac"]=""; это норма. Зачем нужен именно массив, если это нормально (и красиво) складывается в обьекте? Кстати, а что это вообще за список suffix.js?
5. Лежит минифицированный jquery и я не нашёл чтобы он использовался (операции с сетью и ДОМом, которые я обнаружил, делаются вручную). Однако он вписан в манифест и в нём могут заминифицировать хоть майнера.
6. В конце концов в 2019 можно код и на ES6 написать для удобства (но это уже чисто придирка)В итоге имеем, что:
1. Код оформлен так, что ревьюить даже при желании мало кому захочется (упрт отступы, имена переменных и т.п.)
2. Проект новый (14 дней), но озаботились оформлением именного юзера (видать, чтобы авторы не спалились). Пока все коммиты только от этого юзера. На доверии работают пацаны.Однако, это всего-лишь мой внутренний аудитор включил параноика и я буду очень рад ошибиться и мы в будущем получим быстрый блокировщик рекламы.
Hi - dev again - replying with the help of google translate.
to reply to few points:
-We never used github before and our plan was not to release it on github but 2 months after the project was out everyone was asking for github so we released it. That's why the username is new and the formatting is not particularly designed for a collaborative coding.
-jquery is used in contentscript
-suffix is used to pull the root of an url (for example the root of google.co.uk is not co.uk but google.co.uk) used later to match an url with the blocking rules.
-String.prototype.replaceAll is a classic I think it is even a javascript open issue. Anyway extensions run on separate namespaces so has no impact at all on the rest of the browser activity.Thanks for taking the time to have a look.
Нет доверия к SmartAdBlock, очередная подделка маркетологов/вирусописателей.
В наших сердцах uBlock Origin.
оно также ломает и уродует все на страничке как и uBlock ??
гораздо круче, поскольку там нет ни cosmetic filters, ни unbreak listв общем, студенческая поделка для привлечения внимания - во всяком случае, пока.
Проверил, рекламу режет великолепно, без всяких дополнительных подписок. Переломло вёрстку абсолютно везде, заблочило безобидные иконки на куче сайтов, некторые сайты не хотят открываться совсем, скрипты поломаны везде. Но рекламы нет-не поспорить.
share an example?
Examples:
https://imgur.com/a/VkIzJDw
Скриншоты бесполезны без адресовhttps://yandex.ru/pogoda/moscow/details
https://linux.org.ru
https://subscribe.ru
http://geekcity.ru
Ok fixed most of these thanks.
I dont have the problem of icons not showing this is only on your side. Are you running other chrome extensions that might cause that?
Ок. Благодарю, сейчас нормально.
К слову вероятно часть артефактов появилось по моей вине, я пробовал добавлять подписки и вероятно забыл перезагрузить расширение, после того как удалил(видимо это необходимо, раз для этого сделана специальная кнопка?).
One more example: https://prnt.sc/mvspr9
https://www.meteoprog.ua/ru/weather/Kyiv/#detailI guess this extension will be useless without possibility of visually pick and block annoying frame or popup (like it already implemented in uBlock).
Я никогда не блокирую рекламу.
Я просто не хожу на сайты которые ей злоупотребляют.
Если все мы поставим блокировщиков интернет в привычном для нас виде исчезает.
Пользуюсь блокировщиками лет 15, начиная еще с костылей с помощью оперовского user.js. Интернет всегда был "не таким", и это хорошо
Тоже блокирую рекламу лет 15 и такой не такой интернет для меня такой какой нужно.
Шикарная формулировка. Перечитал раз десять уже. У меня самого срок поменьше, но интернет тоже такой как нужно.
а тут ты что тогда делаешь?> Если все мы поставим блокировщиков интернет в привычном для нас виде исчезает.
поколение 200x? Для вас исчезнет, да. Для нас появится обратно.
Если не хочешь краем глаза смотреть рекламу прямо идентифицирующую себя как реклама, то тогда ты будешь уже полноценно смотреть её в виде новостей, обзоров и статей.
При повальном блокировании рекламы выживут всё равно только такие гиганты-рекламодатели как гугл и фейсбук, что ниразу не айс.
> то тогда ты будешь уже полноценно смотреть её в виде новостей, обзоров и статей.это обойдется гораздо дороже рекламодателю - и в результате есть шанс из такой статьи даже и извлечь полезную информацию (ну или сразу закрыть ее если зачем-то случайно открыл)
поэтому так делают очень редко (кроме пихания ссылок для индексаторов под видом сообщений в форумах - то есть это реклама для роботов, не для людей)> При повальном блокировании рекламы выживут всё равно только такие гиганты-рекламодатели
> как гугл и фейсбук, что ниразу не айс.с разморозочкой - тут у нас кроме них и совсем уж омерзительных уровня bdsm-услуг уже никого и не осталось.
>это обойдется гораздо дороже рекламодателюС чего ты взял, что гораздо дороже? Можно заказать оптом, например столько то новостей в месяц об определённом бренде. Или наоборот молчание о конкурирующем. Плюс для приемлимо широкого охвата аудитории достаточно делать так на парочке особо популярных сайтов по определённой тематике.
Да и в условиях, когда пользователи массово блокируют рекламу на сайте, как например на оверах сайт может согласиться на любую копеечку.
Плюс к этому освещаться будут только популярные темы.
Это поколение некст и колбасы-то нормальной не ело. Жрут одну химию..., вот мозг и отмирает потихоньку.
Достаточно отключать блокировку рекламы для тех сайтов, которые для вас важны.
> Достаточно отключать блокировку рекламы для тех сайтов, которые для вас важны.наоборот, раз они для меня важны - я точно хочу видеть там контент, а не дрыгающееся и моргающее уг.
кстати, владельцам гуаносайтов на заметочку - ctr (а за показы давно уже никто не платит) такой рекламы (на профильном сайте) - околонулевой. Именно потому что на профильный сайт приходят за чем-то, а не просто мило провести время.
А в мельшенении цветастого мусора на факинбуке - совершенно неотличимы реклама от нерекламы и нерекламы в виде рекламных перепостов нерекламы. Поэтому там и отключать незачем, действительно.
впрочем, мы еще забыли что реклама нынче не всегда то чем кажется, и вот по этой причие ее таки отключать надо именно на "сайтах, которые важны", чтобы кто-то с умным видом не мог посчитать, что именно тебе, анон, лично важно.
>>> Если все мы поставим блокировщиков интернет в привычном для нас виде исчезает.Нет.
Года до 2011-2014 в инете было заметно меньше чужих манипуляций людьми. В годах 199х-200x это была вещь с легко доступными полезными знаниями умелых, не замусоренная незнайками, не прячущая распределений цен. И т.п. лежало открыто. Пока это не донесли до Маркета.
ОМожет просто из-за молодости у Вас другое мнение.
Сейчас стало лучше - появилось много хороших инструментов для заработка и продвижения своих товаров и услуг, тот же инстак, к примеру.
Многие пытались так делать. Дескать, честно и достойно, поддерживать тех кто нравится, а не то все разорятся.
Проблема в тмо, что через неделю, сутки, час - у кого как, начинаешь просто ВЫТЬ от зашкаливающего обилия рекламы. Причем рекламы мало того что "индивидуально-шпионской" (это когда ыт ищешь название породы собак 1 раз и после неделю везде реклама всевозможных зоотоваров, так еще и откровенно мешающей, всплывающие видеоролики, баннеы и так далее.Вроде хочется сохранить достоинство, но невозможно же терпеть эти КУПИ КУПИ КУПИ лезущие изо всех дыр.
Особенно печально вдруг увидеть что "любимый сайт" обвешан рекламой настолько, что интересующий тебя уонтент сиротливо жмется между нагромождений рекламных блоков.Просьбы сайтов отключить AdBlock - особо издевательская тема. Обычно этим занимаются сайты на которых на здравый смысл уже махнули и реклама не ограничена ничем. К примеру мне попадались экземпляры когда посреди статьи показывался видеоролик, который по завершению запускал еще один и еще один, до бесконечности.
Впрочем рекламщики добились своего, теперь браузеры один за другим начинают игнорировать атрибуты автовопроизведения, хех.
Так что нет, нереально.
Ребята до этого никогда не использовали гитхаб, и судя по тому, как они им пользуются (заливают файлики через веб интерфейс), они не пользовались и самим гитом или любым другим svn. Я боюсь представить какую дэйджоб они имеют и как они втроём два месяца взаимодействовали и писали код без гита.И это не говоря о том, что это ещё один адблокер, который возьмёт небольшую часть аудитории, но всё ещё непонятно зачем нужен. Зачем плодить ещё один JS адблокер, лучше бы написали что-нибудь более нативное (на C) и впилили в исходники одного браузера, полезней дело бы вышло, а на JS любой вася напишет.
Ребята-разработчики, без обид, я не понимаю смысл траты вашего времени и о каких будущих донатах может идти речь.
> они не пользовались и самим гитом или любым другим svn
> и о каких будущих донатах может идти речьДоната хотите? Сперва нужно сдать экзамен по знанию git-а местным анонимам. А там уж по результатам посмотрим.
Бесполезен, пока не научится удалять пустое место от заблокированной рекламы.
А кто умеет?
ерунда. у меня яндекс.директ через него пролазит
Яндекс и его сервисы нужно блочить на уровне адреса
Читал ровно до этого момента:
>Судя по тестам разработчиков проекта SmartAdBlock является одним из самых быстрых дополнений в своей категории и потребляет минимальный объём памятиА по моим тестам, браузер в браузере на электроне потребляет меньше, чем helloworld на ассемблере.
Фигня какая то, а подписки от майнера наверное на гидхабе берут... где и для uBlock Origin лежит, и чем они лучше тогда? тем что на 2 мб меньше памяти жрут? ну чего грац их что-ли, пущай и дальше гордятся 2мя мб, один черт корявость их не взлетит, ибо таких уже куча была...
P.S. Что это тут за троль вылез? сидит на англ языке вещает, при этом отвечает на ру коменты, смехота да и только..
Слабо. ublock origin позволяет скрывать любые элементы на странице одним кликом.
Произвольный пример для опеннета (по клику):
##.ctxt
##tr:nth-of-type(2)
##tbody
###msgshow_101.cblk
##td:nth-of-type(2)
##tr
##tbody
##table.cblk:nth-of-type(2)
##td:nth-of-type(2)
##tr
Более того, режет сторонние скрипты! Или часть их, согласно выбранным правилам.
Но хитрый человек первоначально использует Google Hit Hider by Domain ;)
Google Domain hit by Hitler.
Можно и так)) К гуглу давно пора применять самые нацистские методы.
блокировщик рекламы - это косметика для домохозяек, котаны. по уму нужно блочить куки и скрипты. если ресурс без этого не отдаёт на запрос контент, как это делает например интерфакс, можно смело проходить это уг стороной. пусть учатся верстать
Про client-side шаблонизаторы слышал? Наслаждайся пустым шаблоном с отключенным джаваскриптом, Буратино.
и что мне мешает для нужного ресурса прописать в правиле "разрешить скрипты", твой, порваный в лоскуты шаблон, карла?
Продолжайте верить этим милым людям, гггг
https://www.crunchbase.com/organization/trafiklite
Ой, извините, мы слегка... ну, вобщем верьте нам на слово :)
https://addons.mozilla.org/en-US/firefox/addon/trafiklite/
Ну и вишенка: основной сайт trafiklite.com ведёт на... ой, сюрприз...
https://www.trafiklite.com/smartadblock/
Так в чем дело то, поясни
Цитата с первой ссылки:> TrafikLite provides analytics software to track all of a website's inbound marketing efforts
Одному гуглу чтоли только можно
Yes we created trafiklite and it was not a big success so what is the problem ?
Trafiklite simply gave traffic average based on alexa rank. We redirect trafiklite towards smartadblock to help promote the new project.
Guys, you seriously need to refactor the code for ease of readability, write your own privacy agreement or some kind of manifesto, make the site without the slightest hint of google. :)Maybe invite someone for a one-time audit? For example, from the Mozilla Foundation or Vivaldi Team? Oh, by the way. You could offer your extension for use in Vivaldi. Now most browsers have an ad blocker out of the box. Vivaldi lacks this feature for the mass user. ) Just an idea by fan of Vivaldi. =)
This is if you want the paranoids from the Linux and Open Source community to think about come to you. And, of course, more settings for a God of settings.
I appreciate your ideas, and we might use some of them. However our public was never meant to be the open source purists, those guys are so good and so perfectionist that they can certainly write a private adblocker and run it for total peace of mind ;) We went opensource because we were getting false claims of being a malware, and when this article was published we had to come answer some questions.
More settings will come in V1.1.2 or in Game of Thrones style "Settings Are Coming"
No problem at all :) Company, which was registered as "for profit" (according to crunchbase), failed with traffic analytic addon (which intended to help advertisers) and suddenly started a new adblock project (against advertisers). Common case :)
p.s. I bet that it's one-man company (IMHO it's almost impossible to create such kind of sources within a team having with zero knowledge of git as a bonus).
Well trafiklite was for everyone who wants to see a website traffic estimate, it converted an alexa rank to a traffic estimate using a math formula. So not particularly for advertisers. What do you mean with your last remark, do you mean that a good coder is necessarily familiar with github?
Благодарю за наводку. :) Вернулся на Origin.
А что это вдруг вернулся? Плохо блочил?
Ну, Nano Adblocker всяко получше uBlock Origin будет.
Правду нескроеш!!11 https://addons.mozilla.org/en-US/firefox/user/13015800/
Попытка с аналитическим аддоном провалилась, решили зайти с другой стороны?
Ради процента пересаживаться с проверенного ublock origin такое себе
Дурачки побегут, и все их куки тоже убегут.
https://addons.mozilla.org/en-US/firefox/search/?q=adblock&t...
>356 extensions found for "adblock"А уж сколько их в CWS представить страшно.
Нормуль работает, мне нравится.
Странно, у вас статья недавно была про производительность блокировщиков https://www.opennet.dev/opennews/art.shtml?num=50169 так там Ghostery всех уделала, а здесь ровно наоборот
> так там Ghostery всех уделала, а здесь ровно наоборотЗдесь сравнивается потребление памяти, а там было измерение поизводительности.
Таки я так и не понял - что лучше uBo или SmartAdblock?
Или одна херня?
Скорее всего, последнее.