Проект GNU представил (https://www.fsf.org/blogs/community/gnu-librejs-new-and-impr...) выпуск LibreJS 7.11 (https://addons.mozilla.org/en-US/firefox/addon/librejs/), дополнения к Firefox, позволяющего отказаться от выполнения несвободного JavaScript-кода. По мнению (https://www.opennet.me/opennews/art.shtml?num=20882) Ричарда Столлмана, проблема с JavaScript состоит в том, что код загружается без ведома пользователя, не давая возможности оценить степень его свободности перед загрузкой и воспрепятствовать выполнению проприетарного JavaScript-кода. Определение применяемой в JavaScript-коде лицензии производится (http://www.gnu.org/software/librejs/manual/librejs.html#Free...) через указание на сайте специальных меток (https://www.opennet.me/opennews/art.shtml?num=33044) или через анализ наличия упоминания лицензии в комментариях к коду. Кроме того, по умолчанию допускается выполнение тривиального JavaScript-кода, известных библиотек и кода с сайтов, занесённых пользователем в белый список.В новой версии дополнение переписано с использованием технологии WebExtensions, что позволяет использовать его с Firefox 57 и более новыми выпусками, в которых была прекращена поддержка классических XUL-дополнений. Переработан метод обработки содержимого: файлы теперь анализируются по отдельности, что положительно сказалось на скорости загрузки web-страниц. Для включения и выключения дополнения теперь не требуется перезапуск браузера.
URL: https://www.fsf.org/blogs/community/gnu-librejs-new-and-impr...
Новость: http://www.opennet.me/opennews/art.shtml?num=48003
Столлман в данном случае обращает внимание на не самую большую проблему. Разумеется его понять можно. Свободность это его "фишка" и на неё он будет акцентировать внимание в первую очередь.
Но практическая проблема ЯваСкрипта совсем не в свободности. 90% ЯваСкрипта бесполезно, 9% откровенно вредно, а без оставшего процента вполне можно было бы и обойтись.
Обходись, кто ж мешает. Только вот ненавистный тебе js на главной странице опеннета, переключает табы "Главное" и "Мини-новости"
> Обходись, кто ж мешает. Только вот ненавистный тебе js на главной странице опеннета, переключает табы "Главное" и "Мини-новости"Как посещавший и посещающий регулярно опеннет с помощью маргиналь^W экстравагантных браузеров, с не менее маргинал^W экстравагантными настройками, открою страшную тайну:
Eсли заходить на opennet.ru (без www) или переходить с (www*)opennet.ru сразу на -> "новости" или заходить через закладку типа https://opennet.ru/opennews/, то о такой жизненно-важной и несомненно-полезной функции JS на опеннете можно никогда и не узнать, т.к. в этой версии сайта на табах, вместо JS, висят старые добрые (или немолодежные и старперные — кому что по душе) прямые ссылки:
https://opennet.ru/opennews/index.shtml
https://opennet.ru/opennews/main.shtml
https://opennet.ru/opennews/mini.shtmlА JS на опеннете действительно необходим только для (удобного) раздавания плюсиков и минусиков ;)
Все остальное работает и без него.
без жс ты бы заходил на отдельную страницу "Ваш +1 принят. Выберите дальнейшее действие: 1) Вернуться к треду 2) Выйти на главную страницу 3) Отменить +1 и поставить -1 4) Отменить +1, но не ставить -1"
> без жс ты бы заходил на отдельную страницу "Ваш +1 принят. Выберите
> дальнейшее действие: 1) Вернуться к треду 2) Выйти на главную страницу
> 3) Отменить +1 и поставить -1 4) Отменить +1, но не ставить -1"Cовсем не сомневаюсь, что в исполнении современного смузифила^W разработчика это будет выглядеть именно так ;)
Но кармадр^H^Hcистемам на форумах уже лет ... больше, чем некоторым посетителям опеннета. И тогда это решалось несколько проще – был переход на страничку (позже, с появлением соотв. CSS фич – всплывающая на страничке менюшка, хотя тут я точно уже не помню, обходилось ли все действительно без JS) c "обоснование для плюса/минуса", ссылкой "вертай меня назад, я передумал" и автоматической перенаправкой обратно в тему.
"Плюсики" легко делаются на голом HTML/CSS без смены страницы
Табы давно можно делать на CSS через чекбоксы
Конечно же не нужен. Зачем нужны интерактивные загрузчики файлов. https://louder.me/upload
Пруф || GTFO?
Да, можешь GTFO. У меня нет возражений.
Впрочем как нет и пруфов у тебя. Зато у теья есть танк, в котором ты плотно так засел, мечтая о вебе без джаваскрипта. Мне смешно.
давно пора переписать интерфейс opennet на человеческом движке типа React/Vue. Убрать баннеры каменного века, причесать внешний вид.
Ну и оставить plain текстовую версию для инвалидов, конечно.
Вы, старпёры, совсем застряли в своём каменном веке со своими React/Vue.В вебе сейчас можно и молодёжно всё делать на семантическом HTML5.
Ну и оставить javascript-версию для инвалидов, конечно.
Свобода - это не его "фишка". Скорее, это инструмент для пиара. Впрочем, и его забудут...
Аддон заблочил сайт с аддонами, превратил опеннет в набор кракозябр, а при бесконечной уже загрузке хабра вешает периодически браузер. Как они это сделали? Разве что лор работает.
Habr без скриптов не работает нормально... И вообще тормознутый(если не считать мобильной версии)
> Habr без скриптов не работает нормально... И вообще тормознутый(если не считать мобильной
> версии)Швабр ненужен
Он-то, как раз, нужен. А вот жопеннет убог и не нужен - ни контента, ни сообщества, ни приятного оформления.
Катись на чумокате отсюда, хипстер
Скоро потребуется и для WebAsm такое
А потом героически будут бороться с рекламой в бинарниках...
А как быть с бандлами webpack, которые прошли через babel и uglifyjs?
> А как быть с бандлами webpack, которые прошли через babel и uglifyjs?Терпеть. Точнее, не некошерный пипилитарный жс-код терпеть, а отключить жс к чертям и терпеть неработоспособность большинства сайтов. Столлман терпел и нам велел.
Порядочные минификаторы оставляют комменты с лицензиямиА вместо объединения файлов — отдельные скрипты в CDN (который раздаёт по HTTP2)
Впрочем, проект заведомо неработоспособен, и его разработчикам это наверняка понятно. Весь этот LibreJS — один гигантский вброс с целью пиара СПО, могли бы не заморачиваться с выкладыванием новых версий и отдавать 404 на странице загрузок, — никто бы и не заметил.
Специально их вырезаем сборочным скриптом до минификатора, чтобы не только не тратить на них траффик и время загрущки у пользователей, но и чтобы не палить, что местами используются гплнутые либы. В любом случае, их никто после минификатора не узнает.
Это вас просто пока за жопу не схватили. А потом начнётся самое интересное.
Кому и зачем нужно это дополнение кроме Штольмана? Кто и зачем будет его устанавливать? Сделать себе сайты "глючными" и "нерабочими?"
Ну люди весьма с нетрадиционные в плане мировозрения.
Правда самое смешное, что тут каждый будет пропагандировать подобные вещи, но сам себе такое не засадит.
Поставил, сломался opennet
GitLab тоже сломали животноводы!
%USERNAME%, без LibreJS ты можешь СВОБОДНО загружать любой JS код
> любой нелицензированный JS кодЛицензия должна быть определена. Твёрдо и чётко.
никто никому ничего не должен. Вот это и есть истинная свобода (без либерастических соплей о "твоя свобода кончается там где начинается че-то там чья-то другая").
Это свобода каменного века. Хотя даже там, я подозреваю, люди уже брали на себя обязанности и выполняли их. Вероятно, у них даже был свой аналог слова "должен".
Никому ничего не должные живут по канавам. Свободно живут: кому они нужны? Я тут на Невском видел такого, у него натурально гoвнo стекало из штанины в переполненный кроссовок и вонь чувствовалась метров за десять. Вот он так может, а я нет. Он свободнее меня, получается. Его свобода -- это реально свобода без всяких либерастических соплей, натуральная мужицкая свобода для сильных духом.Человек не свободен по определению -- он продукт социума, и вне социума он существовать не приспособлен. Даже этот гoвнюк с Невского не может жить без социума, и поэтому он не "истинно свободен".
таким образом, оппонент склоняет меня к мысли, что неустановка благословенного LibreJS равносильно тому, чтобы натурально гoвнo стекало из штанины в переполненный кроссовок и вонь чувствовалась метров за десять.Забавно.
> таким образом, оппонент склоняет меня к мысли, что неустановка благословенного LibreJS
> равносильно тому, чтобы натурально гoвнo стекало из штанины в переполненный кроссовок
> и вонь чувствовалась метров за десять.Не надо обожествлять аналогии и наделять их всемогуществом. Аналогии не равносильны, они лишь подобны по некоторым признакам.
Если я возьму красный шарик и зелёный шарик, скажу что они оба шарики, то есть аналогичны, а значит одного цвета, то ты увидишь ошибку моментально. Почему же здесь ты совершаешь ту же ошибку и не видишь её?
Современный web шняга! Все началось с неловкого HTML, потом добавили мертворождённого JS. На этой воне переписали все userspace приложухи и теперь мы имеем совренный дырявый комбайн который «может все» только кривой и жрет как не в себя.Нужно думать как его полностью переработать а не libreJS писать. Я за то чтобы браузер толко мог отображать странички без всякого кода на стороне клиента
Залезть обратно на деревья, надеюсь, не предложишь?
Надейся и жди.
Зачем? web-макаки от туда и не слазили...
Перерабатывай.
> Перерабатывай.Ну да. Он один в поле воин.
Такие плагины хуже чем нацизм
> Такие плагины хуже чем нацизмхуже, чем нацизм, только коммунизм :)
А фингерпринтеры, что характерно, не блочит - они под свободными лицензиями, одобренными лично Штульманом.
Если кто ещё не прочитал статью Столмана "Западня Javascript", то можно посмотреть её здесь https://www.gnu.org/philosophy/javascript-trap.html
Кругом враги. Вся надежда на Штульмана.
кругом те, кто знает, что не получится на этом подзаработать, но всё равно старается, что-то запретить.
скажу вам как приватопараноик: сей аддон юзабелен не есть.Постоянно пользую uMatrix* + дополнительно NoScript по-сайтово (не по-доменно), и львиная доля сайтов особо не нервирует (хотя есть хипсторские исключения, где надо потратить минуты три а то и пять чтоб заработал гoвнokoд). Но с этим аддоном... Я пробовал несколько раз - терпению моему конец приходит очень быстро. Идея нормальная, а реализация - к сожалению в гнутом стиле. Жаль.
* default deny, кроме css и image - и то над css подумываю в свете https://www.opennet.me/opennews/art.shtml?num=47902 ; до того вместо uMatrix использовал RequestPolicy, было совсем не так удобно, но терпел.