È stata pubblicata la versione 0.0.2 del motore del browser Servo e del browser dimostrativo ServoShell, entrambi scritti in Rust. Le funzionalità di questa versione sono analoghe a quelle della build notturna del 14 novembre, per la quale è stato effettuato un ulteriore test manuale. Le build pronte sono disponibili per Linux, Android, macOS e Windows.
Il motore è stato originariamente sviluppato da Mozilla, ma successivamente è passato sotto il patrocinio della Linux Foundation. Servo si distingue per il supporto del rendering web multithreading, la parallelizzazione delle operazioni con il DOM (Document Object Model) e l'uso dei meccanismi di programmazione sicura forniti dal linguaggio Rust. Servo è stato creato fin dall'inizio con il supporto per la suddivisione del codice DOM e il rendering in sotto-attività più piccole, che possono essere eseguite in parallelo per sfruttare più efficacemente le risorse delle CPU multicore. Parte del codice di Servo, come il motore CSS multithreading e il sistema di rendering WebRender, è già integrato in Firefox.

Variazioni principali:
- Il supporto per XPath (XML Path Language), AbortController e AbortSignal è abilitato per impostazione predefinita.
- Aggiunti gli API CompressionStream e DecompressionStream per comprimere e decomprimere flussi di dati.
- Aggiunto il supporto per l'elemento all'interno dei blocchi
- Implementati i metodi fetchLater() e Document.parseHTMLUnsafe().
- Nell'evento UIEvent sono state implementate le proprietà «which» e «relatedTarget».
- Nell'API HTMLMapElement sono state implementate le proprietà «name» e «bareas».
- Nel motore di rendering è stato implementato un grassetto sintetico, in cui i caratteri vengono ispessiti programmaticamente senza l'uso di un carattere separato.
- Aggiunto il supporto per vsync per sincronizzare l'inizio del rendering con l'impulso di spegnimento dei fotogrammi.
- Iniziata la creazione di build native arm64 del browser ServoShell per macOS.
- Nel prototipo del browser ServoShell per Android è stata implementata una modalità sperimentale in cui sono attivate funzionalità sperimentali disattivate per impostazione predefinita, non completamente stabilizzate e attualmente in fase di sviluppo. È stato garantito il passaggio degli eventi tattili allo schermo touch e la visualizzazione della tastiera virtuale attivata dagli eventi touch. Aggiunto il supporto per lo zoom con pinces. La tastiera virtuale può ora essere scorsa durante lo zoom.
Fonte: opennet.ru
