ความเคลื่อนไหวของ Ladybird ในเดือนกรกฎาคม
(ladybird.org)- Ladybird มีการรวม 319 pull requests จากผู้ร่วมสมทบ 47 ราย ตลอดเดือนกรกฎาคม
- จำนวนการทดสอบที่ผ่านใน Web Platform Tests เพิ่มขึ้นเป็น 1,831,856 รายการ
- แก้ไขปัญหาการผ่าน Google reCAPTCHA และปรับปรุงความเข้ากันได้ของ Ladybird
- เพิ่มฟีเจอร์และความปลอดภัยสมัยใหม่บนพื้นฐานมาตรฐานเว็บ เช่น HTTP/3, การรองรับอัตรารีเฟรชสูง, Trusted Types
- เพิ่มความเข้ากันได้และประสิทธิภาพกับเบราว์เซอร์ล่าสุดด้วยการขยายคุณสมบัติ CSS และปรับปรุงการเข้ารหัสสตริงภายใน
ความสำเร็จหลักของโครงการ Ladybird ในเดือนกรกฎาคม
Ladybird เป็นโครงการที่ดำเนินการขึ้นด้วยการสนับสนุนจากองค์กรและบุคคลที่มุ่งมั่นในการสนับสนุนเว็บเปิด
เดือนนี้ได้รับการสนับสนุนจากผู้สนับสนุนใหม่จำนวนมาก ทำให้ทีมพัฒนาได้รับกำลังใจอย่างมาก
องค์กรหรือบุคคลใดที่สนใจเป็นผู้สนับสนุนสามารถติดต่อได้ที่ contact@ladybird.org
Web Platform Tests (WPT)
- ในเดือนกรกฎาคม มีการผ่านการทดสอบใหม่เพิ่มขึ้นอีก 13,090 รายการ ใน Web Platform Tests ส่งผลให้จำนวนรวมการทดสอบที่ผ่านแล้วเป็น 1,831,856 รายการ
- ทำให้ ความเข้ากันได้ของเว็บ และระดับการปฏิบัติตามมาตรฐานดีขึ้นอย่างมีนัยสำคัญ
การผ่าน Google reCAPTCHA
- ในการใช้งาน
postMessageเคยมีปัญหาเดิมคือไม่สามารถสร้างใหม่ได้เมื่อใช้ประเภทการจัดลำดับ (serialization type) ครั้งแรก - ข้อผิดพลาดนี้ถูกแก้ไขแล้ว ทำให้ Google reCAPTCHA ทำงานได้ตามปกติ
- อย่างไรก็ตาม การปรับปรุงนี้ปัจจุบันยังใช้ได้เฉพาะในโดเมน
https://www.google.com/เนื่องจากปัญหานโยบายเดียวกัน
การรองรับอัตรารีเฟรชสูง
- ตรวจจับอัตรารีเฟรชของหน้าจอที่ใช้งานอยู่แบบอัตโนมัติ และปรับความถี่ในการเรนเดอร์เว็บคอนเทนต์
- ก่อนหน้านี้ถูกล็อกไว้ที่สูงสุด 60fps แต่เมื่อฮาร์ดแวร์รองรับ จะเรนเดอร์ได้สูงสุด 120Hz
- ส่งผลให้การเลื่อน การเคลื่อนไหว และการเปลี่ยนผ่านมีความลื่นไหลมากขึ้น
การรองรับ HTTP/3
- ด้วยการรองรับ
curl 8.14.0, OpenSSL และ ngtcp2 ทำให้ Ladybird สามารถใช้งาน HTTP/3 ได้ - เมื่อเซิร์ฟเวอร์ประกาศ HTTP/3 ผ่าน header
Alt-Svcโครงการจะทำการเจรจาอัตโนมัติเพื่อเชื่อมต่อ - ทีม Ladybird พบและรายงานข้อบกพร่องที่เกี่ยวข้องกับ Alt-Svc ของ curl โดยปัญหานี้ถูกแก้ไขใน
curl 8.15.0
การนำ Trusted Types มาใช้
- Trusted Types เป็นฟีเจอร์ความปลอดภัยสำคัญที่ช่วยป้องกันการโจมตีแบบ Cross-Site Scripting (XSS)
- ในครั้งแรกที่นำมาใช้งานใน Ladybird ช่วยให้รองรับการรับรู้นโยบายและการเขียน DOM แบบปลอดภัยตามชนิดข้อมูล
- การทำงานเพื่อขยายการรองรับมาตรฐานและเพิ่มความตรงตามสเปกจะยังคงดำเนินต่อไป
การปรับปรุง SVG foreignObject
- ปรับปรุงตรรกะการจัดการ
foreignObjectอย่างมากเพื่อเพิ่มความเข้ากันได้ระหว่างSVGและHTML - การจัดวาง, การตีความสไตล์ และการเรนเดอร์ใกล้เคียงข้อกำหนดมากขึ้น
การขยาย CSS
- เพิ่มการรองรับ
content: url(...)ทำให้สามารถฝังภาพในคอนเทนต์ CSS ได้ - เพิ่ม pseudo class ใหม่สองตัวคือ (
:state(foo),:unchecked) เพื่อเพิ่มความเข้ากันได้ในการสไตล์เว็บคอมโพเนนต์และฟอร์ม - ปรับการทำงานของกลุ่มคุณสมบัติเชิงตรรกะให้เหมาะสมขึ้น ทำให้การจำลองผลลัพธ์ CSS และประสิทธิภาพดีขึ้น
การปรับแก้ substitution function
- เขียนใหม่การใช้งาน
var()และattr()ให้ตรงตามคำนิยามล่าสุดของ substitution function ตามสเปก CSS - เป็นการวางรากฐานสำหรับการรองรับฟังก์ชันการแทนที่รูปแบบอื่น ๆ เช่น
if()และenv()ในอนาคต
การ parse <syntax> ของ CSS
- รองรับการกำหนดรูปแบบที่คาดหวังของค่าคุณสมบัติโดยใช้
<syntax> - ตัวอย่างเช่น เมื่อเขียน
color: attr(data-color type(<color>));ข้อมูลแอตทริบิวต์จะได้รับการตีความเป็นค่าสี CSS - ทำให้พฤติกรรมของ CSS Houdini และ custom properties มีความละเอียดมากขึ้น
ความคืบหน้า @property
- ขยายการใช้งาน @property เดิมให้รองรับการจัดการค่าเริ่มต้นและการรองรับ
CSS.registerProperty() - ก้าวเข้าใกล้ความเข้ากันได้กับ CSS Houdini มากขึ้น
การเข้ารหัส UTF-16 ของเว็บ
- เนื่องจากเว็บและสตริง JavaScript ใช้ UTF-16 เป็นการเข้ารหัสเริ่มต้น
- Ladybird กำลังย้ายจากโค้ดภายในเดิมแบบ UTF-8 มาเป็นชนิด UTF-16 เนทีฟ
- เพิ่มความแม่นยำในการประมวลผล Unicode และลดความเสี่ยงข้อผิดพลาดที่เกี่ยวข้องกับการเข้ารหัส
รายชื่อผู้สมทบในเดือนกรกฎาคม
- แสดงความขอบคุณแก่ผู้พัฒนาจำนวนมากที่ได้ร่วมเขียนโค้ดให้กับโครงการ Ladybird ตลอดเดือนกรกฎาคม
- กิจกรรมของชุมชนโอเพนซอร์สยังคงคึกคักอย่างต่อเนื่อง
ยังไม่มีความคิดเห็น