Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "JSDT/Debug"

Line 25: Line 25:
 
== Development ==
 
== Development ==
 
==== Rhino Debug Wire Protocol ====
 
==== Rhino Debug Wire Protocol ====
To provide support for the Rhino interpreter, we had to create both sides of the coin - the debugger and the client. To facilitate communication between the debugger and the client we created an adapted version of v8 (JSON-based) packet communication. The complete specification for the RDWP can be found here.
+
To provide support for the Rhino interpreter, we had to create both sides of the coin - the debugger and the client. To facilitate communication between the debugger and the client we created an adapted version of v8 (JSON-based) packet communication. The complete specification for the [[/Rhino_Debug_Wire_Protocol|RDWP]] can be found [[/Rhino_Debug_Wire_Protocol|here]].
  
 
==== JavaScript Debug Interface (JSDI) ====
 
==== JavaScript Debug Interface (JSDI) ====
  
The JSDI is used to provide a common way for our models and UI to communicate with a variety of debugger back-ends - write one UI + model and provide additional debuggers.
+
The JSDI is used to provide a common way for our models and UI to communicate with a variety of debugger back-ends - write one UI + model and provide additional debuggers. The complete specification for the [[/JavaScript_Debug_Interface|JSDI]] can be found [[/JavaScript_Debug_Interface|here]].
  
 
== Testing ==
 
== Testing ==
  
 
[[/Testing|Smoke Tests]], scenarios, example scripts and more to aid testing.
 
[[/Testing|Smoke Tests]], scenarios, example scripts and more to aid testing.

Revision as of 16:27, 28 May 2010

JSDT Debug
Website
Download
Community
Mailing ListForumsIRCmattermost
Issues
OpenHelp WantedBug Day
Contribute
Browse SourceProject Set File

The JSDT debug project brings a variety of JavaScript debugging support to the JSDT using a common UI and communicating using a common protocol - JavaScript Debug Interface (JSDI). The common interface for the debugger emulates that of the platform and JDT debugger to allow a smooth transition and ease of use for the JSDT debugger.

Currently we have debugging support for Rhino and an incubation version of Crossfire / Firebug support.

Bundles

The entire JSDT debugger is comprised of several bundles:

  • org.eclipse.wst.jsdt.debug.core - contains the JSDI specification an debug model elements.
  • org.eclipse.wst.jsdt.debug.crossfire (incubation) - contains a Crossfire implementation of the debugger.
  • org.eclipse.wst.jsdt.debug.rhino - contains a Rhino implementation of the debugger.
  • org.eclipse.wst.jsdt.debug.rhino.debugger - contains the Rhino debug hooks to connect to the Rhino interpreter.
  • org.eclipse.wst.jsdt.debug.ui - contains the shared UI presentation for the debugger implementations.
  • org.eclipse.wst.jsdt.debug.core.tests - contains related test cases for the debug core.
  • org.eclipse.wst.jsdt.debug.rhino.tests - contains Rhino specific tests.

Planning

JSDT Debug follows directly the project plan for JSDT.

Development

Rhino Debug Wire Protocol

To provide support for the Rhino interpreter, we had to create both sides of the coin - the debugger and the client. To facilitate communication between the debugger and the client we created an adapted version of v8 (JSON-based) packet communication. The complete specification for the RDWP can be found here.

JavaScript Debug Interface (JSDI)

The JSDI is used to provide a common way for our models and UI to communicate with a variety of debugger back-ends - write one UI + model and provide additional debuggers. The complete specification for the JSDI can be found here.

Testing

Smoke Tests, scenarios, example scripts and more to aid testing.

Back to the top