New issue
Advanced search Search tips

Issue 667795 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Dec 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 1
Type: Bug



Sign in to add a comment

Fix V8 bindings for LongTaskObserver origin trial

Project Member Reported by cha...@chromium.org, Nov 22 2016

Issue description

The IDL/V8 bindings are missing for the LongTaskObserver origin trial. Unfortunately, the documentation is a little vague on this point:
https://github.com/jpchase/OriginTrials/blob/gh-pages/ship-as-trial.md#how-to-integrate-your-feature-with-the-framework

When marked as an origin trial (in RuntimeEnabledFeatures.in), there are specific V8 bindings methods generated. Until  issue 615060  is addressed, manual code changes are required to call the generated methods.

For Long Task Observer, the method in question is V8Window::installLongTaskObserver().

This wasn't noticed previously, as long task timing is used by passing a new string to an existing JS API, not by calling a newly-exposed JS method.

However, it's not currently possible to do feature detection by checking for window.PerformanceLongTaskTiming.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Dec 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e72c2aa444360ae4f3eea4e923aeb0130e081dd2

commit e72c2aa444360ae4f3eea4e923aeb0130e081dd2
Author: chasej <chasej@chromium.org>
Date: Thu Dec 01 01:18:58 2016

Fix V8 bindings for LongTaskObserver origin trial

Currently, exposing a JavaScript API change as an origin trial requires
manual code changes to V8 bindings. The necessary binding changes were
missing when Long Task Observer was integrated with the origin trials
framework.

This CL adds the missing call to the generated method:
V8Window::installLongTaskObserver()

BUG= 667795 

Review-Url: https://codereview.chromium.org/2533793003
Cr-Commit-Position: refs/heads/master@{#435515}

[modify] https://crrev.com/e72c2aa444360ae4f3eea4e923aeb0130e081dd2/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/e72c2aa444360ae4f3eea4e923aeb0130e081dd2/third_party/WebKit/Source/bindings/core/v8/ConditionalFeatures.cpp

Status: Fixed (was: Started)
Status: Verified (was: Fixed)
Verified that window.PerformanceLongTaskTiming is now correctly exposed in Canary 57.0.2939.0.
Labels: Merge-Request-56

Comment 5 by dimu@chromium.org, Dec 2 2016

Labels: -Merge-Request-56 Merge-Approved-56 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M56 (branch: 2924)
M56 Beta promotion is scheduled on Dec 6 & RC cut on Monday, Dec 5 @ 4.00 PM PST.Please merge your change ASAP so that we could take it for next Release.
Project Member

Comment 7 by bugdroid1@chromium.org, Dec 2 2016

Labels: -merge-approved-56 merge-merged-2924
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6c7764973a6167d34a1cff70cf67800734f8f52c

commit 6c7764973a6167d34a1cff70cf67800734f8f52c
Author: Jason Chase <chasej@chromium.org>
Date: Fri Dec 02 20:56:29 2016

Fix V8 bindings for LongTaskObserver origin trial

Currently, exposing a JavaScript API change as an origin trial requires
manual code changes to V8 bindings. The necessary binding changes were
missing when Long Task Observer was integrated with the origin trials
framework.

This CL adds the missing call to the generated method:
V8Window::installLongTaskObserver()

BUG= 667795 

Review-Url: https://codereview.chromium.org/2533793003
Cr-Commit-Position: refs/heads/master@{#435515}
(cherry picked from commit e72c2aa444360ae4f3eea4e923aeb0130e081dd2)

Review URL: https://codereview.chromium.org/2543353002 .

Cr-Commit-Position: refs/branch-heads/2924@{#299}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/6c7764973a6167d34a1cff70cf67800734f8f52c/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/6c7764973a6167d34a1cff70cf67800734f8f52c/third_party/WebKit/Source/bindings/core/v8/ConditionalFeatures.cpp

Sign in to add a comment