Bug 146403 - Binding generator should allow using JSC::Value for "any" parameter in lieu of ScriptValue
Summary: Binding generator should allow using JSC::Value for "any" parameter in lieu o...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: youenn fablet
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-06-28 23:17 PDT by youenn fablet
Modified: 2015-06-29 17:06 PDT (History)
3 users (show)

See Also:


Attachments
Patch (7.64 KB, patch)
2015-06-28 23:22 PDT, youenn fablet
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description youenn fablet 2015-06-28 23:17:19 PDT
ScriptValue is now being Deprecated.
It might make sense to enable new APIs directly get "any" parameters as JSC::JSValue.
This may allow existing ScriptValue-based APIs to migrate to JSC::JSValue progressively and simplify the binding generator once all APIs are migrated.
Comment 1 youenn fablet 2015-06-28 23:22:55 PDT
Created attachment 255738 [details]
Patch
Comment 2 Darin Adler 2015-06-29 10:11:55 PDT
Comment on attachment 255738 [details]
Patch

This change is OK. But our longer term plan should be to entirely remove the ScriptValue class from WebCore.
Comment 3 youenn fablet 2015-06-29 11:20:56 PDT
(In reply to comment #2)
> Comment on attachment 255738 [details]
> Patch
> 
> This change is OK. But our longer term plan should be to entirely remove the
> ScriptValue class from WebCore.

I looked first at doing the whole thing.
Changes seem too big for one patch.
Except for IndexedDB, this might be ok as one patch.

But IndexedDB is doing extensive use of ScriptValue.
Plus using PassRefPtr and somehow inconsistent use of ExecState/ScriptExecutionContext, this means quite a bit of refactoring.
Is there anybody actively taking care of IndexedDB I can cc?

Also should there be communication to make sure future APIs use "any" as JSC::JSValue or is Deprecated namespace good enough?
Comment 4 WebKit Commit Bot 2015-06-29 12:05:31 PDT
Comment on attachment 255738 [details]
Patch

Clearing flags on attachment: 255738

Committed r186076: <http://trac.webkit.org/changeset/186076>
Comment 5 WebKit Commit Bot 2015-06-29 12:05:34 PDT
All reviewed patches have been landed.  Closing bug.
Comment 6 Darin Adler 2015-06-29 17:06:05 PDT
(In reply to comment #3)
> Is there anybody actively taking care of IndexedDB I can cc?

Brady Eidson is doing some IndexedDB work, but not sure how much and who else would be interested. I talked to someone recently, maybe Sam, about generally tidying things up in that class.

> Also should there be communication to make sure future APIs use "any" as
> JSC::JSValue or is Deprecated namespace good enough?

Communication or documentation would be fine. Renaming ScriptValue to DeprecatedScriptValue might be super-helpful. That worked fine back in the old days with many classes, even including one of our String classes back when we had multiple ones.