Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(194)

Issue 2902583002: Add some closureised JS bindings for DevTools for use by headless embedder (Closed)

Created:
3 years, 7 months ago by alex clarke (OOO till 29th)
Modified:
3 years, 6 months ago
Reviewers:
aerotwist, Sami, dpapad
CC:
chromium-reviews, Dan Beam, dbeam+watch-closure_chromium.org, devtools-reviews_chromium.org, jlklein+watch-closure_chromium.org, pfeldman, vitalyp+closure_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Add some closureised JS bindings for DevTools. Sadly these don't support minification because the json objects get mangled. We could fix that however if it becomes necessary. BUG=546953 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation Review-Url: https://codereview.chromium.org/2902583002 Cr-Commit-Position: refs/heads/master@{#478249} Committed: https://chromium.googlesource.com/chromium/src/+/1a69b3b221aed4b1ad88d7446aa22cf3d879bfcf

Patch Set 1 #

Patch Set 2 : Remove unwanted change #

Patch Set 3 : Add missing .grd file #

Patch Set 4 : Add missing js file #

Patch Set 5 : Don't run the test on windows because js_binary doesn't work #

Total comments: 48

Patch Set 6 : Responding to feedback #

Patch Set 7 : Try to fix win.clang #

Patch Set 8 : Rebased #

Patch Set 9 : Fix the test after rebasing #

Total comments: 4

Patch Set 10 : Refactored the test #

Total comments: 4

Patch Set 11 : Update indent #

Patch Set 12 : Rebased #

Total comments: 2

Patch Set 13 : Fix object type #

Patch Set 14 : Fix some type annotations #

Patch Set 15 : Use goog.forwardDeclare where needed #

Total comments: 21

Patch Set 16 : Make the JS better #

Total comments: 14

Patch Set 17 : More ES6 goodness #

Patch Set 18 : Fix error in Connection.onMessage_ #

Patch Set 19 : Same fix again to another instance #

Total comments: 2

Patch Set 20 : Fix a few JS lint warnings with the generated code. #

Patch Set 21 : Try and fix python test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+664 lines, -2 lines) Patch
M headless/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 6 chunks +75 lines, -1 line 0 comments Download
A headless/headless_browsertest_resources.grd View 1 2 1 chunk +15 lines, -0 lines 0 comments Download
M headless/lib/browser/devtools_api/client_api_generator.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 15 chunks +48 lines, -0 lines 0 comments Download
A headless/lib/browser/devtools_api/devtools_connection.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +157 lines, -0 lines 0 comments Download
A headless/lib/browser/devtools_api/domain_js.template View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +133 lines, -0 lines 0 comments Download
M headless/lib/headless_browsertest_resource_ids View 1 chunk +1 line, -1 line 0 comments Download
A headless/lib/tab_socket_externs.js View 1 chunk +12 lines, -0 lines 0 comments Download
A headless/test/bindings_test.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +52 lines, -0 lines 0 comments Download
A headless/test/headless_js_bindings_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +160 lines, -0 lines 0 comments Download
M third_party/closure_compiler/compile_js.gni View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +11 lines, -0 lines 0 comments Download

Messages

Total messages: 106 (83 generated)
alex clarke (OOO till 29th)
3 years, 7 months ago (2017-05-22 20:17:53 UTC) #5
Sami
Thanks, looks great! Added some initial thoughts. https://codereview.chromium.org/2902583002/diff/80001/headless/BUILD.gn File headless/BUILD.gn (right): https://codereview.chromium.org/2902583002/diff/80001/headless/BUILD.gn#newcode166 headless/BUILD.gn:166: [ "$target_gen_dir/public/devtools/domains/" ...
3 years, 7 months ago (2017-05-24 09:16:22 UTC) #22
aerotwist
https://codereview.chromium.org/2902583002/diff/80001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/80001/headless/lib/browser/devtools_api/devtools_connection.js#newcode60 headless/lib/browser/devtools_api/devtools_connection.js:60: goog.DevTools.Connection.prototype.AddEventListener = function(eventName, On 2017/05/24 09:16:21, Sami wrote: > ...
3 years, 7 months ago (2017-05-24 11:06:42 UTC) #25
alex clarke (OOO till 29th)
+dbeam@ for the third_party/closure_compiler/compile_js.gni change https://codereview.chromium.org/2902583002/diff/80001/headless/BUILD.gn File headless/BUILD.gn (right): https://codereview.chromium.org/2902583002/diff/80001/headless/BUILD.gn#newcode166 headless/BUILD.gn:166: [ "$target_gen_dir/public/devtools/domains/" + domain ...
3 years, 7 months ago (2017-05-24 11:38:20 UTC) #27
Sami
https://codereview.chromium.org/2902583002/diff/80001/headless/lib/browser/devtools_api/client_api_generator.py File headless/lib/browser/devtools_api/client_api_generator.py (right): https://codereview.chromium.org/2902583002/diff/80001/headless/lib/browser/devtools_api/client_api_generator.py#newcode123 headless/lib/browser/devtools_api/client_api_generator.py:123: 'js_type': '!goog.DevTools.%s.%s' % (domain['domain'], type['id']), On 2017/05/24 11:38:14, alex ...
3 years, 7 months ago (2017-05-25 17:53:35 UTC) #44
alex clarke (OOO till 29th)
PTAL https://codereview.chromium.org/2902583002/diff/80001/headless/lib/browser/devtools_api/client_api_generator.py File headless/lib/browser/devtools_api/client_api_generator.py (right): https://codereview.chromium.org/2902583002/diff/80001/headless/lib/browser/devtools_api/client_api_generator.py#newcode123 headless/lib/browser/devtools_api/client_api_generator.py:123: 'js_type': '!goog.DevTools.%s.%s' % (domain['domain'], type['id']), On 2017/05/25 17:53:35, ...
3 years, 7 months ago (2017-05-26 11:37:03 UTC) #45
Sami
Thanks, lgtm! (Although I still prefer js_deps :) https://codereview.chromium.org/2902583002/diff/180001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/180001/headless/lib/browser/devtools_api/devtools_connection.js#newcode64 headless/lib/browser/devtools_api/devtools_connection.js:64: listener) ...
3 years, 6 months ago (2017-05-26 15:55:54 UTC) #50
alex clarke (OOO till 29th)
https://codereview.chromium.org/2902583002/diff/180001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/180001/headless/lib/browser/devtools_api/devtools_connection.js#newcode64 headless/lib/browser/devtools_api/devtools_connection.js:64: listener) { On 2017/05/26 15:55:54, Sami wrote: > nit: ...
3 years, 6 months ago (2017-05-26 19:51:11 UTC) #51
alex clarke (OOO till 29th)
dbeam@ could you take a look at the change in third_party/closure_compiler/compile_js.gni please?
3 years, 6 months ago (2017-06-01 08:00:31 UTC) #64
Dan Beam
https://codereview.chromium.org/2902583002/diff/220001/headless/BUILD.gn File headless/BUILD.gn (right): https://codereview.chromium.org/2902583002/diff/220001/headless/BUILD.gn#newcode213 headless/BUILD.gn:213: extra_deps = [ ":gen_devtools_client_api" ] errrr, why can't these ...
3 years, 6 months ago (2017-06-01 16:51:45 UTC) #65
alex clarke (OOO till 29th)
https://codereview.chromium.org/2902583002/diff/220001/headless/BUILD.gn File headless/BUILD.gn (right): https://codereview.chromium.org/2902583002/diff/220001/headless/BUILD.gn#newcode213 headless/BUILD.gn:213: extra_deps = [ ":gen_devtools_client_api" ] On 2017/06/01 16:51:45, Dan ...
3 years, 6 months ago (2017-06-02 08:20:50 UTC) #66
alex clarke (OOO till 29th)
PING :)
3 years, 6 months ago (2017-06-06 07:36:17 UTC) #71
alex clarke (OOO till 29th)
Ah looks like dbeam@ is moving on. dpapad@chromium.org could you please take a look?
3 years, 6 months ago (2017-06-06 15:03:17 UTC) #75
dpapad
https://codereview.chromium.org/2902583002/diff/280001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/280001/headless/lib/browser/devtools_api/devtools_connection.js#newcode16 headless/lib/browser/devtools_api/devtools_connection.js:16: * @typedef {!function(Object): undefined|!function(string): undefined} "!" not necessary for ...
3 years, 6 months ago (2017-06-06 17:37:46 UTC) #78
alex clarke (OOO till 29th)
Thanks for the JS tips. PTAL :) https://codereview.chromium.org/2902583002/diff/280001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/280001/headless/lib/browser/devtools_api/devtools_connection.js#newcode16 headless/lib/browser/devtools_api/devtools_connection.js:16: * @typedef ...
3 years, 6 months ago (2017-06-07 15:15:40 UTC) #79
dpapad
Consider all ES6 related comments optional. https://codereview.chromium.org/2902583002/diff/280001/third_party/closure_compiler/compile_js.gni File third_party/closure_compiler/compile_js.gni (right): https://codereview.chromium.org/2902583002/diff/280001/third_party/closure_compiler/compile_js.gni#newcode135 third_party/closure_compiler/compile_js.gni:135: "extra_deps", > No ...
3 years, 6 months ago (2017-06-07 17:49:23 UTC) #84
alex clarke (OOO till 29th)
PTAL https://codereview.chromium.org/2902583002/diff/300001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/300001/headless/lib/browser/devtools_api/devtools_connection.js#newcode88 headless/lib/browser/devtools_api/devtools_connection.js:88: * @returbn {boolean} Returns true if the event ...
3 years, 6 months ago (2017-06-08 10:33:16 UTC) #85
dpapad
LGTM https://codereview.chromium.org/2902583002/diff/360001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/360001/headless/lib/browser/devtools_api/devtools_connection.js#newcode19 headless/lib/browser/devtools_api/devtools_connection.js:19: class Connection { FYI, yesterday I discovered an ...
3 years, 6 months ago (2017-06-08 17:12:03 UTC) #94
alex clarke (OOO till 29th)
Thanks for the review! https://codereview.chromium.org/2902583002/diff/360001/headless/lib/browser/devtools_api/devtools_connection.js File headless/lib/browser/devtools_api/devtools_connection.js (right): https://codereview.chromium.org/2902583002/diff/360001/headless/lib/browser/devtools_api/devtools_connection.js#newcode19 headless/lib/browser/devtools_api/devtools_connection.js:19: class Connection { On 2017/06/08 ...
3 years, 6 months ago (2017-06-09 08:37:16 UTC) #95
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2902583002/380001
3 years, 6 months ago (2017-06-09 08:37:44 UTC) #98
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_headless_rel on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_headless_rel/builds/103886)
3 years, 6 months ago (2017-06-09 09:00:14 UTC) #100
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2902583002/400001
3 years, 6 months ago (2017-06-09 09:26:06 UTC) #103
commit-bot: I haz the power
3 years, 6 months ago (2017-06-09 11:53:00 UTC) #106
Message was sent while issue was closed.
Committed patchset #21 (id:400001) as
https://chromium.googlesource.com/chromium/src/+/1a69b3b221aed4b1ad88d7446aa2...

Powered by Google App Engine
This is Rietveld 408576698