概要
- Ladybirdプロジェクトの4月における主な進捗と新機能の紹介
- 新規スポンサーの獲得と資金提供の報告
- ブラウザ機能やパフォーマンスの大幅な改善点
- 新しいGTK4フロントエンドやブックマーク管理UIの追加
- CSSやネットワーク、JavaScriptエンジンの最適化
Ladybird 4月アップデート総括
- 333件のPR が 35人のコントリビューター によりマージ、新規参加者7名
- プロジェクトは 企業・個人スポンサー のサポートで運営
- Human Rights Foundation (AI for Individual Rightsプログラム経由)から $50,000
- Jakub Stęplowski から $1,000
- スポンサー募集の継続案内
インラインPDFビューア
- pdf.js をバンドルし、PDFをインライン表示対応
- ページナビゲーション、 テキスト選択、 ズーム、 ドキュメント内検索 機能
- pdf.jsのパフォーマンスプロファイリングにより typed-array view cache や :has() invalidation も強化
履歴・アドレスバーのオートコンプリート
- アドレスバー入力時に 履歴ベースのサジェスト 表示( favicon や タイトル 付き)
- SQLiteベースのHistoryStore で履歴情報を管理
- 履歴の消去機能を プライバシー設定 ページに実装
- Qt と AppKit の両UIでリッチな履歴行表示
HTMLパーサの改良
- インクリメンタルパース 対応で、レスポンス受信中から解析開始
- スペキュレーティブHTMLパーサ 導入
- 外部スクリプトでブロック時にリソース先読み
- preload map と連携し、二重リクエスト防止
JavaScriptオフスレッドコンパイル
- バイトコード生成 を バックグラウンドスレッド で実行
- メインスレッドの負荷を軽減し、YouTubeロード時に 約200ms の短縮
Per-Navigableラスター化
- 各 Navigable (iframe等)が 独立スレッド でラスター化
- 親子iframe間の再描画効率化
- 将来的な サンドボックスプロセス 分離の下地
JavaScriptエンジン改良
- JS-to-JSコール の高速化、 AsmIntアセンブリインタプリタ 活用
- O(1)バイトコードレジスタアロケータ、 for-inイテレーションのキャッシュ
- パーサ最適化 で 1.14倍高速化、 282MBメモリ削減
- 短い文字列連結 や レキシカルthisアロー関数 の最適化
- スパース配列 や Promise オブジェクトの効率化
- WASM, JSON, CSSモジュールのimport対応
- ShadowRealmサポート削除 (標準化停滞のため)
GTK4 / libadwaitaフロントエンド
- 新たな Linux向けGTK4 / libadwaitaフロントエンド 追加
- GNOME Web (Epiphany) 風のUI設計
- URLバーのオートコンプリート、 セキュリティアイコン、 マルチウィンドウ 等を実装
- 機能面ではQtやAppKitフロントエンドに未到達
ブックマーク機能の強化
- about:bookmarks ページでブックマークとフォルダ管理
- インポート/エクスポート 対応
- 編集用コンテキストメニュー、 date_addedタイムスタンプ 追加
- ブックマークバー での新タブ開きやドラッグ&ドロップ対応
Cache / CacheStorage API
- Cache と CacheStorage の全API(9メソッド)をインメモリで実装
CSS関連アップデート
- image-set() の標準・webkitプレフィックス両対応
- anchor-position、 color interpolation、 presentational hints を仕様準拠に
- RTLテキストのリストマーカー や SVGのstroke-dasharrayアニメーション 対応
- autofocus属性 や inline flex/gridベースライン の正確な処理
ネットワーク・スタイル無効化・GPU描画
- getaddrinfo をバックグラウンドで実行し、イベントループブロック回避
- RequestServer のパフォーマンス改善でYouTube動画ロード時の memcpy ・ Vector::remove の大幅削減
- Acceptヘッダ でAVIF/WebP対応
- :has()や:host() によるスタイル無効化の最適化、再計算の大幅短縮
- Linux Vulkanビルド で dmabuf によるGPUペインティング最適化
今後の展望
- さらなるパフォーマンス最適化 と 安定性向上
- 機能拡充 および クロスプラットフォーム対応強化
- 新規スポンサーやコントリビューターの継続的募集