Contact emails
Explainer
https://w3c.github.io/performance-timeline/#introduction
Design doc/Spec
https://w3c.github.io/performance-timeline/#performanceobserverinit-dictionary
This is a small addition to PerformanceTimeline and designed with input from the WebPerf WG so TAG review is being skipped.
Summary
By calling observer.observe({buffered: true…}), a PerformanceObserver can receive entries that are buffered, i.e. created before this call is executed.
Motivation
The PerformanceObserver is an efficient API to provide developers with access to various PerformanceEntries. Compared to the legacy Performance Timeline, it doesn’t require polling, and enables developers to easily process and report the performance entries they care about, while giving the browser more control over *when* that processing happens. However, the current API encourages developers to register PerformanceObservers as early as possible, or run the risk of missing some early entries, a deficiency that the performance timeline doesn’t suffer from.
This small addition to the API enables developers to also observe entries that were buffered *before* the observer was registered, enabling them to use PerformanceObserver with all the benefits and none of the downsides, without incentivizing running analytics-related scripts early in the page load.
Risks
Interoperability and Compatibility
There is some risk of other browsers not implementing, but I think it is low because this is a very desirable and easy-to-implement on top of PerformanceObserver.
Proposal discussed in a F2F a couple years ago and more recently at TPAC.
Edge: Public support
Firefox: Positive signals
Safari: Public support
Web / Framework developers: Strong public support, to the point that at some point they did some spec work :)
Ergonomics
This flag is used in the observe() call of PerformanceObserver, using ‘type’ to specify the entry type, for example po.observe({type: ‘mark’, buffered: true}).
Activation
Easy to use: the way to get the entries is the same as before (they will be dispatched to the observer callback).
Debuggability
Direct debugging in JavaScript.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes.
Is this feature fully tested by web-platform-tests?
Most tests concerning the buffered flag are in https://cs.chromium.org/chromium/src/third_party/blink/web_tests/external/wpt/performance-timeline/
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/5118272741572608
Requesting approval to ship?
Yes.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/caa0c108-d221-4d13-9435-ed3cbd52a6a2%40chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-Q5S8OQV4Dtc8SvAVYDf_b9DJSwvq2xCSNeM%3DNHV9fUA%40mail.gmail.com.
LGTM1
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/caa0c108-d221-4d13-9435-ed3cbd52a6a2%40chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-Q5S8OQV4Dtc8SvAVYDf_b9DJSwvq2xCSNeM%3DNHV9fUA%40mail.gmail.com.
LGTM1
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/caa0c108-d221-4d13-9435-ed3cbd52a6a2%40chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-Q5S8OQV4Dtc8SvAVYDf_b9DJSwvq2xCSNeM%3DNHV9fUA%40mail.gmail.com.
--/* Opera Software, Linköping, Sweden: CEST (UTC+2) */
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8498ca85-ac1a-4267-8f56-ce3cffe16ff0%40chromium.org.