Выпуск Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° Servo 0.0.2

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° Servo 0.0.2 ΠΈ Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ вмСстС с Π½ΠΈΠΌ дСмонстрационного Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ServoShell, написанных Π½Π° языкС Rust. По Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ выпуск Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Π½ΠΎΡ‡Π½ΠΎΠΉ сборкС ΠΎΡ‚ 14 ноября, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ€ΡƒΡ‡Π½ΠΎΠ΅ тСстированиС. Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ сборки прСдоставлСны для Linux, Android, macOS ΠΈ Windows.

Π”Π²ΠΈΠΆΠΎΠΊ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ развивался ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Mozilla, Π½ΠΎ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΡˆΡ‘Π» ΠΏΠΎΠ΄ ΠΏΠΎΠΊΡ€ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Linux Foundation. Servo отличаСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° web-страниц, распараллСливаниСм ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с DOM (Document Object Model) ΠΈ задСйствованиСм прСдоставляСмых языком Rust ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² бСзопасного программирования. Servo ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ создан с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ разбиСния ΠΊΠΎΠ΄Π° DOM ΠΈ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ ΠΈ Π±ΠΎΠ»Π΅Π΅ эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСсурсы многоядСрных CPU. Π’ Firefox ΡƒΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ части Servo, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ CSS-Π΄Π²ΠΈΠΆΠΎΠΊ ΠΈ систСма отрисовки WebRender.

 Выпуск Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° Servo 0.0.2

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ измСнСния:

  • Π’ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° XPath (XML Path Language), AbortController ΠΈ AbortSignal.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ API CompressionStream ΠΈ DecompressionStream для сТатия ΠΈ распаковки ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° элСмСнта <source> Π²Π½ΡƒΡ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠΎΠ² <video> ΠΈ <audio>.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ fetchLater() ΠΈ Document.parseHTMLUnsafe().
  • Π’ событии UIEvent Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ свойства Β«whichΒ» ΠΈ Β«relatedTargetΒ».
  • Π’ API HTMLMapElement Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ свойства Β«nameΒ» ΠΈ Β«bareasΒ».
  • Π’ Π΄Π²ΠΈΠΆΠΊΠ΅ отрисовки Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ синтСзированноС ΠΆΠΈΡ€Π½ΠΎΠ΅ Π½Π°Ρ‡Π΅Ρ€Ρ‚Π°Π½ΠΈΠ΅ символов (synthetic bold), ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ символы ΡƒΡ‚ΠΎΠ»Ρ‰Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π±Π΅Π· использования ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ начСртания ΡˆΡ€ΠΈΡ„Ρ‚Π°.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° vsync для синхронизации Π½Π°Ρ‡Π°Π»Π° отрисовки с ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΌ гасящим ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠΌ.
  • ΠΠ°Ρ‡Π°Π»ΠΎΡΡŒ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€ΠΎΠ΄Π½Ρ‹Ρ… arm64-сборок Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ServoShell для macOS.
  • Π’ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ServoShell для Android Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Ρ‹Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности, Π΅Ρ‰Ρ‘ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Π½Π΅ стабилизированныС ΠΈ находящиСся Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° доставка событий касания ΠΊ сСнсорному экрану ΠΈ Π²Ρ‹Π²ΠΎΠ΄ экранной ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΏΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ Ρ„ΠΎΡ€ΠΌ Π²Π²ΠΎΠ΄Π° событиями сСнсорного экрана. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Ρ‰ΠΈΠΏΠΊΠΎΠΌ. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ° экранной ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΏΡ€ΠΈ Π΅Ρ‘ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ