-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate failure of URL parsing tests #26287
Comments
The spec is mainly at https://html.spec.whatwg.org/multipage/#parse-a-url Which is used in various places in the |
Also, the test is called |
Code would be in various places, such as:
|
@gterzian I see that the return type of window.open() is currently However, in step 13 of the window open steps we are expected to throw a "SyntaxError" DomException when the parse URL algorithm fails (as listed above). So if the operation is fallible, shouldn't the IDL specify it as such?
As far as I can tell, in Gecko we do consider the operation as fallible. |
Yes I think that's correct, good catch, so that would then indeed be a change required to implement the URL parsing changes. |
So, I did update the window.open() method to return a fallible result and it seems we are able to pass quite a few url failure tests for window.open(). I am not sure if I should raise a PR that partially resolves the issue. Also, I think the urls for which we had to mark some tests as FAIL for the location interface also got parsed correctly here for window.open(), though I haven't gone through the |
yes I think a PR just for the window.open part would be great! Let me know what you find out about the other tests... |
Update window.open() to return fallible result - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes partially fix #26287 - [x] There are tests for these changes
Ok, thanks! I didn't see that PR before it had already merged! :) |
After digging a little bit, I was able narrow down the issue to two things:
@gterzian I wonder if I should address these in two separate PRs? |
Addressing those separately makes sense to me. The fix for the fallback base url would also help in #24944 (comment) which has some additional information; it's going to require passing some information around about the browsing context creator when loading iframes so documents can store it appropriately. |
Thanks, since I have tried updating the dependency locally, I can raise a PR for it right away (though I haven't run all the wpt tests), updating the |
Bump rust-url from 2.1.0 to 2.1.1 - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes **partially** fix #26287 - [x] There are tests for these changes
Bump rust-url from 2.1.0 to 2.1.1 - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix (partially) #26287 - [x] There are tests for these changes
I'd like to reiterate the observations in #26231 (comment). As per the README:
For all the tests that are expected to fail, the input must be parsed against Edit: It seems Firefox also marks these tests as failure. |
Follow up from #26231
The PR marks some tests as FAIL, see https://github.com/servo/servo/pull/26231/files#diff-6c940171cdc241cde1caf796556840caR132
Actually that file contained a bunch of existing test failures already, related to things other than the use of
location
, and those could be investigated as well.For discussion, see #26231 (comment)
The text was updated successfully, but these errors were encountered: