|
|
Created:
3 years, 7 months ago by alex clarke (OOO till 29th) Modified:
3 years, 7 months ago CC:
chromium-reviews, caseq+blink_chromium.org, lushnikov+blink_chromium.org, pfeldman+blink_chromium.org, apavlov+blink_chromium.org, devtools-reviews_chromium.org, blink-reviews, blink-reviews-bindings_chromium.org, kozyatinskiy+blink_chromium.org Target Ref:
refs/heads/master Project:
chromium Visibility:
Public. |
DescriptionAdd a DevTools command to create an isolated world for a given frame
DevTools already has the ability to run script in any execution context,
it' just can't by itself create an isolated world. This patch adds that
ability. We believe this will be useful for Headless chrome users who
whish to manipulate the dom. They can already do this via devtools
protocol but running a script in an isolated world should be easier to
work with.
BUG=546953
Review-Url: https://codereview.chromium.org/2848653003
Cr-Commit-Position: refs/heads/master@{#470870}
Committed: https://chromium.googlesource.com/chromium/src/+/fa3fdf20cea4dbedd74476a40649e708ab1827a0
Patch Set 1 #
Total comments: 6
Patch Set 2 : Add missing expects #
Total comments: 1
Patch Set 3 : Changed so we don't pass in the id #
Total comments: 3
Patch Set 4 : Change the way isolated world ids are obtained #Patch Set 5 : Tweaks #Patch Set 6 : Remove pointless check #
Total comments: 6
Patch Set 7 : Changes for Sami #
Total comments: 10
Patch Set 8 : Changes for caseq #Patch Set 9 : Fix test #
Total comments: 2
Patch Set 10 : Added WorldType::kInspectorIsolated as requested #Patch Set 11 : Fix compile ;) #
Total comments: 2
Patch Set 12 : Inlined the function as requested #Patch Set 13 : Rebased #Messages
Total messages: 85 (51 generated)
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
alexclarke@chromium.org changed reviewers: + pfeldman@chromium.org, skyostil@chromium.org
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm6...)
That's something that all the automation clients were asking for, so great to have it! https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... third_party/WebKit/Source/core/inspector/browser_protocol.json:517: { "name": "worldId", "type": "integer", "description": "Id of the isolated world. Must be >= 1 and < 1<<29." }, I'd rather return the worldId. https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... third_party/WebKit/Source/core/inspector/browser_protocol.json:518: { "name": "securityOrigin", "type": "string", "optional": true, "description": "Associates the isolated world with a particular security origin." }, When is it is different from frame?
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... third_party/WebKit/Source/core/inspector/browser_protocol.json:517: { "name": "worldId", "type": "integer", "description": "Id of the isolated world. Must be >= 1 and < 1<<29." }, On 2017/04/27 19:25:42, pfeldman wrote: > I'd rather return the worldId. Yeah, that would make it easier for clients to create multiple worlds without having well known ids. I guess this then becomes createIsolatedWorld. https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... third_party/WebKit/Source/core/inspector/browser_protocol.json:518: { "name": "securityOrigin", "type": "string", "optional": true, "description": "Associates the isolated world with a particular security origin." }, On 2017/04/27 19:25:42, pfeldman wrote: > When is it is different from frame? Discussed offline that we probably want a bool instead: grantUniversalAccess. https://codereview.chromium.org/2848653003/diff/20001/third_party/WebKit/Layo... File third_party/WebKit/LayoutTests/inspector-protocol/page/ensureIsolatedWorld.html (right): https://codereview.chromium.org/2848653003/diff/20001/third_party/WebKit/Layo... third_party/WebKit/LayoutTests/inspector-protocol/page/ensureIsolatedWorld.html:41: { nit: move brace to previous line
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
PTAL https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... third_party/WebKit/Source/core/inspector/browser_protocol.json:517: { "name": "worldId", "type": "integer", "description": "Id of the isolated world. Must be >= 1 and < 1<<29." }, On 2017/04/28 10:12:57, Sami wrote: > On 2017/04/27 19:25:42, pfeldman wrote: > > I'd rather return the worldId. > > Yeah, that would make it easier for clients to create multiple worlds without > having well known ids. I guess this then becomes createIsolatedWorld. Done. https://codereview.chromium.org/2848653003/diff/1/third_party/WebKit/Source/c... third_party/WebKit/Source/core/inspector/browser_protocol.json:518: { "name": "securityOrigin", "type": "string", "optional": true, "description": "Associates the isolated world with a particular security origin." }, On 2017/04/28 10:12:57, Sami wrote: > On 2017/04/27 19:25:42, pfeldman wrote: > > When is it is different from frame? > > Discussed offline that we probably want a bool instead: grantUniversalAccess. Done.
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
caseq@chromium.org changed reviewers: + caseq@chromium.org
https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... File third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp (right): https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp:386: int world_id = 1; I think allocating ids like this is going to bring some unpleasant surprises due to collisions with other world id users that presume authority over their id range and would not check if the world already exists.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... File third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp (right): https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp:386: int world_id = 1; On 2017/04/28 21:41:30, caseq wrote: > I think allocating ids like this is going to bring some unpleasant surprises due > to collisions with other world id users that presume authority over their id > range and would not check if the world already exists. Is there some registry of world ids? Should we just start at a higher number to make collisions less likely? In any case, I would prefer to have the implementation allocate ids instead of assuming users (e.g., different libraries) can keep their ids straight.
https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... File third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp (right): https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp:386: int world_id = 1; On 2017/04/28 21:41:30, caseq wrote: > I think allocating ids like this is going to bring some unpleasant surprises due > to collisions with other world id users that presume authority over their id > range and would not check if the world already exists. OK do you have any suggestions for what else we might do?
On 2017/05/02 10:00:06, alex clarke wrote: > https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... > File third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp (right): > > https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... > third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp:386: int > world_id = 1; > On 2017/04/28 21:41:30, caseq wrote: > > I think allocating ids like this is going to bring some unpleasant surprises > due > > to collisions with other world id users that presume authority over their id > > range and would not check if the world already exists. > > OK do you have any suggestions for what else we might do? Unless we want to reserve a range of world ids for just the protocol clients, I'd say perhaps expose a generic way to allocate world id via the content API similar to what extensions do now (https://cs.chromium.org/chromium/src/extensions/renderer/script_injection.cc?...) and switch extensions to use it.
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
On 2017/05/02 21:37:00, caseq wrote: > On 2017/05/02 10:00:06, alex clarke wrote: > > > https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... > > File third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp (right): > > > > > https://codereview.chromium.org/2848653003/diff/40001/third_party/WebKit/Sour... > > third_party/WebKit/Source/bindings/core/v8/ScriptController.cpp:386: int > > world_id = 1; > > On 2017/04/28 21:41:30, caseq wrote: > > > I think allocating ids like this is going to bring some unpleasant surprises > > due > > > to collisions with other world id users that presume authority over their id > > > range and would not check if the world already exists. > > > > OK do you have any suggestions for what else we might do? > > Unless we want to reserve a range of world ids for just the protocol clients, > I'd say perhaps expose a generic way to allocate world id via the content API > similar to what extensions do now > (https://cs.chromium.org/chromium/src/extensions/renderer/script_injection.cc?...) > and switch extensions to use it. A generic content API would indeed be nice to have, but reserving a small range of IDs sounds like it's more than sufficient for what I want to do here. WDYT?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
On 2017/05/03 13:39:28, alex clarke wrote: > A generic content API would indeed be nice to have, but reserving a small range > of IDs > sounds like it's more than sufficient for what I want to do here. WDYT? My understanding is that from client's prospective the two approaches are going to be indistinguishable, so perhaps we should just opt for whichever is simpler.
On 2017/05/03 22:51:23, caseq wrote: > On 2017/05/03 13:39:28, alex clarke wrote: > > > A generic content API would indeed be nice to have, but reserving a small > range > > of IDs > > sounds like it's more than sufficient for what I want to do here. WDYT? > > My understanding is that from client's prospective the two approaches are going > to be indistinguishable, so perhaps we should just opt for whichever is simpler. That's what I did :) PTAL
Please take another look, thanks!
lgtm https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Lay... File third_party/WebKit/LayoutTests/inspector-protocol/page/createIsolatedWorld.html (right): https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Lay... third_party/WebKit/LayoutTests/inspector-protocol/page/createIsolatedWorld.html:43: { nit: move to end of previous line https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... third_party/WebKit/Source/core/inspector/browser_protocol.json:518: { "name": "grantUniveralAccess", "type": "boolean", "optional": true, "description": "Whether or not universal access should be granted to the isolated world. This is a powerful option, use with cation." } typo: caution https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp (right): https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp:290: next_devtools_isolatd_world_id, typo: isolated
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Pavel PTAL :) https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Lay... File third_party/WebKit/LayoutTests/inspector-protocol/page/createIsolatedWorld.html (right): https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Lay... third_party/WebKit/LayoutTests/inspector-protocol/page/createIsolatedWorld.html:43: { On 2017/05/05 09:33:14, Sami wrote: > nit: move to end of previous line Done. https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... third_party/WebKit/Source/core/inspector/browser_protocol.json:518: { "name": "grantUniveralAccess", "type": "boolean", "optional": true, "description": "Whether or not universal access should be granted to the isolated world. This is a powerful option, use with cation." } On 2017/05/05 09:33:14, Sami wrote: > typo: caution Done. https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp (right): https://codereview.chromium.org/2848653003/diff/100001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp:290: next_devtools_isolatd_world_id, On 2017/05/05 09:33:14, Sami wrote: > typo: isolated Done.
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
lgtm % nits https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp:289: DEFINE_THREAD_SAFE_STATIC_LOCAL(ThreadSpecific<int>, DCHECK(isMainThread()) + simpler static local instead? https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:63: kDevToolsLastIsolatedWorldId = kDevToolsFirstIsolatedWorldId + 10, 10 worlds should be enough for everyone? :) Can we bump it to a 100?
https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/core/inspector/browser_protocol.json:517: { "name": "worldName", "type": "string", "description": "An optional name which is reported in the Execution Context." }, based on the description, I guess this misses "optional": true. https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:63: kDevToolsLastIsolatedWorldId = kDevToolsFirstIsolatedWorldId + 10, On 2017/05/05 15:40:24, pfeldman wrote: > 10 worlds should be enough for everyone? :) Can we bump it to a 100? +1, I can imagine an easy scenario for leaking these ids when client repeatedly re-connects, considering we can't release worlds. https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:67: // this range. generateWorldIdForType() picks it up on behalf of you. I just noticed this. Should we just use generateWorldIdForType()?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
PTAL https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/inspector/browser_protocol.json (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/core/inspector/browser_protocol.json:517: { "name": "worldName", "type": "string", "description": "An optional name which is reported in the Execution Context." }, On 2017/05/05 16:36:01, caseq wrote: > based on the description, I guess this misses "optional": true. Done. https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.cpp:289: DEFINE_THREAD_SAFE_STATIC_LOCAL(ThreadSpecific<int>, On 2017/05/05 15:40:24, pfeldman wrote: > DCHECK(isMainThread()) + simpler static local instead? Done. https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:63: kDevToolsLastIsolatedWorldId = kDevToolsFirstIsolatedWorldId + 10, On 2017/05/05 16:36:02, caseq wrote: > On 2017/05/05 15:40:24, pfeldman wrote: > > 10 worlds should be enough for everyone? :) Can we bump it to a 100? > > +1, I can imagine an easy scenario for leaking these ids when client repeatedly > re-connects, considering we can't release worlds. Done. https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:63: kDevToolsLastIsolatedWorldId = kDevToolsFirstIsolatedWorldId + 10, On 2017/05/05 15:40:24, pfeldman wrote: > 10 worlds should be enough for everyone? :) Can we bump it to a 100? Done. https://codereview.chromium.org/2848653003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:67: // this range. generateWorldIdForType() picks it up on behalf of you. On 2017/05/05 16:36:02, caseq wrote: > I just noticed this. Should we just use generateWorldIdForType()? I suppose we could. We'll need to either make it public or make DOMWrapperWorld::Create work with isolated worlds (it needs to be able to fail rather just DCHECK when we run out of IDs). For now I'm going to suggest making it public. WDYT?
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
On 2017/05/05 19:29:44, alex clarke wrote: > I suppose we could. We'll need to either make it public or make > DOMWrapperWorld::Create work with isolated worlds (it needs to be able to fail > rather just DCHECK when we run out of IDs). For now I'm going to suggest making > it public. WDYT? Making it public sounds ok to me, but I'm not an owner there :-)
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2848653003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:200: static int GetNextDevToolsIsolatedWorldId(); I would go all the way and introduce WorldType for DevTools instead. It is called Inspector in the blink source base btw.
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2848653003/diff/160001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/160001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:200: static int GetNextDevToolsIsolatedWorldId(); On 2017/05/08 20:27:12, pfeldman wrote: > I would go all the way and introduce WorldType for DevTools instead. It is > called Inspector in the blink source base btw. Done. I've also renamed all the DevTools references in this patch to Inspector.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...)
The CQ bit was checked by alexclarke@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The API has changed a bit so I'll wait for final LGTM before submitting. PTAL thanks!
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2848653003/diff/200001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/200001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:205: static int GetNextInspectorIsolatedWorldId(); do you still need it?
https://codereview.chromium.org/2848653003/diff/200001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h (right): https://codereview.chromium.org/2848653003/diff/200001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/bindings/DOMWrapperWorld.h:205: static int GetNextInspectorIsolatedWorldId(); On 2017/05/09 18:57:36, pfeldman wrote: > do you still need it? It's gone.
Thanks all.
The CQ bit was checked by alexclarke@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from skyostil@chromium.org, pfeldman@chromium.org Link to the patchset: https://codereview.chromium.org/2848653003/#ps220001 (title: "Inlined the function as requested")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by alexclarke@chromium.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by alexclarke@chromium.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by alexclarke@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from skyostil@chromium.org, pfeldman@chromium.org Link to the patchset: https://codereview.chromium.org/2848653003/#ps240001 (title: "Rebased")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by alexclarke@chromium.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 240001, "attempt_start_ts": 1494486445362760, "parent_rev": "fe323e6fc54e4f4ef0460d5052876d6b092c1e9e", "commit_rev": "fa3fdf20cea4dbedd74476a40649e708ab1827a0"}
Message was sent while issue was closed.
Description was changed from ========== Add a DevTools command to create an isolated world for a given frame DevTools already has the ability to run script in any execution context, it' just can't by itself create an isolated world. This patch adds that ability. We believe this will be useful for Headless chrome users who whish to manipulate the dom. They can already do this via devtools protocol but running a script in an isolated world should be easier to work with. BUG=546953 ========== to ========== Add a DevTools command to create an isolated world for a given frame DevTools already has the ability to run script in any execution context, it' just can't by itself create an isolated world. This patch adds that ability. We believe this will be useful for Headless chrome users who whish to manipulate the dom. They can already do this via devtools protocol but running a script in an isolated world should be easier to work with. BUG=546953 Review-Url: https://codereview.chromium.org/2848653003 Cr-Commit-Position: refs/heads/master@{#470870} Committed: https://chromium.googlesource.com/chromium/src/+/fa3fdf20cea4dbedd74476a40649... ==========
Message was sent while issue was closed.
Committed patchset #13 (id:240001) as https://chromium.googlesource.com/chromium/src/+/fa3fdf20cea4dbedd74476a40649... |