Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upPerformanceResourceTiming: startTime #21254
Comments
|
Hi! If you have any questions regarding this issue, feel free to make a comment here, or ask it in the If you intend to work on this issue, then add |
|
Hey @avadacatavra |
|
@highfive: assign me Taking it up for now :D |
|
Hey @chirgjn! Thanks for your interest in working on this issue. It's now assigned to you! |
|
Hi @chirgjn--thanks for taking this on! Let me know if there's any help you need |
|
@avadacatavra thanks. I'm able to build servo on my machine but apart from that I'm having a hard time. |
|
@jdm Since FetchStart is now set up, Can I work on this? |
|
@chirgjn :Thanks |
|
I suggest that we add an API to ResourceFetchTiming called set_attribute_from that takes two ResourceAttribute arguments and sets the first attribute based on the value of the second attribute. |
|
I was thinking it could be added as part of fixing this issue. |
|
@highfive: assign me |
|
Hey @davidweitzenfeld! Thanks for your interest in working on this issue. It's now assigned to you! |
|
@davidweitzenfeld It looks like you made a pull request against your fork, not servo/servo :) |
|
@davidweitzenfeld It looks like you made progress but never returned to make the PR against the right repository. Are you still planning to complete this work? |
|
Unassigning due to lack of response. |
|
Hello! This sounds like a perfect first issue for me. I some Rust experience, but I never contributed to such a project. If it is possible, then: @highfive: assign me :-) |
|
Hey @pag4k! Thanks for your interest in working on this issue. It's now assigned to you! |
|
Hello!
Thank you! |
|
|
More questions!
|
|
Well, I think I can answer my first question: |
|
Unassigning due to lack of activity. |
|
@highfive: assign me (please!) |
|
Hey @pajamapants3000! Thanks for your interest in working on this issue. It's now assigned to you! |
|
@jdm I created #24430 for adding the UPDATE: this commit shows what I'm thinking. If this seems preferable, let me know and I'll make a PR and close the one in #24430. |
|
I like that idea! |
|
Hey folks, just an update: I didn't get lost; still working on this. I think I have a solution, I'm just figuring out the whole testing issue. This has proven rather time-consuming, given how long it takes to run the full test-wpt suite. That, and just familiarizing myself with everything. I am currently attempting to see if my changes have resulted in any difference in the test-wpt results. It appears that most/all of the relevant wpt encompass multiple features, many of which (e.g. duration) have not yet been implemented. If implementing start time isn't enough to turn any FAILs to PASSes, I may add a unit-test or two and possibly some tests under tests/wpt/mozilla. If anyone has anything to suggest or add, please let me know! Otherwise, I'll continue on and hopefully have a PR ready sometime this weekend. |
|
How are you running your tests? You should really only be running a single directory like resource-timing, not the whole testsuite. |
Add start_time to resource timing. <!-- Please describe your changes on the following line: --> `start_time` property added to `ResourceFetchTiming`, which enables the setting of `start_time` in the `PerformanceEntry` member of `PerformanceResourceTiming`. Following the specification at https://w3c.github.io/resource-timing/#dfn-starttime, `start_time` is set to the value of `redirect_start` if redirection occurs and the timing allow check passes. Otherwise it has the same value as `fetch_start`. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21254 <!-- Either: --> - [x] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Add start_time to resource timing. <!-- Please describe your changes on the following line: --> `start_time` property added to `ResourceFetchTiming`, which enables the setting of `start_time` in the `PerformanceEntry` member of `PerformanceResourceTiming`. Following the specification at https://w3c.github.io/resource-timing/#dfn-starttime, `start_time` is set to the value of `redirect_start` if redirection occurs and the timing allow check passes. Otherwise it has the same value as `fetch_start`. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21254 <!-- Either: --> - [x] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Add start_time to resource timing. <!-- Please describe your changes on the following line: --> `start_time` property added to `ResourceFetchTiming`, which enables the setting of `start_time` in the `PerformanceEntry` member of `PerformanceResourceTiming`. Following the specification at https://w3c.github.io/resource-timing/#dfn-starttime, `start_time` is set to the value of `redirect_start` if redirection occurs and the timing allow check passes. Otherwise it has the same value as `fetch_start`. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21254 <!-- Either: --> - [x] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
In components/net/http_loader.rs::http_fetch we need to set start_time for the PerformanceEntry member of PerformanceResourceTiming. This will be equal to either fetch_start or redirect_start.
Spec: https://w3c.github.io/resource-timing/#dfn-starttime