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/JSDT Neon Plan"

(Run/Debug support)
Line 53: Line 53:
  
 
* Concentrate on debug support for Chrome and node.js support initially
 
* Concentrate on debug support for Chrome and node.js support initially
  * Study [existing JSDT debug](https://wiki.eclipse.org/JSDT/Debug)
+
** Study [existing JSDT debug](https://wiki.eclipse.org/JSDT/Debug)
  * Is [chromedevtools](https://code.google.com/p/chromedevtools/wiki/EclipseDebugger)  relevant?
+
** Is [chromedevtools](https://code.google.com/p/chromedevtools/wiki/EclipseDebugger)  relevant?
 
* Launch configuration for running and (or) debugging Node.js applications
 
* Launch configuration for running and (or) debugging Node.js applications
 
* Launch configuration for connecting to a Chrome based browser
 
* Launch configuration for connecting to a Chrome based browser

Revision as of 16:36, 9 October 2015

Draft JSDT Plan for Neon

Improve support for established JavaScript technologies

  • Continue the working on Integration of dependency management tools like node.js/bower/npm into JSDT, thus in order to make it possible for developers to use such tools right from the IDE.

A number of CQs is created and approved, due to make it possible to invoke native node.js/bower/npm utilities installed in user environment:

 * https://dev.eclipse.org/ipzilla/show_bug.cgi?id=9479 - Use of node.js installation on user environment Version: v0.12.2 and later
 * https://dev.eclipse.org/ipzilla/show_bug.cgi?id=9487 - Use of npm installation on user environment Version: v2.7.5
 * https://dev.eclipse.org/ipzilla/show_bug.cgi?id=9488 - Use of Bower installation on user environment Version: v1.4.1 and later
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=459732 - Bower IDE contribution
  • An extension point for configuring and invoking node.js and npm. The default implementation should allow users to select their node/npm installation as preference but tools like JBT should be able to extend and provide embedded/preconfigured node.js implementations.
  • JSON Editor integration contribution is going in order to let developers to create/edit/modify JSON files. From JSDT point of view the goal is to provide a support for bower.json/.bowerrc/packages.json files editing which is a part of dependency management tools integration work.

The BugZilla & CQs are finally created - one for JSON editor itself and one for minimal-json:

 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=471820 - [contribution] Eclipse WTP JSON Editor
 * http://dev.eclipse.org/ipzilla/show_bug.cgi?id=10061 - minimal-json Version: 0.9.4
 * http://dev.eclipse.org/ipzilla/show_bug.cgi?id=9924 - JSON Editor
 * https://dev.eclipse.org/ipzilla/show_bug.cgi?id=10236 - JSON Schemas


  • Parser/scanner/validator changes in order to make it compatible to ECMA5 at least (but better to ECMAScript 2015)
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=223131 - [language support] Add ecmascript4 /JavaScript 2 compiler compliance level
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=473559 - [language support] Add support for ECMAScript 2015
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=477031 - [ES6] Support for ECMAScript 6 validation
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=477030 -  [ES6] Support for ECMAScript 6 syntax coloration
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=471853 - JavaScript marks ".delete" and ".instanceof" as bugs

  • The maintenance for bug fixing and solving the performance issues like the following:
 * Limit the scope of files to be parsed by JSDT as many of cases don't require all the existing project files to be parsed in all the cases.
 * Work on Performance issues: We've added a way to skip/disable the internal JSDT parsing/validation. Now we need to add an extension mechanism in order to allow external validation.
 * Other performance and stability issues (BugZilla, Automated Error Reporting System, and so on)
The issues:
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=466260 - OutOfMemoryError in Parser.createStringLiteral (4582)
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=474549 - copying two lines of javascript freezes eclipse

XML/HTML validation

  • The current 'as-you-type' validation API limits the contributors (JBT, for example) in ability to provide a fast validation mechanism for XML/HTML validation. We need to extend/modify an existing API to make it more flexible/fast.
  • The HTML validation doesn't work for custom tags and attributes, and doesn't provide a way for adopters to infer custom validators as well (see angular's ng-* attributes). We need to propose a way for adopters to extend the current validation with custom validators.
The issues:
 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=443097

Integration with 3rd Party JavaScript tools

  • Provide a solution for an automatic disabling of JSDT internal parsing/validation in case when Tern.java is installed in user's environment, to make JSDT not to consume the resources on parsing/validation/content assisting while this work is doubled and is done better by Tern.java. This could be done by either the configuration of JSDT by a JBT's jst.jsdt plug-in or by Tern.java itself (by its JSDT integration plug-in).

Run/Debug support

Issues:

 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=479466

Back to the top