Foi publicado o lançamento do motor de navegador Servo 0.0.2 e do navegador de demonstração ServoShell, ambos desenvolvidos na linguagem Rust. Em termos de funcionalidade, a versão é semelhante à build noturna de 14 de novembro, que passou por testes manuais adicionais. As builds prontas estão disponíveis para Linux, Android, macOS e Windows.
O motor foi inicialmente desenvolvido pela Mozilla, mas depois passou a ser administrado pela Linux Foundation. O Servo se destaca pelo suporte à renderização de páginas da web em múltiplas threads, paralelizando operações com o DOM (Document Object Model) e usando os mecanismos de programação segura fornecidos pela linguagem Rust. O Servo foi criado desde o início com suporte para fragmentação de código do DOM e renderização em tarefas menores, que podem ser executadas em paralelo e usar de forma mais eficiente os recursos de CPUs multicores. Algumas partes do Servo já estão integradas ao Firefox, como o motor de CSS em múltiplas threads e o sistema de renderização WebRender.

Principais mudanças:
- O suporte a XPath (XML Path Language), AbortController e AbortSignal está habilitado por padrão.
- Adicionados os APIs CompressionStream e DecompressionStream para compactação e descompactação de fluxos de dados.
- Adicionado suporte ao elemento dentro de blocos
- Implementados os métodos fetchLater() e Document.parseHTMLUnsafe().
- As propriedades 'which' e 'relatedTarget' foram implementadas no evento UIEvent.
- As propriedades 'name' e 'bareas' foram implementadas na API HTMLMapElement.
- No motor de renderização, foi implementada a negrito sintético, onde os símbolos são engrossados programaticamente sem usar uma variação de fonte separada.
- Suporte a vsync foi adicionado para sincronizar o início da renderização com o pulso de supressão de quadros.
- Começou a formação de builds nativas arm64 do navegador ServoShell para macOS.
- No protótipo do navegador ServoShell para Android, foi implementado um modo experimental, que ativa funcionalidades experimentais que estão desativadas por padrão, ainda não completamente estáveis e em desenvolvimento. Garantida a entrega de eventos de toque à tela sensível ao toque e exibição do teclado na tela ao ativar formulários de entrada com eventos de toque. Suporte ao zoom com pinça foi adicionado. A rolagem do teclado na tela durante o zoom foi permitida.
Fonte: opennet.ru
