OmoikaneでCookieやスクロールのブラウザ互換性を進めた
自作ブラウザOmoikaneで、document.cookieとHTTP通信の連携、Page Visibility API、イベントリスナー、CSS Scroll Snapなどを実装。APIをDOMやネットワーク、ホスト側の状態へつなぐ過程をまとめました。
COLLECTION
自作ブラウザOmoikaneで、document.cookieとHTTP通信の連携、Page Visibility API、イベントリスナー、CSS Scroll Snapなどを実装。APIをDOMやネットワーク、ホスト側の状態へつなぐ過程をまとめました。
自作ブラウザOmoikaneにPointer LockとElementInternalsを追加しました。X11の入力重複、iframeのRealm、フォーム状態復元、不要なDOM走査による性能低下、Rust製JavaScript EngineのBoaのArray.fromで起きたGC参照保持漏れと修正をまとめます。
自作ブラウザOmoikaneにFullscreen APIとTextEncoderStream・TextDecoderStreamを実装しました。top layerとネイティブウィンドウの同期、チャンク境界、バックプレッシャー、GCをまたぐデコーダー状態、WPTで残った課題を整理します。
自作ブラウザOmoikaneへHTML Popover APIを追加し、DOM状態、top layer、backdrop、focus、light dismiss、入力と描画まで接続しました。
自作ブラウザOmoikaneで使うRust製JavaScript EngineのBoaのbaseline JITで、Acid3が環境ごとに異なるメモリ異常を起こしたので、coreを調べてshared shapeの弱参照キャッシュを修正しました。
Rust製JavaScript EngineのBoaのTest262実行中にallocatorのエラーで落ちた問題を調べたら、Promise解決処理中の保持不足が原因だった。
Rust製JavaScript EngineのBoaに追加したスタック保護がASANのfake stackで浅い入力まで拒否していたので、ローカル変数のアドレスからスタックポインタを直接読む方式へ変更しました。
Rust製JavaScript EngineのBoaで、未最適化パーサーが有効なJavaScriptの解析中に2 MiBのスタックを使い切ってabortしたので、スタック使用量を減らして過深な入力を構文エラーにしました。
Rust製JavaScript EngineのBoaのTest262をx86_64とARM64で実行したところ、Float16変換の10ケースだけ結果が違ったので原因を調べました。