[Webkit-unassigned] [Bug 56294] New: Web Inspector: migrate from Inspector.idl to InspectorAPI.json for protocol schema definition meta bug.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Mar 13 23:48:11 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=56294

           Summary: Web Inspector: migrate from Inspector.idl to
                    InspectorAPI.json for protocol schema definition meta
                    bug.
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: All
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: Web Inspector
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: pfeldman at chromium.org
                CC: timothy at apple.com, rik at webkit.org, keishi at webkit.org,
                    pmuellr at yahoo.com, joepeck at webkit.org,
                    pfeldman at chromium.org, yurys at chromium.org,
                    bweinstein at apple.com, apavlov at chromium.org,
                    loislo at chromium.org


It is time to describe our protocol in greater detail (i.e. with types and documentation). So I guess we should migrate to JSON schema and use Python for source code generation. I think all the ports support Python by now (probably worth checking). It does mean pretty much complete rewrite for the generator that is currently a 1K line perl script, but I think we can manage it without much pain. Here is the plan:

Step one:
- Add JSON schema generator into CodeGeneratorInspector.pm so that it could convert Inspector.idl into InspectorAPI.json at any time.
- Implement a python script that does backwards conversion (InspectorAPI.json -> Inspector.idl)
- Do a one-time InspectorAPI.json generation and make it primary in the build. I.e. during the build, Inspector.idl is being generated from InspectorAPI.json using script from previous bullet and then original CodeGeneratorInspector.pm steps in place.

Follow up changes:
- Make InspectorAPI.json more detailed, add types and descriptions there
- Deploy this InspectorAPI.json to the front-end and run optional validation of all messages in the debug builds
- Generate documentation off InspectorAPI.json

Longer term tasks:
- Rewrite code generation to eliminate intermediate idl class
- Add schema validation to the backend.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list