Repository navigation
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (2)
💤 Files with no reviewable changes (1)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. WalkthroughThe IPv6 parser now accepts compressed literals with an embedded IPv4 tail after five preceding pieces. Tests cover three normalized valid addresses and one overfull invalid address. ChangesIPv6 embedded IPv4 parsing
Priority: ⬇️ Low Merge Risk: ⚪ Minimal · up to The change adds targeted compressed IPv6 dotted-tail support with regression coverage; no confirmed production or test-blocking risk is identified. 🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
Warning Git: CodeRabbit could not clone the repository, so clone-backed analysis was skipped and this review may be incomplete. Verify repository clone access, such as SSH credentials, before requesting another full review. If clone access is intentionally unavailable, use Comment |
|
#909 carries this commit unchanged, with you as its author. It adds the fix for the other difference between #909 is on a branch of this repository, so CI builds it and runs the |
URLParser should parse IPv4 addresses as the last two pieces of an IPv6 address
https://bugs.webkit.org/show_bug.cgi?id=162991
Reviewed by NOBODY (OOPS!).
Follow-up to bug 162991. The IPv6 parser rejects a valid compressed address when the compression marker leaves two zero pieces before a dotted IPv4 tail. The
compressPointer && piecePointer == 5check is stricter than the WHATWG IPv6 parser, which rejects an embedded IPv4 address only whenpieceIndexis greater than 6.Remove the extra rejection. The existing piece bounds and compression logic continue to reject addresses that do not fit. Add regression coverage for loopback, private, and public dotted tails and an overfull invalid address. Ada and Node accept the valid forms and canonicalize the dotted tail into two hexadecimal pieces.
AI-assisted: implementation and tests were developed with Codex and reviewed by a separate Codex pass; I inspected and validated the result.
Validation:
git diff --checkand a focused P0-P2 review pass.(WTF::URLParser::parseIPv6Host): Remove the nonstandard compressed IPv4-in-IPv6 rejection.
(TestWebKitAPI::TEST_F): Cover valid canonicalization and the overfull invalid boundary in WTF_URLParser.ParserDifferences.