New issue
Advanced search Search tips

Issue 601108 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug


Sign in to add a comment

Store list of origin trial tokens separately from the DOM tree

Project Member Reported by mek@chromium.org, Apr 6 2016

Issue description

Currently the list of origin trial tokens is implicitly stored as part of the DOM tree (the code just iterates over all <meta> tags in the <head> to find active tokens). We should change this to store the list of tokens separately.

This will enable:
- associating tokens with workers (who don't have a DOM tree)
- specifying tokens via http headers
- possibly limit which tokens are active depending on when they were
  inserted in a document.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Apr 6 2016

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

commit b03579678fa2678748d5cbcec2e18a8a08e40701
Author: mek <mek@chromium.org>
Date: Wed Apr 06 18:02:57 2016

Store the list of trial tokens in OriginTrialContext

Refactor the way tokens are found by storing them separately from the
document tree in OriginTrialContext.

This simplifies the architecture a bit, making it easier to:
- add support for tokens specified in http headers.
- add support for trials in workers.
- somehow limit which tokens are considered "valid".

BUG= 601108 

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

Cr-Commit-Position: refs/heads/master@{#385504}

[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/LayoutTests/http/tests/origin_trials/resources/origin_trials.js
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/build/scripts/templates/OriginTrials.cpp.tmpl
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/build/scripts/templates/OriginTrials.h.tmpl
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/core.gypi
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/dom/Document.cpp
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/dom/Document.h
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/dom/ExecutionContext.cpp
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/dom/ExecutionContext.h
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/loader/HttpEquiv.cpp
[delete] https://crrev.com/5a0d86fd06f902af87107e8c5bc1564e1a1bc853/third_party/WebKit/Source/core/origin_trials/DocumentOriginTrialContext.cpp
[delete] https://crrev.com/5a0d86fd06f902af87107e8c5bc1564e1a1bc853/third_party/WebKit/Source/core/origin_trials/DocumentOriginTrialContext.h
[delete] https://crrev.com/5a0d86fd06f902af87107e8c5bc1564e1a1bc853/third_party/WebKit/Source/core/origin_trials/DocumentOriginTrialContextTest.cpp
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.h
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/core/origin_trials/OriginTrialContextTest.cpp
[modify] https://crrev.com/b03579678fa2678748d5cbcec2e18a8a08e40701/third_party/WebKit/Source/platform/network/HTTPNames.in

Comment 2 by mek@chromium.org, Apr 6 2016

Status: Fixed (was: Started)

Comment 3 by kbr@chromium.org, Apr 8 2016

Blocking: 601656

Comment 4 by kbr@chromium.org, Apr 8 2016

Blocking: 601282

Comment 5 by cha...@chromium.org, Feb 14 2017

Blocking: -588151

Sign in to add a comment