Първият тестови релиз на уеб браузъра FixBrowser.

Публикуван е първият тестов вариант на уеб браузъра FixBrowser, проектиран да консумира малко ресурси и да осигурява конфиденциалност. Браузерът се разработва от нулата и принципно не поддържа изпълнение на JavaScript, но позволява работа със сайтове, основаващи се на JavaScript. Кодът е написан на езиците C и FixScript и се разпространява под лицензия ZLIB. Готовите сборки са форматирани за Linux (GTK2) и Windows. Планира се изграждане на версии за Haiku и macOS 10.6+, както и създаване на сборки за Linux, използващи GTK3/4.

За работа със сайтове, свързани с JavaScript, в FixBrowser е активирана прослойка FixProxy, която на момента преобразува подобни сайтове в представление, с което може да се работи без JavaScript. Замяната е възможна както по типови шаблони, така и с помощта на fix-обработчици, съобразяващи се със спецификата на конкретни сайтове (в комплекта са включени fix-обработчици за повече от 1200 сайта). FixProxy се развива под формата на отделен прокси процес, независим от FixBrowser и подходящ за използване с други браузъри.

Отбелязва се, че за показване на повечето сайтове без JavaScript са необходими само минимални изменения. Освен това, на много сайтове се използват еднотипни технологии за динамично генериране на съдържание, което позволява прилагането на типови fix-обработчици за тяхното визуализиране. Например, може да се използват универсални fix-обработчици за сайтове на базата на движка WordPress и форуми на платформата Disqus. Възможно е създаването на обработчици и за сайтове, които динамично визуализират съдържание - например, за извеждане на списъка с коментари, първоначално зареждани динамично чрез JavaScript, fix-обработчикът директно зарежда данни в JSON формат и самостоятелно формира HTML на тяхна основа.

За обработка на капча и JavaScript компоненти, като проверки CloudFlare, без които не е възможен достъп до някои сайтове, планират подготовка на прослойка на базата на фреймуърка CEF (Chromium Embedded Framework), която може селективно да изпълнява само необходимия JavaScript код. Прослойката за JavaScript ще бъде реализирана като отделен сервис (може да се стартира както на собствена система, така и да се използва обществен облачен сервис).

За да блокирате проследяването на активността на потребителя, изтеглянето на ресурси от външни хостове е забранено, а за разрешаване на изтеглянето на изображения чрез мрежи за доставка на съдържание се прилагат бели списъци. Подкрепя се HTTPS. Възможно е свързването на разширения, написани на езика FixScript.

Проектът се развива от Мартин Дворжак (Martin Dvorak) от Чехия, който създаде езика за програмиране FixScript. По-голямата част от кода на FixBrowser е написана на езика FixScript, с изключение на критичните за производителността операции и основния каркас. Кодът на FixScript се вгражда в кода на C, а за сборка се използва компилатор, доставян в един файл, включващ около 27 хиляди реда код на C (800 Кб). Язикът наподобява C, но използва динамична типизация, събирач на боклук и JIT-компилация. FixBrowser осигурява безопасна работа с памет и потоци, както и вградена защита от препълване на цели числа.

Реализацията на браузерния двигател успя да се опрости значително, тъй като FixBrowser извършва само първичното рендиране и не поддържа динамично обновяване на съдържанието. След като страницата бъде показана, тя вече не се променя, следователно може да се мине без такива абстракции като DOM (Document Object Model). В момента работата е съсредоточена върху създаването на HTML парсер, който да поддържа спецификациите на HTML5. Предложената в първия тестов пакет реализация за сега обхваща само 30% от тестовете за HTML5. Реализирана е основна поддръжка на CSS.

Първият тестови релиз на уеб браузъра FixBrowser.


Източник: opennet.ru
Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster