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

Issue 9317072: Allow omitting optional parameters for Extensions API functions (Closed)

Created:
8 years, 10 months ago by Matt Tytel
Modified:
8 years, 9 months ago
CC:
chromium-reviews, Aaron Boodman, darin-cc_chromium.org, mihaip+watch_chromium.org, brettw-cc_chromium.org, rafaelw, not at google - send to devlin, calamity
Base URL:
http://git.chromium.org/chromium/src.git@master
Visibility:
Public.

Description

Allow omitting optional parameters for Extensions API functions BUG=29215 TEST=Existing browser tests that call API functions with omitted parameters. Still need to add browser tests and possibly some unit tests Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=124898

Patch Set 1 #

Patch Set 2 : Minor fixes/simplifications. #

Patch Set 3 : Don't need this custom binding anymore. #

Total comments: 9

Patch Set 4 : Better error message distinguishing signature errors and type validation errors. #

Total comments: 13

Patch Set 5 : Fixed code vebrosity and comments. #

Total comments: 10

Patch Set 6 : Moved functions to json_schema.js and fixed naming conventions. #

Total comments: 8

Patch Set 7 : Made style and comment changes. #

Total comments: 2

Patch Set 8 : Added tests for functions in json_schema.js #

Patch Set 9 : null and undefined arguments now handled. Comments added and variables renamed. #

Total comments: 2

Patch Set 10 : Nit fixes. #

Patch Set 11 : Synced and merged. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+385 lines, -187 lines) Patch
M chrome/chrome_renderer.gypi View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M chrome/common/extensions/api/experimental.app.json View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -61 lines 0 comments Download
M chrome/common/extensions/docs/examples/api/downloads/download_links.zip View 1 2 3 4 5 6 7 8 9 10 0 chunks +-1 lines, --1 lines 0 comments Download
M chrome/common/extensions/docs/examples/extensions/benchmark.zip View 1 2 3 4 5 6 7 8 9 10 0 chunks +-1 lines, --1 lines 0 comments Download
M chrome/common/extensions/docs/examples/extensions/calculator.zip View 1 2 3 4 5 6 7 8 9 10 0 chunks +-1 lines, --1 lines 0 comments Download
M chrome/renderer/extensions/chrome_v8_context.cc View 1 2 3 4 5 2 chunks +6 lines, -2 lines 0 comments Download
M chrome/renderer/extensions/custom_bindings_util.cc View 1 2 3 4 5 2 chunks +0 lines, -2 lines 0 comments Download
M chrome/renderer/extensions/json_schema_unittest.cc View 1 2 3 4 5 6 7 1 chunk +12 lines, -0 lines 0 comments Download
M chrome/renderer/renderer_resources.grd View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M chrome/renderer/resources/extensions/json_schema.js View 1 2 3 4 5 6 7 8 9 10 9 chunks +76 lines, -18 lines 0 comments Download
M chrome/renderer/resources/extensions/schema_generated_bindings.js View 1 2 3 4 5 6 7 8 9 4 chunks +135 lines, -15 lines 0 comments Download
M chrome/renderer/resources/extensions/tabs_custom_bindings.js View 1 2 3 4 5 6 7 1 chunk +0 lines, -19 lines 0 comments Download
D chrome/renderer/resources/extensions/windows_custom_bindings.js View 1 2 3 4 5 6 7 1 chunk +0 lines, -71 lines 0 comments Download
M chrome/test/data/extensions/json_schema_test.js View 1 2 3 4 5 6 7 8 9 10 2 chunks +159 lines, -0 lines 0 comments Download

Messages

Total messages: 28 (0 generated)
Matt Tytel
8 years, 10 months ago (2012-02-05 22:24:58 UTC) #1
Matt Tytel
8 years, 10 months ago (2012-02-05 22:36:22 UTC) #2
Aaron Boodman
https://chromiumcodereview.appspot.com/9317072/diff/19/chrome/renderer/extensions/chrome_v8_context.cc File chrome/renderer/extensions/chrome_v8_context.cc (right): https://chromiumcodereview.appspot.com/9317072/diff/19/chrome/renderer/extensions/chrome_v8_context.cc#newcode64 chrome/renderer/extensions/chrome_v8_context.cc:64: ->Set(v8::String::New(kValidateAPI), v8::True()); Formatting should be: v8::Local<v8::Object>::Cast(hidden)->Set( ... rest indented ...
8 years, 10 months ago (2012-02-06 01:30:52 UTC) #3
Matt Perry
https://chromiumcodereview.appspot.com/9317072/diff/19/chrome/renderer/extensions/chrome_v8_context.cc File chrome/renderer/extensions/chrome_v8_context.cc (right): https://chromiumcodereview.appspot.com/9317072/diff/19/chrome/renderer/extensions/chrome_v8_context.cc#newcode64 chrome/renderer/extensions/chrome_v8_context.cc:64: ->Set(v8::String::New(kValidateAPI), v8::True()); On 2012/02/06 01:30:52, Aaron Boodman wrote: > ...
8 years, 10 months ago (2012-02-06 21:34:57 UTC) #4
Matt Tytel
Cleaned the code and refactored and the code now reports better error messages. Note that ...
8 years, 10 months ago (2012-02-15 06:09:50 UTC) #5
Matt Tytel
The code expanded a bit more than I thought after supporting these error messages. Should ...
8 years, 10 months ago (2012-02-15 06:11:27 UTC) #6
Matt Perry
http://codereview.chromium.org/9317072/diff/10007/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): http://codereview.chromium.org/9317072/diff/10007/chrome/renderer/resources/extensions/schema_generated_bindings.js#newcode70 chrome/renderer/resources/extensions/schema_generated_bindings.js:70: // Generate all possible signatures for a given API ...
8 years, 10 months ago (2012-02-16 00:31:08 UTC) #7
Matt Tytel
https://chromiumcodereview.appspot.com/9317072/diff/10007/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): https://chromiumcodereview.appspot.com/9317072/diff/10007/chrome/renderer/resources/extensions/schema_generated_bindings.js#newcode101 chrome/renderer/resources/extensions/schema_generated_bindings.js:101: chromeHidden.matchSignature = function(args, schemas) { I think this a ...
8 years, 10 months ago (2012-02-16 04:35:02 UTC) #8
Matt Perry
https://chromiumcodereview.appspot.com/9317072/diff/10007/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): https://chromiumcodereview.appspot.com/9317072/diff/10007/chrome/renderer/resources/extensions/schema_generated_bindings.js#newcode101 chrome/renderer/resources/extensions/schema_generated_bindings.js:101: chromeHidden.matchSignature = function(args, schemas) { On 2012/02/16 04:35:02, mtytel ...
8 years, 10 months ago (2012-02-16 19:21:29 UTC) #9
Aaron Boodman
This is great stuff. Just naming nits. +rafaelw, kalman fyi https://chromiumcodereview.appspot.com/9317072/diff/8008/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): https://chromiumcodereview.appspot.com/9317072/diff/8008/chrome/renderer/resources/extensions/schema_generated_bindings.js#newcode35 ...
8 years, 10 months ago (2012-02-16 21:36:54 UTC) #10
not at google - send to devlin
This is super cool. I'm not planning on reviewing this, but I have a general ...
8 years, 10 months ago (2012-02-17 00:47:10 UTC) #11
Aaron Boodman
On Thu, Feb 16, 2012 at 4:47 PM, <kalman@chromium.org> wrote: > This is super cool. ...
8 years, 10 months ago (2012-02-17 00:53:09 UTC) #12
Matt Tytel
Moved some functions over to json_schema.js. I only moved functions that deal with one schema ...
8 years, 10 months ago (2012-02-24 01:29:27 UTC) #13
Matt Perry
mostly LG, just some style issues https://chromiumcodereview.appspot.com/9317072/diff/20011/chrome/renderer/resources/extensions/json_schema.js File chrome/renderer/resources/extensions/json_schema.js (right): https://chromiumcodereview.appspot.com/9317072/diff/20011/chrome/renderer/resources/extensions/json_schema.js#newcode500 chrome/renderer/resources/extensions/json_schema.js:500: * message. Comment ...
8 years, 10 months ago (2012-02-24 02:00:12 UTC) #14
Matt Tytel
https://chromiumcodereview.appspot.com/9317072/diff/20011/chrome/renderer/resources/extensions/json_schema.js File chrome/renderer/resources/extensions/json_schema.js (right): https://chromiumcodereview.appspot.com/9317072/diff/20011/chrome/renderer/resources/extensions/json_schema.js#newcode500 chrome/renderer/resources/extensions/json_schema.js:500: * message. On 2012/02/24 02:00:12, Matt Perry wrote: > ...
8 years, 10 months ago (2012-02-24 02:29:35 UTC) #15
not at google - send to devlin
Apologies for the second drive-by. Thanks for moving those functions to json_schema.js -- is it ...
8 years, 10 months ago (2012-02-24 03:59:56 UTC) #16
Matt Perry
lgtm
8 years, 10 months ago (2012-02-24 19:50:50 UTC) #17
Matt Tytel
Added json_schema.js tests https://chromiumcodereview.appspot.com/9317072/diff/25001/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): https://chromiumcodereview.appspot.com/9317072/diff/25001/chrome/renderer/resources/extensions/schema_generated_bindings.js#newcode34 chrome/renderer/resources/extensions/schema_generated_bindings.js:34: // Generate all possible signatures for ...
8 years, 9 months ago (2012-02-29 04:36:37 UTC) #18
Matt Tytel
Fixed a problem with accepting null arguments and renamed some variables. https://chromiumcodereview.appspot.com/9317072/diff/43004/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): ...
8 years, 9 months ago (2012-03-01 08:04:33 UTC) #19
Aaron Boodman
still lgtm https://chromiumcodereview.appspot.com/9317072/diff/43004/chrome/renderer/resources/extensions/schema_generated_bindings.js File chrome/renderer/resources/extensions/schema_generated_bindings.js (right): https://chromiumcodereview.appspot.com/9317072/diff/43004/chrome/renderer/resources/extensions/schema_generated_bindings.js#newcode611 chrome/renderer/resources/extensions/schema_generated_bindings.js:611: apiFunction.name != "extension.sendRequest" && On 2012/03/01 08:04:33, ...
8 years, 9 months ago (2012-03-01 08:14:25 UTC) #20
Matt Tytel
Here's a better fix for the null arguments. Also the new variable name changes are ...
8 years, 9 months ago (2012-03-01 08:31:22 UTC) #21
Aaron Boodman
still lgtm http://codereview.chromium.org/9317072/diff/40002/chrome/renderer/resources/extensions/json_schema.js File chrome/renderer/resources/extensions/json_schema.js (right): http://codereview.chromium.org/9317072/diff/40002/chrome/renderer/resources/extensions/json_schema.js#newcode149 chrome/renderer/resources/extensions/json_schema.js:149: chromeHidden.JSONSchemaValidator.prototype.getAllTypesForSchema = function( Nit: I usually see ...
8 years, 9 months ago (2012-03-01 22:59:05 UTC) #22
clintstaley
LGTM
8 years, 9 months ago (2012-03-02 03:57:21 UTC) #23
Sam Kerner (Chrome)
lgtm LGTM
8 years, 9 months ago (2012-03-02 19:36:08 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/mtytel@chromium.org/9317072/45015
8 years, 9 months ago (2012-03-03 23:02:02 UTC) #25
commit-bot: I haz the power
Can't apply patch for file chrome/common/extensions/api/experimental.app.json. While running patch -p1 --forward --force; patching file chrome/common/extensions/api/experimental.app.json ...
8 years, 9 months ago (2012-03-03 23:02:07 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/mtytel@chromium.org/9317072/51001
8 years, 9 months ago (2012-03-03 23:18:42 UTC) #27
commit-bot: I haz the power
8 years, 9 months ago (2012-03-04 14:51:26 UTC) #28
Change committed as 124898

Powered by Google App Engine
This is Rietveld 408576698