New issue
Advanced search Search tips

Issue 615060 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Feature

Blocked on:
issue 695123



Sign in to add a comment

Generate code to install origin-trial-enabled attributes and interfaces

Project Member Reported by iclell...@chromium.org, May 26 2016

Issue description

We should be able to automatically generate the initializeOriginTrialsForCore and initializeOriginTrialsForModules functions, based on the contents of IDL files.
 
Project Member

Comment 1 by sheriffbot@chromium.org, Jul 8 2016

Labels: -M-53 M-54 MovedFrom-53
Moving this nonessential bug to the next milestone.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -M-54 M-56

Comment 3 by mgiuca@chromium.org, Mar 30 2017

Blockedon: 695123
Labels: -M-56 -Pri-3 -MovedFrom-53 M-62 Pri-2
Status: Started (was: Assigned)
Bumping to M62 (EOQ3), and raising priority, as this is becoming increasingly cumbersome for feature developers.
Project Member

Comment 5 by bugdroid1@chromium.org, Jul 19 2017

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

commit d25397270d7f955de0988221f919a0b67f91f159
Author: iclelland <iclelland@chromium.org>
Date: Wed Jul 19 18:13:09 2017

Add code generation for ConditionalFeatures bindings code

This replaces the handwritten ConditionalFeaturesFor{Core,Modules}.cpp files with a script which reads IDL files looking for the appropriate extended attributes (just OriginTrialEnabled currently) and generates the required code to install those features at runtime.

BUG= 615060 

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

[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/bindings.gni
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/core/v8/BUILD.gn
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/modules/v8/BUILD.gn
[delete] https://crrev.com/71f161e3bd95827876f67c656168f936d88a6e3a/third_party/WebKit/Source/bindings/modules/v8/ConditionalFeaturesForModules.cpp
[delete] https://crrev.com/71f161e3bd95827876f67c656168f936d88a6e3a/third_party/WebKit/Source/bindings/modules/v8/ConditionalFeaturesForModules.h
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/modules/v8/v8.gni
[add] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/scripts/generate_conditional_features.py
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/scripts/scripts.gni
[add] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/templates/ConditionalFeaturesForCore.cpp.tmpl
[rename] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/templates/ConditionalFeaturesForCore.h.tmpl
[add] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/templates/ConditionalFeaturesForModules.cpp.tmpl
[add] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/templates/ConditionalFeaturesForModules.h.tmpl
[rename] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/tests/results/core/ConditionalFeaturesForCore.cpp
[copy] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/tests/results/core/ConditionalFeaturesForCore.h
[add] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/tests/results/modules/ConditionalFeaturesForModules.cpp
[add] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/bindings/tests/results/modules/ConditionalFeaturesForModules.h
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Source/modules/BUILD.gn
[modify] https://crrev.com/d25397270d7f955de0988221f919a0b67f91f159/third_party/WebKit/Tools/Scripts/webkitpy/bindings/bindings_tests.py

Project Member

Comment 6 by bugdroid1@chromium.org, Jul 20 2017

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

commit a94fcfb2cbb571f1fe9367a800e538906a31523f
Author: Ian Clelland <iclelland@google.com>
Date: Thu Jul 20 03:43:48 2017

Update Origin Trials integration docs.

Two changes have landed recently which need to be reflected in
documentation for origin trials:

- Trials are disabled automatically in the virtual test suite, and do
    not have to be named explicitly in VirtualTestSuites.
- V8 bindings code is now generated automatically

This documentation change brings the developer docs up to date with reality.

BUG= 685788 ,  615060 

Change-Id: Icec69074b654bc749d790136de4e3a72855e3660
Reviewed-on: https://chromium-review.googlesource.com/578171
Reviewed-by: Jason Chase <chasej@chromium.org>
Commit-Queue: Ian Clelland <iclelland@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488127}
[modify] https://crrev.com/a94fcfb2cbb571f1fe9367a800e538906a31523f/docs/origin_trials_integration.md

Status: Fixed (was: Started)
Project Member

Comment 8 by bugdroid1@chromium.org, Nov 16 2017

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

commit 1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c
Author: Hitoshi Yoshida <peria@chromium.org>
Date: Thu Nov 16 01:54:46 2017

bindings: Rename ConditionalFeature to OriginTrialFeature

Files introduced in https://crrev.com/487917 are still focusing on
only origin trials. It is confusing until it introduces other
conditional features.
Beside it, this name "ConditionalFeatures" is easy to conflict with
other methods in bindings code generation.

So this CL renames them to use OriginTrial.


TBR=dpranke

Bug:  615060 
Change-Id: I4ae8bd559fe3c1af09b5313a03bc009f05b79b6f
Reviewed-on: https://chromium-review.googlesource.com/770517
Commit-Queue: Hitoshi Yoshida <peria@chromium.org>
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Cr-Commit-Position: refs/heads/master@{#516949}
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/WATCHLISTS
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/core/v8/BUILD.gn
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/core/v8/V8ContextSnapshot.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/core/v8/WorkerOrWorkletScriptController.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/modules/v8/BUILD.gn
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/modules/v8/ModuleBindingsInitializer.cpp
[rename] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/scripts/generate_origin_trial_features.py
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/scripts/scripts.gni
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/scripts/v8_interface.py
[delete] https://crrev.com/dfc102ecb13e25634a92e2dd7d38646276acab3b/third_party/WebKit/Source/bindings/templates/ConditionalFeaturesForCore.h.tmpl
[delete] https://crrev.com/dfc102ecb13e25634a92e2dd7d38646276acab3b/third_party/WebKit/Source/bindings/templates/ConditionalFeaturesForModules.h.tmpl
[rename] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/templates/OriginTrialFeaturesForCore.cpp.tmpl
[add] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/templates/OriginTrialFeaturesForCore.h.tmpl
[rename] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/templates/OriginTrialFeaturesForModules.cpp.tmpl
[add] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/templates/OriginTrialFeaturesForModules.h.tmpl
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/templates/interface_base.cpp.tmpl
[delete] https://crrev.com/dfc102ecb13e25634a92e2dd7d38646276acab3b/third_party/WebKit/Source/bindings/tests/results/core/ConditionalFeaturesForCore.h
[rename] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/tests/results/core/OriginTrialFeaturesForCore.cpp
[add] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/tests/results/core/OriginTrialFeaturesForCore.h
[delete] https://crrev.com/dfc102ecb13e25634a92e2dd7d38646276acab3b/third_party/WebKit/Source/bindings/tests/results/modules/ConditionalFeaturesForModules.cpp
[delete] https://crrev.com/dfc102ecb13e25634a92e2dd7d38646276acab3b/third_party/WebKit/Source/bindings/tests/results/modules/ConditionalFeaturesForModules.h
[add] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/tests/results/modules/OriginTrialFeaturesForModules.cpp
[add] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/bindings/tests/results/modules/OriginTrialFeaturesForModules.h
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/core/testing/v8/WebCoreTestSupport.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/core/testing/v8/WebCoreTestSupport.h
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/modules/BUILD.gn
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/modules/exported/WebTestingSupport.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/platform/BUILD.gn
[delete] https://crrev.com/dfc102ecb13e25634a92e2dd7d38646276acab3b/third_party/WebKit/Source/platform/bindings/ConditionalFeatures.cpp
[add] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/platform/bindings/OriginTrialFeatures.cpp
[rename] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/platform/bindings/OriginTrialFeatures.h
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Source/platform/bindings/V8PerContextData.cpp
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/WebKit/Tools/Scripts/webkitpy/bindings/bindings_tests.py
[modify] https://crrev.com/1ee1fb80275f7e85ba0c614ffa5a89bad2434b2c/third_party/blink/tools/move_blink_source.py

Sign in to add a comment