Move inspector protocol definitions to include/
This does not delete the files in the old locations yet since we need
to fix up the references in Chrome and Node.js.
Bug: v8:9247
Change-Id: I75dd469e19b6d4249ed187dd6d095d306f1b6c45
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1649355
Reviewed-by: Pavel Feldman <pfeldman@chromium.org>
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#62258}
diff --git a/gni/v8.gni b/gni/v8.gni
index 506b842..e55c4cf 100644
--- a/gni/v8.gni
+++ b/gni/v8.gni
@@ -92,7 +92,7 @@
# subdirectories.
v8_path_prefix = get_path_info("../", "abspath")
-v8_inspector_js_protocol = v8_path_prefix + "/src/inspector/js_protocol.pdl"
+v8_inspector_js_protocol = v8_path_prefix + "/include/js_protocol.pdl"
###############################################################################
# Templates
diff --git a/include/APIDesign.md b/include/APIDesign.md
index 8830fff..fe42c8e 100644
--- a/include/APIDesign.md
+++ b/include/APIDesign.md
@@ -67,3 +67,6 @@
# The V8 inspector
All debugging capabilities of V8 should be exposed via the inspector protocol.
+The exception to this are profiling features exposed via v8-profiler.h.
+Changes to the inspector protocol need to ensure backwards compatibility and
+commitment to maintain.
diff --git a/include/OWNERS b/include/OWNERS
index 7630a96..7ffbf74 100644
--- a/include/OWNERS
+++ b/include/OWNERS
@@ -11,5 +11,7 @@
per-file v8-inspector-protocol.h=dgozman@chromium.org
per-file v8-inspector-protocol.h=pfeldman@chromium.org
per-file v8-inspector-protocol.h=kozyatinskiy@chromium.org
+per-file js_protocol.pdl=dgozman@chromium.org
+per-file js_protocol.pdl=pfeldman@chromium.org
# COMPONENT: Blink>JavaScript>API
diff --git a/src/inspector/js_protocol-1.2.json b/include/js_protocol-1.2.json
similarity index 100%
rename from src/inspector/js_protocol-1.2.json
rename to include/js_protocol-1.2.json
diff --git a/src/inspector/js_protocol-1.3.json b/include/js_protocol-1.3.json
similarity index 100%
rename from src/inspector/js_protocol-1.3.json
rename to include/js_protocol-1.3.json
diff --git a/include/js_protocol.pdl b/include/js_protocol.pdl
new file mode 100644
index 0000000..c4ff51b
--- /dev/null
+++ b/include/js_protocol.pdl
@@ -0,0 +1,1492 @@
+# Copyright 2017 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+version
+ major 1
+ minor 3
+
+# This domain is deprecated - use Runtime or Log instead.
+deprecated domain Console
+ depends on Runtime
+
+ # Console message.
+ type ConsoleMessage extends object
+ properties
+ # Message source.
+ enum source
+ xml
+ javascript
+ network
+ console-api
+ storage
+ appcache
+ rendering
+ security
+ other
+ deprecation
+ worker
+ # Message severity.
+ enum level
+ log
+ warning
+ error
+ debug
+ info
+ # Message text.
+ string text
+ # URL of the message origin.
+ optional string url
+ # Line number in the resource that generated this message (1-based).
+ optional integer line
+ # Column number in the resource that generated this message (1-based).
+ optional integer column
+
+ # Does nothing.
+ command clearMessages
+
+ # Disables console domain, prevents further console messages from being reported to the client.
+ command disable
+
+ # Enables console domain, sends the messages collected so far to the client by means of the
+ # `messageAdded` notification.
+ command enable
+
+ # Issued when new console message is added.
+ event messageAdded
+ parameters
+ # Console message that has been added.
+ ConsoleMessage message
+
+# Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing
+# breakpoints, stepping through execution, exploring stack traces, etc.
+domain Debugger
+ depends on Runtime
+
+ # Breakpoint identifier.
+ type BreakpointId extends string
+
+ # Call frame identifier.
+ type CallFrameId extends string
+
+ # Location in the source code.
+ type Location extends object
+ properties
+ # Script identifier as reported in the `Debugger.scriptParsed`.
+ Runtime.ScriptId scriptId
+ # Line number in the script (0-based).
+ integer lineNumber
+ # Column number in the script (0-based).
+ optional integer columnNumber
+
+ # Location in the source code.
+ experimental type ScriptPosition extends object
+ properties
+ integer lineNumber
+ integer columnNumber
+
+ # JavaScript call frame. Array of call frames form the call stack.
+ type CallFrame extends object
+ properties
+ # Call frame identifier. This identifier is only valid while the virtual machine is paused.
+ CallFrameId callFrameId
+ # Name of the JavaScript function called on this call frame.
+ string functionName
+ # Location in the source code.
+ optional Location functionLocation
+ # Location in the source code.
+ Location location
+ # JavaScript script name or url.
+ string url
+ # Scope chain for this call frame.
+ array of Scope scopeChain
+ # `this` object for this call frame.
+ Runtime.RemoteObject this
+ # The value being returned, if the function is at return point.
+ optional Runtime.RemoteObject returnValue
+
+ # Scope description.
+ type Scope extends object
+ properties
+ # Scope type.
+ enum type
+ global
+ local
+ with
+ closure
+ catch
+ block
+ script
+ eval
+ module
+ # Object representing the scope. For `global` and `with` scopes it represents the actual
+ # object; for the rest of the scopes, it is artificial transient object enumerating scope
+ # variables as its properties.
+ Runtime.RemoteObject object
+ optional string name
+ # Location in the source code where scope starts
+ optional Location startLocation
+ # Location in the source code where scope ends
+ optional Location endLocation
+
+ # Search match for resource.
+ type SearchMatch extends object
+ properties
+ # Line number in resource content.
+ number lineNumber
+ # Line with match content.
+ string lineContent
+
+ type BreakLocation extends object
+ properties
+ # Script identifier as reported in the `Debugger.scriptParsed`.
+ Runtime.ScriptId scriptId
+ # Line number in the script (0-based).
+ integer lineNumber
+ # Column number in the script (0-based).
+ optional integer columnNumber
+ optional enum type
+ debuggerStatement
+ call
+ return
+
+ # Continues execution until specific location is reached.
+ command continueToLocation
+ parameters
+ # Location to continue to.
+ Location location
+ optional enum targetCallFrames
+ any
+ current
+
+ # Disables debugger for given page.
+ command disable
+
+ # Enables debugger for the given page. Clients should not assume that the debugging has been
+ # enabled until the result for this command is received.
+ command enable
+ parameters
+ # The maximum size in bytes of collected scripts (not referenced by other heap objects)
+ # the debugger can hold. Puts no limit if paramter is omitted.
+ experimental optional number maxScriptsCacheSize
+ returns
+ # Unique identifier of the debugger.
+ experimental Runtime.UniqueDebuggerId debuggerId
+
+ # Evaluates expression on a given call frame.
+ command evaluateOnCallFrame
+ parameters
+ # Call frame identifier to evaluate on.
+ CallFrameId callFrameId
+ # Expression to evaluate.
+ string expression
+ # String object group name to put result into (allows rapid releasing resulting object handles
+ # using `releaseObjectGroup`).
+ optional string objectGroup
+ # Specifies whether command line API should be available to the evaluated expression, defaults
+ # to false.
+ optional boolean includeCommandLineAPI
+ # In silent mode exceptions thrown during evaluation are not reported and do not pause
+ # execution. Overrides `setPauseOnException` state.
+ optional boolean silent
+ # Whether the result is expected to be a JSON object that should be sent by value.
+ optional boolean returnByValue
+ # Whether preview should be generated for the result.
+ experimental optional boolean generatePreview
+ # Whether to throw an exception if side effect cannot be ruled out during evaluation.
+ optional boolean throwOnSideEffect
+ # Terminate execution after timing out (number of milliseconds).
+ experimental optional Runtime.TimeDelta timeout
+ returns
+ # Object wrapper for the evaluation result.
+ Runtime.RemoteObject result
+ # Exception details.
+ optional Runtime.ExceptionDetails exceptionDetails
+
+ # Returns possible locations for breakpoint. scriptId in start and end range locations should be
+ # the same.
+ command getPossibleBreakpoints
+ parameters
+ # Start of range to search possible breakpoint locations in.
+ Location start
+ # End of range to search possible breakpoint locations in (excluding). When not specified, end
+ # of scripts is used as end of range.
+ optional Location end
+ # Only consider locations which are in the same (non-nested) function as start.
+ optional boolean restrictToFunction
+ returns
+ # List of the possible breakpoint locations.
+ array of BreakLocation locations
+
+ # Returns source for the script with given id.
+ command getScriptSource
+ parameters
+ # Id of the script to get source for.
+ Runtime.ScriptId scriptId
+ returns
+ # Script source.
+ string scriptSource
+
+ # Returns stack trace with given `stackTraceId`.
+ experimental command getStackTrace
+ parameters
+ Runtime.StackTraceId stackTraceId
+ returns
+ Runtime.StackTrace stackTrace
+
+ # Stops on the next JavaScript statement.
+ command pause
+
+ experimental command pauseOnAsyncCall
+ parameters
+ # Debugger will pause when async call with given stack trace is started.
+ Runtime.StackTraceId parentStackTraceId
+
+ # Removes JavaScript breakpoint.
+ command removeBreakpoint
+ parameters
+ BreakpointId breakpointId
+
+ # Restarts particular call frame from the beginning.
+ command restartFrame
+ parameters
+ # Call frame identifier to evaluate on.
+ CallFrameId callFrameId
+ returns
+ # New stack trace.
+ array of CallFrame callFrames
+ # Async stack trace, if any.
+ optional Runtime.StackTrace asyncStackTrace
+ # Async stack trace, if any.
+ experimental optional Runtime.StackTraceId asyncStackTraceId
+
+ # Resumes JavaScript execution.
+ command resume
+
+ # Searches for given string in script content.
+ command searchInContent
+ parameters
+ # Id of the script to search in.
+ Runtime.ScriptId scriptId
+ # String to search for.
+ string query
+ # If true, search is case sensitive.
+ optional boolean caseSensitive
+ # If true, treats string parameter as regex.
+ optional boolean isRegex
+ returns
+ # List of search matches.
+ array of SearchMatch result
+
+ # Enables or disables async call stacks tracking.
+ command setAsyncCallStackDepth
+ parameters
+ # Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async
+ # call stacks (default).
+ integer maxDepth
+
+ # Replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in
+ # scripts with url matching one of the patterns. VM will try to leave blackboxed script by
+ # performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
+ experimental command setBlackboxPatterns
+ parameters
+ # Array of regexps that will be used to check script url for blackbox state.
+ array of string patterns
+
+ # Makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted
+ # scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
+ # Positions array contains positions where blackbox state is changed. First interval isn't
+ # blackboxed. Array should be sorted.
+ experimental command setBlackboxedRanges
+ parameters
+ # Id of the script.
+ Runtime.ScriptId scriptId
+ array of ScriptPosition positions
+
+ # Sets JavaScript breakpoint at a given location.
+ command setBreakpoint
+ parameters
+ # Location to set breakpoint in.
+ Location location
+ # Expression to use as a breakpoint condition. When specified, debugger will only stop on the
+ # breakpoint if this expression evaluates to true.
+ optional string condition
+ returns
+ # Id of the created breakpoint for further reference.
+ BreakpointId breakpointId
+ # Location this breakpoint resolved into.
+ Location actualLocation
+
+ # Sets instrumentation breakpoint.
+ command setInstrumentationBreakpoint
+ parameters
+ # Instrumentation name.
+ enum instrumentation
+ beforeScriptExecution
+ beforeScriptWithSourceMapExecution
+ returns
+ # Id of the created breakpoint for further reference.
+ BreakpointId breakpointId
+
+ # Sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this
+ # command is issued, all existing parsed scripts will have breakpoints resolved and returned in
+ # `locations` property. Further matching script parsing will result in subsequent
+ # `breakpointResolved` events issued. This logical breakpoint will survive page reloads.
+ command setBreakpointByUrl
+ parameters
+ # Line number to set breakpoint at.
+ integer lineNumber
+ # URL of the resources to set breakpoint on.
+ optional string url
+ # Regex pattern for the URLs of the resources to set breakpoints on. Either `url` or
+ # `urlRegex` must be specified.
+ optional string urlRegex
+ # Script hash of the resources to set breakpoint on.
+ optional string scriptHash
+ # Offset in the line to set breakpoint at.
+ optional integer columnNumber
+ # Expression to use as a breakpoint condition. When specified, debugger will only stop on the
+ # breakpoint if this expression evaluates to true.
+ optional string condition
+ returns
+ # Id of the created breakpoint for further reference.
+ BreakpointId breakpointId
+ # List of the locations this breakpoint resolved into upon addition.
+ array of Location locations
+
+ # Sets JavaScript breakpoint before each call to the given function.
+ # If another function was created from the same source as a given one,
+ # calling it will also trigger the breakpoint.
+ experimental command setBreakpointOnFunctionCall
+ parameters
+ # Function object id.
+ Runtime.RemoteObjectId objectId
+ # Expression to use as a breakpoint condition. When specified, debugger will
+ # stop on the breakpoint if this expression evaluates to true.
+ optional string condition
+ returns
+ # Id of the created breakpoint for further reference.
+ BreakpointId breakpointId
+
+ # Activates / deactivates all breakpoints on the page.
+ command setBreakpointsActive
+ parameters
+ # New value for breakpoints active state.
+ boolean active
+
+ # Defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or
+ # no exceptions. Initial pause on exceptions state is `none`.
+ command setPauseOnExceptions
+ parameters
+ # Pause on exceptions mode.
+ enum state
+ none
+ uncaught
+ all
+
+ # Changes return value in top frame. Available only at return break position.
+ experimental command setReturnValue
+ parameters
+ # New return value.
+ Runtime.CallArgument newValue
+
+ # Edits JavaScript source live.
+ command setScriptSource
+ parameters
+ # Id of the script to edit.
+ Runtime.ScriptId scriptId
+ # New content of the script.
+ string scriptSource
+ # If true the change will not actually be applied. Dry run may be used to get result
+ # description without actually modifying the code.
+ optional boolean dryRun
+ returns
+ # New stack trace in case editing has happened while VM was stopped.
+ optional array of CallFrame callFrames
+ # Whether current call stack was modified after applying the changes.
+ optional boolean stackChanged
+ # Async stack trace, if any.
+ optional Runtime.StackTrace asyncStackTrace
+ # Async stack trace, if any.
+ experimental optional Runtime.StackTraceId asyncStackTraceId
+ # Exception details if any.
+ optional Runtime.ExceptionDetails exceptionDetails
+
+ # Makes page not interrupt on any pauses (breakpoint, exception, dom exception etc).
+ command setSkipAllPauses
+ parameters
+ # New value for skip pauses state.
+ boolean skip
+
+ # Changes value of variable in a callframe. Object-based scopes are not supported and must be
+ # mutated manually.
+ command setVariableValue
+ parameters
+ # 0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch'
+ # scope types are allowed. Other scopes could be manipulated manually.
+ integer scopeNumber
+ # Variable name.
+ string variableName
+ # New variable value.
+ Runtime.CallArgument newValue
+ # Id of callframe that holds variable.
+ CallFrameId callFrameId
+
+ # Steps into the function call.
+ command stepInto
+ parameters
+ # Debugger will issue additional Debugger.paused notification if any async task is scheduled
+ # before next pause.
+ experimental optional boolean breakOnAsyncCall
+
+ # Steps out of the function call.
+ command stepOut
+
+ # Steps over the statement.
+ command stepOver
+
+ # Fired when breakpoint is resolved to an actual script and location.
+ event breakpointResolved
+ parameters
+ # Breakpoint unique identifier.
+ BreakpointId breakpointId
+ # Actual breakpoint location.
+ Location location
+
+ # Fired when the virtual machine stopped on breakpoint or exception or any other stop criteria.
+ event paused
+ parameters
+ # Call stack the virtual machine stopped on.
+ array of CallFrame callFrames
+ # Pause reason.
+ enum reason
+ ambiguous
+ assert
+ debugCommand
+ DOM
+ EventListener
+ exception
+ instrumentation
+ OOM
+ other
+ promiseRejection
+ XHR
+ # Object containing break-specific auxiliary properties.
+ optional object data
+ # Hit breakpoints IDs
+ optional array of string hitBreakpoints
+ # Async stack trace, if any.
+ optional Runtime.StackTrace asyncStackTrace
+ # Async stack trace, if any.
+ experimental optional Runtime.StackTraceId asyncStackTraceId
+ # Just scheduled async call will have this stack trace as parent stack during async execution.
+ # This field is available only after `Debugger.stepInto` call with `breakOnAsynCall` flag.
+ experimental optional Runtime.StackTraceId asyncCallStackTraceId
+
+ # Fired when the virtual machine resumed execution.
+ event resumed
+
+ # Fired when virtual machine fails to parse the script.
+ event scriptFailedToParse
+ parameters
+ # Identifier of the script parsed.
+ Runtime.ScriptId scriptId
+ # URL or name of the script parsed (if any).
+ string url
+ # Line offset of the script within the resource with given URL (for script tags).
+ integer startLine
+ # Column offset of the script within the resource with given URL.
+ integer startColumn
+ # Last line of the script.
+ integer endLine
+ # Length of the last line of the script.
+ integer endColumn
+ # Specifies script creation context.
+ Runtime.ExecutionContextId executionContextId
+ # Content hash of the script.
+ string hash
+ # Embedder-specific auxiliary data.
+ optional object executionContextAuxData
+ # URL of source map associated with script (if any).
+ optional string sourceMapURL
+ # True, if this script has sourceURL.
+ optional boolean hasSourceURL
+ # True, if this script is ES6 module.
+ optional boolean isModule
+ # This script length.
+ optional integer length
+ # JavaScript top stack frame of where the script parsed event was triggered if available.
+ experimental optional Runtime.StackTrace stackTrace
+
+ # Fired when virtual machine parses script. This event is also fired for all known and uncollected
+ # scripts upon enabling debugger.
+ event scriptParsed
+ parameters
+ # Identifier of the script parsed.
+ Runtime.ScriptId scriptId
+ # URL or name of the script parsed (if any).
+ string url
+ # Line offset of the script within the resource with given URL (for script tags).
+ integer startLine
+ # Column offset of the script within the resource with given URL.
+ integer startColumn
+ # Last line of the script.
+ integer endLine
+ # Length of the last line of the script.
+ integer endColumn
+ # Specifies script creation context.
+ Runtime.ExecutionContextId executionContextId
+ # Content hash of the script.
+ string hash
+ # Embedder-specific auxiliary data.
+ optional object executionContextAuxData
+ # True, if this script is generated as a result of the live edit operation.
+ experimental optional boolean isLiveEdit
+ # URL of source map associated with script (if any).
+ optional string sourceMapURL
+ # True, if this script has sourceURL.
+ optional boolean hasSourceURL
+ # True, if this script is ES6 module.
+ optional boolean isModule
+ # This script length.
+ optional integer length
+ # JavaScript top stack frame of where the script parsed event was triggered if available.
+ experimental optional Runtime.StackTrace stackTrace
+
+experimental domain HeapProfiler
+ depends on Runtime
+
+ # Heap snapshot object id.
+ type HeapSnapshotObjectId extends string
+
+ # Sampling Heap Profile node. Holds callsite information, allocation statistics and child nodes.
+ type SamplingHeapProfileNode extends object
+ properties
+ # Function location.
+ Runtime.CallFrame callFrame
+ # Allocations size in bytes for the node excluding children.
+ number selfSize
+ # Node id. Ids are unique across all profiles collected between startSampling and stopSampling.
+ integer id
+ # Child nodes.
+ array of SamplingHeapProfileNode children
+
+ # A single sample from a sampling profile.
+ type SamplingHeapProfileSample extends object
+ properties
+ # Allocation size in bytes attributed to the sample.
+ number size
+ # Id of the corresponding profile tree node.
+ integer nodeId
+ # Time-ordered sample ordinal number. It is unique across all profiles retrieved
+ # between startSampling and stopSampling.
+ number ordinal
+
+ # Sampling profile.
+ type SamplingHeapProfile extends object
+ properties
+ SamplingHeapProfileNode head
+ array of SamplingHeapProfileSample samples
+
+ # Enables console to refer to the node with given id via $x (see Command Line API for more details
+ # $x functions).
+ command addInspectedHeapObject
+ parameters
+ # Heap snapshot object id to be accessible by means of $x command line API.
+ HeapSnapshotObjectId heapObjectId
+
+ command collectGarbage
+
+ command disable
+
+ command enable
+
+ command getHeapObjectId
+ parameters
+ # Identifier of the object to get heap object id for.
+ Runtime.RemoteObjectId objectId
+ returns
+ # Id of the heap snapshot object corresponding to the passed remote object id.
+ HeapSnapshotObjectId heapSnapshotObjectId
+
+ command getObjectByHeapObjectId
+ parameters
+ HeapSnapshotObjectId objectId
+ # Symbolic group name that can be used to release multiple objects.
+ optional string objectGroup
+ returns
+ # Evaluation result.
+ Runtime.RemoteObject result
+
+ command getSamplingProfile
+ returns
+ # Return the sampling profile being collected.
+ SamplingHeapProfile profile
+
+ command startSampling
+ parameters
+ # Average sample interval in bytes. Poisson distribution is used for the intervals. The
+ # default value is 32768 bytes.
+ optional number samplingInterval
+
+ command startTrackingHeapObjects
+ parameters
+ optional boolean trackAllocations
+
+ command stopSampling
+ returns
+ # Recorded sampling heap profile.
+ SamplingHeapProfile profile
+
+ command stopTrackingHeapObjects
+ parameters
+ # If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken
+ # when the tracking is stopped.
+ optional boolean reportProgress
+
+ command takeHeapSnapshot
+ parameters
+ # If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken.
+ optional boolean reportProgress
+
+ event addHeapSnapshotChunk
+ parameters
+ string chunk
+
+ # If heap objects tracking has been started then backend may send update for one or more fragments
+ event heapStatsUpdate
+ parameters
+ # An array of triplets. Each triplet describes a fragment. The first integer is the fragment
+ # index, the second integer is a total count of objects for the fragment, the third integer is
+ # a total size of the objects for the fragment.
+ array of integer statsUpdate
+
+ # If heap objects tracking has been started then backend regularly sends a current value for last
+ # seen object id and corresponding timestamp. If the were changes in the heap since last event
+ # then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event.
+ event lastSeenObjectId
+ parameters
+ integer lastSeenObjectId
+ number timestamp
+
+ event reportHeapSnapshotProgress
+ parameters
+ integer done
+ integer total
+ optional boolean finished
+
+ event resetProfiles
+
+domain Profiler
+ depends on Runtime
+ depends on Debugger
+
+ # Profile node. Holds callsite information, execution statistics and child nodes.
+ type ProfileNode extends object
+ properties
+ # Unique id of the node.
+ integer id
+ # Function location.
+ Runtime.CallFrame callFrame
+ # Number of samples where this node was on top of the call stack.
+ optional integer hitCount
+ # Child node ids.
+ optional array of integer children
+ # The reason of being not optimized. The function may be deoptimized or marked as don't
+ # optimize.
+ optional string deoptReason
+ # An array of source position ticks.
+ optional array of PositionTickInfo positionTicks
+
+ # Profile.
+ type Profile extends object
+ properties
+ # The list of profile nodes. First item is the root node.
+ array of ProfileNode nodes
+ # Profiling start timestamp in microseconds.
+ number startTime
+ # Profiling end timestamp in microseconds.
+ number endTime
+ # Ids of samples top nodes.
+ optional array of integer samples
+ # Time intervals between adjacent samples in microseconds. The first delta is relative to the
+ # profile startTime.
+ optional array of integer timeDeltas
+
+ # Specifies a number of samples attributed to a certain source position.
+ type PositionTickInfo extends object
+ properties
+ # Source line number (1-based).
+ integer line
+ # Number of samples attributed to the source line.
+ integer ticks
+
+ # Coverage data for a source range.
+ type CoverageRange extends object
+ properties
+ # JavaScript script source offset for the range start.
+ integer startOffset
+ # JavaScript script source offset for the range end.
+ integer endOffset
+ # Collected execution count of the source range.
+ integer count
+
+ # Coverage data for a JavaScript function.
+ type FunctionCoverage extends object
+ properties
+ # JavaScript function name.
+ string functionName
+ # Source ranges inside the function with coverage data.
+ array of CoverageRange ranges
+ # Whether coverage data for this function has block granularity.
+ boolean isBlockCoverage
+
+ # Coverage data for a JavaScript script.
+ type ScriptCoverage extends object
+ properties
+ # JavaScript script id.
+ Runtime.ScriptId scriptId
+ # JavaScript script name or url.
+ string url
+ # Functions contained in the script that has coverage data.
+ array of FunctionCoverage functions
+
+ # Describes a type collected during runtime.
+ experimental type TypeObject extends object
+ properties
+ # Name of a type collected with type profiling.
+ string name
+
+ # Source offset and types for a parameter or return value.
+ experimental type TypeProfileEntry extends object
+ properties
+ # Source offset of the parameter or end of function for return values.
+ integer offset
+ # The types for this parameter or return value.
+ array of TypeObject types
+
+ # Type profile data collected during runtime for a JavaScript script.
+ experimental type ScriptTypeProfile extends object
+ properties
+ # JavaScript script id.
+ Runtime.ScriptId scriptId
+ # JavaScript script name or url.
+ string url
+ # Type profile entries for parameters and return values of the functions in the script.
+ array of TypeProfileEntry entries
+
+ command disable
+
+ command enable
+
+ # Collect coverage data for the current isolate. The coverage data may be incomplete due to
+ # garbage collection.
+ command getBestEffortCoverage
+ returns
+ # Coverage data for the current isolate.
+ array of ScriptCoverage result
+
+ # Changes CPU profiler sampling interval. Must be called before CPU profiles recording started.
+ command setSamplingInterval
+ parameters
+ # New sampling interval in microseconds.
+ integer interval
+
+ command start
+
+ # Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code
+ # coverage may be incomplete. Enabling prevents running optimized code and resets execution
+ # counters.
+ command startPreciseCoverage
+ parameters
+ # Collect accurate call counts beyond simple 'covered' or 'not covered'.
+ optional boolean callCount
+ # Collect block-based coverage.
+ optional boolean detailed
+
+ # Enable type profile.
+ experimental command startTypeProfile
+
+ command stop
+ returns
+ # Recorded profile.
+ Profile profile
+
+ # Disable precise code coverage. Disabling releases unnecessary execution count records and allows
+ # executing optimized code.
+ command stopPreciseCoverage
+
+ # Disable type profile. Disabling releases type profile data collected so far.
+ experimental command stopTypeProfile
+
+ # Collect coverage data for the current isolate, and resets execution counters. Precise code
+ # coverage needs to have started.
+ command takePreciseCoverage
+ returns
+ # Coverage data for the current isolate.
+ array of ScriptCoverage result
+
+ # Collect type profile.
+ experimental command takeTypeProfile
+ returns
+ # Type profile for all scripts since startTypeProfile() was turned on.
+ array of ScriptTypeProfile result
+
+ event consoleProfileFinished
+ parameters
+ string id
+ # Location of console.profileEnd().
+ Debugger.Location location
+ Profile profile
+ # Profile title passed as an argument to console.profile().
+ optional string title
+
+ # Sent when new profile recording is started using console.profile() call.
+ event consoleProfileStarted
+ parameters
+ string id
+ # Location of console.profile().
+ Debugger.Location location
+ # Profile title passed as an argument to console.profile().
+ optional string title
+
+# Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects.
+# Evaluation results are returned as mirror object that expose object type, string representation
+# and unique identifier that can be used for further object reference. Original objects are
+# maintained in memory unless they are either explicitly released or are released along with the
+# other objects in their object group.
+domain Runtime
+
+ # Unique script identifier.
+ type ScriptId extends string
+
+ # Unique object identifier.
+ type RemoteObjectId extends string
+
+ # Primitive value which cannot be JSON-stringified. Includes values `-0`, `NaN`, `Infinity`,
+ # `-Infinity`, and bigint literals.
+ type UnserializableValue extends string
+
+ # Mirror object referencing original JavaScript object.
+ type RemoteObject extends object
+ properties
+ # Object type.
+ enum type
+ object
+ function
+ undefined
+ string
+ number
+ boolean
+ symbol
+ bigint
+ # Object subtype hint. Specified for `object` type values only.
+ optional enum subtype
+ array
+ null
+ node
+ regexp
+ date
+ map
+ set
+ weakmap
+ weakset
+ iterator
+ generator
+ error
+ proxy
+ promise
+ typedarray
+ arraybuffer
+ dataview
+ # Object class (constructor) name. Specified for `object` type values only.
+ optional string className
+ # Remote object value in case of primitive values or JSON values (if it was requested).
+ optional any value
+ # Primitive value which can not be JSON-stringified does not have `value`, but gets this
+ # property.
+ optional UnserializableValue unserializableValue
+ # String representation of the object.
+ optional string description
+ # Unique object identifier (for non-primitive values).
+ optional RemoteObjectId objectId
+ # Preview containing abbreviated property values. Specified for `object` type values only.
+ experimental optional ObjectPreview preview
+ experimental optional CustomPreview customPreview
+
+ experimental type CustomPreview extends object
+ properties
+ # The JSON-stringified result of formatter.header(object, config) call.
+ # It contains json ML array that represents RemoteObject.
+ string header
+ # If formatter returns true as a result of formatter.hasBody call then bodyGetterId will
+ # contain RemoteObjectId for the function that returns result of formatter.body(object, config) call.
+ # The result value is json ML array.
+ optional RemoteObjectId bodyGetterId
+
+ # Object containing abbreviated remote object value.
+ experimental type ObjectPreview extends object
+ properties
+ # Object type.
+ enum type
+ object
+ function
+ undefined
+ string
+ number
+ boolean
+ symbol
+ bigint
+ # Object subtype hint. Specified for `object` type values only.
+ optional enum subtype
+ array
+ null
+ node
+ regexp
+ date
+ map
+ set
+ weakmap
+ weakset
+ iterator
+ generator
+ error
+ # String representation of the object.
+ optional string description
+ # True iff some of the properties or entries of the original object did not fit.
+ boolean overflow
+ # List of the properties.
+ array of PropertyPreview properties
+ # List of the entries. Specified for `map` and `set` subtype values only.
+ optional array of EntryPreview entries
+
+ experimental type PropertyPreview extends object
+ properties
+ # Property name.
+ string name
+ # Object type. Accessor means that the property itself is an accessor property.
+ enum type
+ object
+ function
+ undefined
+ string
+ number
+ boolean
+ symbol
+ accessor
+ bigint
+ # User-friendly property value string.
+ optional string value
+ # Nested value preview.
+ optional ObjectPreview valuePreview
+ # Object subtype hint. Specified for `object` type values only.
+ optional enum subtype
+ array
+ null
+ node
+ regexp
+ date
+ map
+ set
+ weakmap
+ weakset
+ iterator
+ generator
+ error
+
+ experimental type EntryPreview extends object
+ properties
+ # Preview of the key. Specified for map-like collection entries.
+ optional ObjectPreview key
+ # Preview of the value.
+ ObjectPreview value
+
+ # Object property descriptor.
+ type PropertyDescriptor extends object
+ properties
+ # Property name or symbol description.
+ string name
+ # The value associated with the property.
+ optional RemoteObject value
+ # True if the value associated with the property may be changed (data descriptors only).
+ optional boolean writable
+ # A function which serves as a getter for the property, or `undefined` if there is no getter
+ # (accessor descriptors only).
+ optional RemoteObject get
+ # A function which serves as a setter for the property, or `undefined` if there is no setter
+ # (accessor descriptors only).
+ optional RemoteObject set
+ # True if the type of this property descriptor may be changed and if the property may be
+ # deleted from the corresponding object.
+ boolean configurable
+ # True if this property shows up during enumeration of the properties on the corresponding
+ # object.
+ boolean enumerable
+ # True if the result was thrown during the evaluation.
+ optional boolean wasThrown
+ # True if the property is owned for the object.
+ optional boolean isOwn
+ # Property symbol object, if the property is of the `symbol` type.
+ optional RemoteObject symbol
+
+ # Object internal property descriptor. This property isn't normally visible in JavaScript code.
+ type InternalPropertyDescriptor extends object
+ properties
+ # Conventional property name.
+ string name
+ # The value associated with the property.
+ optional RemoteObject value
+
+ # Object private field descriptor.
+ experimental type PrivatePropertyDescriptor extends object
+ properties
+ # Private property name.
+ string name
+ # The value associated with the private property.
+ RemoteObject value
+
+ # Represents function call argument. Either remote object id `objectId`, primitive `value`,
+ # unserializable primitive value or neither of (for undefined) them should be specified.
+ type CallArgument extends object
+ properties
+ # Primitive value or serializable javascript object.
+ optional any value
+ # Primitive value which can not be JSON-stringified.
+ optional UnserializableValue unserializableValue
+ # Remote object handle.
+ optional RemoteObjectId objectId
+
+ # Id of an execution context.
+ type ExecutionContextId extends integer
+
+ # Description of an isolated world.
+ type ExecutionContextDescription extends object
+ properties
+ # Unique id of the execution context. It can be used to specify in which execution context
+ # script evaluation should be performed.
+ ExecutionContextId id
+ # Execution context origin.
+ string origin
+ # Human readable name describing given context.
+ string name
+ # Embedder-specific auxiliary data.
+ optional object auxData
+
+ # Detailed information about exception (or error) that was thrown during script compilation or
+ # execution.
+ type ExceptionDetails extends object
+ properties
+ # Exception id.
+ integer exceptionId
+ # Exception text, which should be used together with exception object when available.
+ string text
+ # Line number of the exception location (0-based).
+ integer lineNumber
+ # Column number of the exception location (0-based).
+ integer columnNumber
+ # Script ID of the exception location.
+ optional ScriptId scriptId
+ # URL of the exception location, to be used when the script was not reported.
+ optional string url
+ # JavaScript stack trace if available.
+ optional StackTrace stackTrace
+ # Exception object if available.
+ optional RemoteObject exception
+ # Identifier of the context where exception happened.
+ optional ExecutionContextId executionContextId
+
+ # Number of milliseconds since epoch.
+ type Timestamp extends number
+
+ # Number of milliseconds.
+ type TimeDelta extends number
+
+ # Stack entry for runtime errors and assertions.
+ type CallFrame extends object
+ properties
+ # JavaScript function name.
+ string functionName
+ # JavaScript script id.
+ ScriptId scriptId
+ # JavaScript script name or url.
+ string url
+ # JavaScript script line number (0-based).
+ integer lineNumber
+ # JavaScript script column number (0-based).
+ integer columnNumber
+
+ # Call frames for assertions or error messages.
+ type StackTrace extends object
+ properties
+ # String label of this stack trace. For async traces this may be a name of the function that
+ # initiated the async call.
+ optional string description
+ # JavaScript function name.
+ array of CallFrame callFrames
+ # Asynchronous JavaScript stack trace that preceded this stack, if available.
+ optional StackTrace parent
+ # Asynchronous JavaScript stack trace that preceded this stack, if available.
+ experimental optional StackTraceId parentId
+
+ # Unique identifier of current debugger.
+ experimental type UniqueDebuggerId extends string
+
+ # If `debuggerId` is set stack trace comes from another debugger and can be resolved there. This
+ # allows to track cross-debugger calls. See `Runtime.StackTrace` and `Debugger.paused` for usages.
+ experimental type StackTraceId extends object
+ properties
+ string id
+ optional UniqueDebuggerId debuggerId
+
+ # Add handler to promise with given promise object id.
+ command awaitPromise
+ parameters
+ # Identifier of the promise.
+ RemoteObjectId promiseObjectId
+ # Whether the result is expected to be a JSON object that should be sent by value.
+ optional boolean returnByValue
+ # Whether preview should be generated for the result.
+ optional boolean generatePreview
+ returns
+ # Promise result. Will contain rejected value if promise was rejected.
+ RemoteObject result
+ # Exception details if stack strace is available.
+ optional ExceptionDetails exceptionDetails
+
+ # Calls function with given declaration on the given object. Object group of the result is
+ # inherited from the target object.
+ command callFunctionOn
+ parameters
+ # Declaration of the function to call.
+ string functionDeclaration
+ # Identifier of the object to call function on. Either objectId or executionContextId should
+ # be specified.
+ optional RemoteObjectId objectId
+ # Call arguments. All call arguments must belong to the same JavaScript world as the target
+ # object.
+ optional array of CallArgument arguments
+ # In silent mode exceptions thrown during evaluation are not reported and do not pause
+ # execution. Overrides `setPauseOnException` state.
+ optional boolean silent
+ # Whether the result is expected to be a JSON object which should be sent by value.
+ optional boolean returnByValue
+ # Whether preview should be generated for the result.
+ experimental optional boolean generatePreview
+ # Whether execution should be treated as initiated by user in the UI.
+ optional boolean userGesture
+ # Whether execution should `await` for resulting value and return once awaited promise is
+ # resolved.
+ optional boolean awaitPromise
+ # Specifies execution context which global object will be used to call function on. Either
+ # executionContextId or objectId should be specified.
+ optional ExecutionContextId executionContextId
+ # Symbolic group name that can be used to release multiple objects. If objectGroup is not
+ # specified and objectId is, objectGroup will be inherited from object.
+ optional string objectGroup
+ returns
+ # Call result.
+ RemoteObject result
+ # Exception details.
+ optional ExceptionDetails exceptionDetails
+
+ # Compiles expression.
+ command compileScript
+ parameters
+ # Expression to compile.
+ string expression
+ # Source url to be set for the script.
+ string sourceURL
+ # Specifies whether the compiled script should be persisted.
+ boolean persistScript
+ # Specifies in which execution context to perform script run. If the parameter is omitted the
+ # evaluation will be performed in the context of the inspected page.
+ optional ExecutionContextId executionContextId
+ returns
+ # Id of the script.
+ optional ScriptId scriptId
+ # Exception details.
+ optional ExceptionDetails exceptionDetails
+
+ # Disables reporting of execution contexts creation.
+ command disable
+
+ # Discards collected exceptions and console API calls.
+ command discardConsoleEntries
+
+ # Enables reporting of execution contexts creation by means of `executionContextCreated` event.
+ # When the reporting gets enabled the event will be sent immediately for each existing execution
+ # context.
+ command enable
+
+ # Evaluates expression on global object.
+ command evaluate
+ parameters
+ # Expression to evaluate.
+ string expression
+ # Symbolic group name that can be used to release multiple objects.
+ optional string objectGroup
+ # Determines whether Command Line API should be available during the evaluation.
+ optional boolean includeCommandLineAPI
+ # In silent mode exceptions thrown during evaluation are not reported and do not pause
+ # execution. Overrides `setPauseOnException` state.
+ optional boolean silent
+ # Specifies in which execution context to perform evaluation. If the parameter is omitted the
+ # evaluation will be performed in the context of the inspected page.
+ optional ExecutionContextId contextId
+ # Whether the result is expected to be a JSON object that should be sent by value.
+ optional boolean returnByValue
+ # Whether preview should be generated for the result.
+ experimental optional boolean generatePreview
+ # Whether execution should be treated as initiated by user in the UI.
+ optional boolean userGesture
+ # Whether execution should `await` for resulting value and return once awaited promise is
+ # resolved.
+ optional boolean awaitPromise
+ # Whether to throw an exception if side effect cannot be ruled out during evaluation.
+ experimental optional boolean throwOnSideEffect
+ # Terminate execution after timing out (number of milliseconds).
+ experimental optional TimeDelta timeout
+ returns
+ # Evaluation result.
+ RemoteObject result
+ # Exception details.
+ optional ExceptionDetails exceptionDetails
+
+ # Returns the isolate id.
+ experimental command getIsolateId
+ returns
+ # The isolate id.
+ string id
+
+ # Returns the JavaScript heap usage.
+ # It is the total usage of the corresponding isolate not scoped to a particular Runtime.
+ experimental command getHeapUsage
+ returns
+ # Used heap size in bytes.
+ number usedSize
+ # Allocated heap size in bytes.
+ number totalSize
+
+ # Returns properties of a given object. Object group of the result is inherited from the target
+ # object.
+ command getProperties
+ parameters
+ # Identifier of the object to return properties for.
+ RemoteObjectId objectId
+ # If true, returns properties belonging only to the element itself, not to its prototype
+ # chain.
+ optional boolean ownProperties
+ # If true, returns accessor properties (with getter/setter) only; internal properties are not
+ # returned either.
+ experimental optional boolean accessorPropertiesOnly
+ # Whether preview should be generated for the results.
+ experimental optional boolean generatePreview
+ returns
+ # Object properties.
+ array of PropertyDescriptor result
+ # Internal object properties (only of the element itself).
+ optional array of InternalPropertyDescriptor internalProperties
+ # Object private properties.
+ experimental optional array of PrivatePropertyDescriptor privateProperties
+ # Exception details.
+ optional ExceptionDetails exceptionDetails
+
+ # Returns all let, const and class variables from global scope.
+ command globalLexicalScopeNames
+ parameters
+ # Specifies in which execution context to lookup global scope variables.
+ optional ExecutionContextId executionContextId
+ returns
+ array of string names
+
+ command queryObjects
+ parameters
+ # Identifier of the prototype to return objects for.
+ RemoteObjectId prototypeObjectId
+ # Symbolic group name that can be used to release the results.
+ optional string objectGroup
+ returns
+ # Array with objects.
+ RemoteObject objects
+
+ # Releases remote object with given id.
+ command releaseObject
+ parameters
+ # Identifier of the object to release.
+ RemoteObjectId objectId
+
+ # Releases all remote objects that belong to a given group.
+ command releaseObjectGroup
+ parameters
+ # Symbolic object group name.
+ string objectGroup
+
+ # Tells inspected instance to run if it was waiting for debugger to attach.
+ command runIfWaitingForDebugger
+
+ # Runs script with given id in a given context.
+ command runScript
+ parameters
+ # Id of the script to run.
+ ScriptId scriptId
+ # Specifies in which execution context to perform script run. If the parameter is omitted the
+ # evaluation will be performed in the context of the inspected page.
+ optional ExecutionContextId executionContextId
+ # Symbolic group name that can be used to release multiple objects.
+ optional string objectGroup
+ # In silent mode exceptions thrown during evaluation are not reported and do not pause
+ # execution. Overrides `setPauseOnException` state.
+ optional boolean silent
+ # Determines whether Command Line API should be available during the evaluation.
+ optional boolean includeCommandLineAPI
+ # Whether the result is expected to be a JSON object which should be sent by value.
+ optional boolean returnByValue
+ # Whether preview should be generated for the result.
+ optional boolean generatePreview
+ # Whether execution should `await` for resulting value and return once awaited promise is
+ # resolved.
+ optional boolean awaitPromise
+ returns
+ # Run result.
+ RemoteObject result
+ # Exception details.
+ optional ExceptionDetails exceptionDetails
+
+ # Enables or disables async call stacks tracking.
+ command setAsyncCallStackDepth
+ redirect Debugger
+ parameters
+ # Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async
+ # call stacks (default).
+ integer maxDepth
+
+ experimental command setCustomObjectFormatterEnabled
+ parameters
+ boolean enabled
+
+ experimental command setMaxCallStackSizeToCapture
+ parameters
+ integer size
+
+ # Terminate current or next JavaScript execution.
+ # Will cancel the termination when the outer-most script execution ends.
+ experimental command terminateExecution
+
+ # If executionContextId is empty, adds binding with the given name on the
+ # global objects of all inspected contexts, including those created later,
+ # bindings survive reloads.
+ # If executionContextId is specified, adds binding only on global object of
+ # given execution context.
+ # Binding function takes exactly one argument, this argument should be string,
+ # in case of any other input, function throws an exception.
+ # Each binding function call produces Runtime.bindingCalled notification.
+ experimental command addBinding
+ parameters
+ string name
+ optional ExecutionContextId executionContextId
+
+ # This method does not remove binding function from global object but
+ # unsubscribes current runtime agent from Runtime.bindingCalled notifications.
+ experimental command removeBinding
+ parameters
+ string name
+
+ # Notification is issued every time when binding is called.
+ experimental event bindingCalled
+ parameters
+ string name
+ string payload
+ # Identifier of the context where the call was made.
+ ExecutionContextId executionContextId
+
+ # Issued when console API was called.
+ event consoleAPICalled
+ parameters
+ # Type of the call.
+ enum type
+ log
+ debug
+ info
+ error
+ warning
+ dir
+ dirxml
+ table
+ trace
+ clear
+ startGroup
+ startGroupCollapsed
+ endGroup
+ assert
+ profile
+ profileEnd
+ count
+ timeEnd
+ # Call arguments.
+ array of RemoteObject args
+ # Identifier of the context where the call was made.
+ ExecutionContextId executionContextId
+ # Call timestamp.
+ Timestamp timestamp
+ # Stack trace captured when the call was made. The async stack chain is automatically reported for
+ # the following call types: `assert`, `error`, `trace`, `warning`. For other types the async call
+ # chain can be retrieved using `Debugger.getStackTrace` and `stackTrace.parentId` field.
+ optional StackTrace stackTrace
+ # Console context descriptor for calls on non-default console context (not console.*):
+ # 'anonymous#unique-logger-id' for call on unnamed context, 'name#unique-logger-id' for call
+ # on named context.
+ experimental optional string context
+
+ # Issued when unhandled exception was revoked.
+ event exceptionRevoked
+ parameters
+ # Reason describing why exception was revoked.
+ string reason
+ # The id of revoked exception, as reported in `exceptionThrown`.
+ integer exceptionId
+
+ # Issued when exception was thrown and unhandled.
+ event exceptionThrown
+ parameters
+ # Timestamp of the exception.
+ Timestamp timestamp
+ ExceptionDetails exceptionDetails
+
+ # Issued when new execution context is created.
+ event executionContextCreated
+ parameters
+ # A newly created execution context.
+ ExecutionContextDescription context
+
+ # Issued when execution context is destroyed.
+ event executionContextDestroyed
+ parameters
+ # Id of the destroyed context
+ ExecutionContextId executionContextId
+
+ # Issued when all executionContexts were cleared in browser
+ event executionContextsCleared
+
+ # Issued when object should be inspected (for example, as a result of inspect() command line API
+ # call).
+ event inspectRequested
+ parameters
+ RemoteObject object
+ object hints
+
+# This domain is deprecated.
+deprecated domain Schema
+
+ # Description of the protocol domain.
+ type Domain extends object
+ properties
+ # Domain name.
+ string name
+ # Domain version.
+ string version
+
+ # Returns supported domains.
+ command getDomains
+ returns
+ # List of supported domains.
+ array of Domain domains
diff --git a/src/inspector/BUILD.gn b/src/inspector/BUILD.gn
index 42e5f1e..932c7a3 100644
--- a/src/inspector/BUILD.gn
+++ b/src/inspector/BUILD.gn
@@ -32,7 +32,7 @@
visibility = [ ":*" ] # Only targets in this file can depend on this.
script = "$_inspector_protocol/check_protocol_compatibility.py"
inputs = [
- "js_protocol.pdl",
+ v8_inspector_js_protocol,
]
_stamp = "$target_gen_dir/js_protocol.stamp"
outputs = [
@@ -41,7 +41,7 @@
args = [
"--stamp",
rebase_path(_stamp, root_build_dir),
- rebase_path("js_protocol.pdl", root_build_dir),
+ rebase_path(v8_inspector_js_protocol, root_build_dir),
]
}
@@ -53,10 +53,10 @@
inspector_protocol_dir = _inspector_protocol
out_dir = target_gen_dir
- config_file = "inspector_protocol_config.json"
+ config_file = v8_path_prefix + "/src/inspector/inspector_protocol_config.json"
inputs = [
- "js_protocol.pdl",
- "inspector_protocol_config.json",
+ v8_inspector_js_protocol,
+ config_file,
]
outputs = _protocol_generated
}
diff --git a/src/inspector/OWNERS b/src/inspector/OWNERS
index 477c95d..a979205 100644
--- a/src/inspector/OWNERS
+++ b/src/inspector/OWNERS
@@ -5,12 +5,6 @@
pfeldman@chromium.org
yangguo@chromium.org
-# Changes to remote debugging protocol require devtools review to
-# ensure backwards compatibility and commitment to maintain.
-per-file js_protocol.pdl=set noparent
-per-file js_protocol.pdl=dgozman@chromium.org
-per-file js_protocol.pdl=pfeldman@chromium.org
-
per-file PRESUBMIT.py=file://INFRA_OWNERS
# COMPONENT: Platform>DevTools>JavaScript