For the Performance.queueEntry(name, startTime, duration), do we need to validate name, start_time, duration? I guess taking string and time should be safe?
Shubhie, should negative start times be allowed?
Nicolas, the plan is to do an early prototype to help inform the spec process.
In terms of validation:
• name: should be the same as mark & measure
• time: we should make sure it's a high res timestamp.
• duration: we should make sure it's a high res timestamp.
I think that's it?
Negative durations are legal.
Talked offline with Tim. These are what we will/won't implement for now:
CustomPerformanceEntry: Support the class, Support detail
Performance.queueEntry(): Support the method, support detail
Performance.mark(): Support detail, won't support ignoreForAnalytics
Performance.measure(): Support detail
PerformanceMark: Support detail, won't support ignoreForAnalytics
PerformanceMeasure: Support detail
PerformanceObserver.observe(): won't Support namespace
For queueEntry, start_time and duration parameters will be mandatory.
I'm not working on this particular spec but we should push it forward during TPAC. AFAIK L2 has reached CR so now we are good to ship all the L3 changes we want. I see that there is an issue on this but no feedback https://github.com/w3c/user-timing/issues/43
Good you ask! Spec work is mostly done since https://github.com/w3c/user-timing/pull/46 has landed, so not blocked on spec. I'm missing constructors though, but that's a smaller change.
Could you go over https://w3c.github.io/user-timing/ and make sure Chrome's IDL follows? I think I simplified the API a bit but Chrome's implementation is still on the old proposal.
Spec work is done so please send an I2S and change Chrome's implementation so that it aligns with https://w3c.github.io/user-timing. I didn't get a clear answer on whether the Fetch use case requires a PerformanceMeasure constructor so for now we're only having a PerformanceMark constructor.
What's the behavior should be when we pass NaN or infinities to the second argument of performance.mark() or as startTime? Should the spec discuss about it?
Yea Ilya was also asking about having some checks to ensure sane values. I think maybe we should throw an exception for values <= 0 and >= something, not sure what the something should be? (It shouldn't be CurrentTimeTicks() because that would incur the cost of actually calling that).
Comment 1 by npm@chromium.org
, Aug 23 2017