Closed Bug 1043083 Opened 10 years ago Closed 6 years ago

Implement the Navigation Timing 2 spec

Categories

(Core :: DOM: Core & HTML, defect)

34 Branch
x86_64
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: crimsteam, Unassigned)

References

(Blocks 1 open bug, )

Details

(Keywords: dev-doc-needed)

User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0 (Beta/Release)
Build ID: 20140716183446

Steps to reproduce:

Main differences relative to the first version:

 - support for Performance Timeline (still missing in Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=765933);
 - support for High Resolution Time;
 - timing information for link negotiation;
 - timing information for prerender;
 - Performance interface inherit from EventTarget interface << we can use event handler but don't see any dedicated event.

And if you plans to implement  "Navigation Timing 2" what about the previous  "Navigation Timing" and their interfaces, will stay? In practice we can use both spec because differences are significant. Common feature probably will be only Performance : EventTarget.  

At now only IE support new spec, but spec is still as draft.  Any information relating to planned implementation by Mozilla team will be indicated.
Jared, should this be NEW rather than UNCONFIRMED? I'm asking you because you're on bug 765933. Thanks!
Would really love to have v2 or at least the transfer, encoded body and decoded body size. https://www.w3.org/TR/navigation-timing-2/#widl-PerformanceNavigationTiming-transferSize

In FF 45 we got Resource Timings V2 that gave us the size of resources. If we also got it in Navigation Timing, it's possible to calculate the total page weight (we are missing the base page right now). That would be the final piece of the puzzle to track total page size.
Blocks: 1275235
It would be nice to have this in order to expose the `workerStart` attribute tracking the service worker startup time.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Looks like at least some of navigation timing v2 is being implemented in bug 1263722.
Depends on: 1263722
This API is already implemented and enabled by default. The last remaining bits are going to be fixed by bug 1462606.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
State of MDN docs for Navigation Timing Level 2

First, some deprecations:

PerformanceTiming is now deprecated (but kept for backwards compatibility), so I've added a note at the top of these pages:
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/connectEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/connectStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domainLookupEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domainLookupStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domComplete
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domContentLoadedEventEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domContentLoadedEventStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domInteractive
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/domLoading
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/fetchStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/loadEventEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/loadEventStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/navigationStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/redirectEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/redirectStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/requestStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/responseEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/responseStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/secureConnectionStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/unloadEventEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming/unloadEventStart
The compat table will be updated soon as well and also indicate the deprecation. See https://github.com/mdn/browser-compat-data/pull/1635

Same for PerformanceNavigation:
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigation
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigation/redirectCount
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigation/type
Compat table update for this deprecation in https://github.com/mdn/browser-compat-data/pull/2491

And also the same for Performance.timing and Performance.navigation
https://developer.mozilla.org/en-US/docs/Web/API/Performance
https://developer.mozilla.org/en-US/docs/Web/API/Performance/timing
https://developer.mozilla.org/en-US/docs/Web/API/Performance/navigation
Compat tables are renewed in this PR https://github.com/mdn/browser-compat-data/pull/1692

Second, the new stuff:

PerformanceEntry is extended, so these pages talk about that:
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry/duration
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry/entryType
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry/name
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry/startTime
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceEntry/toJSON
Compat tables are renewed in this PR https://github.com/mdn/browser-compat-data/pull/1298

There is a new interface PerformanceNavigationTiming. Pages got created here a while ago:
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/domComplete
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/domContentLoadedEventEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/domContentLoadedEventStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/domInteractive
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/loadEventEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/loadEventStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/redirectCount
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/type
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/unloadEventEnd
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/unloadEventStart
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/toJSON
Compat tables are already renewed.

The guides and tutorials still talk about Level 1 and need updating:
https://developer.mozilla.org/en-US/docs/Web/API/Navigation_timing_API
https://developer.mozilla.org/en-US/docs/Web/API/Navigation_timing_API/Using_Navigation_Timing
I've filed bug 1476558 for this work.

I would appreciate a comment if all this makes sense and covers the Level 2 spec changes.
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.