ladybird/Tests
Andreas Kling 6eba8860f7 LibWeb: Add a lazy fast reject filter for :has()
Build a per-anchor Bloom-style filter for :has() argument matching
after an anchor sees a second check for the same traversal scope. The
filter stores salted tag, id, class, and attribute-name hashes from the
child or descendant scope and rejects arguments whose required
identifiers are absent.

This avoids repeatedly walking the same subtree for unrelated :has()
arguments while preserving the single-check case. More complex
direct-child arguments use the descendant scope so hashes from later
descendant compounds cannot cause false rejections.

Keep the filter conservative for quirks-mode class selectors and for
sibling-combinator relative selectors during invalidation metadata
collection. Text tests cover cache-primed misses for both cases.
2026-06-19 14:52:48 +02:00
..
AK AK: Remove custom deleters from OwnPtr 2026-06-13 22:49:15 +02:00
ClangPlugins LibGC: Default-construct RootHashMap from the global heap 2026-05-20 20:37:55 +02:00
LibCompress LibCompress: Remove PackBitsDecoder 2026-06-12 22:37:49 +02:00
LibCore LibThreading: Remove BackgroundAction 2026-06-05 20:00:12 +02:00
LibCrypto LibCrypto: Restore cached tag when a failed ASN1 read is rolled back 2026-06-09 08:02:44 +01:00
LibDatabase LibDatabase: Allow String values to contain embedded null bytes 2026-02-14 10:25:33 -05:00
LibDevTools LibDevTools+LibWeb: Let DevTools remove IndexedDB data 2026-06-19 14:25:39 +02:00
LibDiff AK: Remove unused include from MemoryStream 2026-02-17 12:38:51 +00:00
LibDNS Tests/LibDNS: Make TestDNSResolver independent of live DNS 2026-06-17 18:27:33 +02:00
LibGC LibGC: Introduce ConservativeHashTable 2026-05-28 21:16:23 +02:00
LibGfx LibGfx: Reject undersized backing storage when creating bitmaps 2026-06-19 13:43:07 +02:00
LibHTTP LibWeb: Preserve JS bytecode in memory cache 2026-06-06 09:15:09 +02:00
LibIPC LibIPC: Don’t dispatch queued messages when sync IPC peer disconnects 2026-05-24 10:00:31 +02:00
LibJS LibJS: Evaluate ToNumber for out-of-bounds typed array writes 2026-06-17 21:24:33 +02:00
LibMedia LibMedia: Rename timing getters in AudioBlock 2026-06-06 19:58:17 -05:00
LibRegex LibRegex: Inline \w and \d ranges in legacy positive char classes 2026-04-21 16:36:38 +02:00
LibTest CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibTextCodec LibTextCodec: Stop buffering invalid UTF-8 tails 2026-05-18 14:08:22 +02:00
LibThreading LibThreading: Remove BackgroundAction 2026-06-05 20:00:12 +02:00
LibTLS Meta: Rename and merge some lagom_* and ladybird_* 2026-05-05 22:08:24 +02:00
LibUnicode LibUnicode: Add an ASCII fast path for line break segmentation 2026-05-05 18:59:07 +02:00
LibURL LibURL: Let Host use PublicSuffixData star rule matching 2026-06-16 06:14:07 +02:00
LibWasm LibJS: Isolate ArrayBuffer backing stores 2026-06-10 14:50:10 +02:00
LibWeb LibWeb: Add a lazy fast reject filter for :has() 2026-06-19 14:52:48 +02:00
LibWebView Tests: Wait for session history convergence in UI history assertions 2026-06-18 10:23:49 +02:00
LibXML CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
Meta Meta: Handle juxtaposition in CSS value parsing code generation 2026-05-13 11:26:20 +01:00
CMakeLists.txt Tests: Add a LibDevTools test suite 2026-05-27 08:55:02 +01:00