We should be able to automatically generate the initializeOriginTrialsForCore and initializeOriginTrialsForModules functions, based on the contents of IDL files.
Moving this nonessential bug to the next milestone. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Bumping to M62 (EOQ3), and raising priority, as this is becoming increasingly cumbersome for feature developers.
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
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
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
Comment 1 by sheriffbot@chromium.org
, Jul 8 2016