Hi All,

I'd like to ask several questions regarding OOME while parsing/infer types issues and the overall performance...

There are pretty many related issues in bugzilla like the following:
*Bug 317249* <https://bugs.eclipse.org/bugs/show_bug.cgi?id=317249> -[performance] Eclipse frequently hangs with high CPU when editing JavaScript with lots of local declarations *Bug 323283* <https://bugs.eclipse.org/bugs/show_bug.cgi?id=323283> -[performance] Opening env.rhino.1.2.js hangs Eclipse *Bug 324299* <https://bugs.eclipse.org/bugs/show_bug.cgi?id=324299> -[performance] Javascript editor crashes or destabilizes Eclipse
and many others...

These issues aren't easy to fix and mostly require to have some compromise between the performance and functionality.

As such, I'd like to ask: do we need a mode/option for JSDT when there is no JavaScript parsing/validation is applied? Using such a mode users will get:
- No warnings/error markers and/or annotations
- No outline/type hierarchy/override indicators.
- No validation/content assist/refactoring allowed in JavaScript Editor.
But:
- JavaScript editor will be as fast as just a text editor and will still be syntax-highlighted.
- No more OOME errors
- (in future) Custom validators/content assist providers allowed.

This could really help with performance on big projects especially when JSDT doesn't plays the main role in project development.

Users may test such an option by replacing they JSDT from WTP M7 by the version built from my playground here:
https://github.com/vrubezhny/webtools.jsdt/tree/no-build-no-validation-mode-enabled

Use the following command to build:
cd <YourProjects>/webtools.jsdt
mvn clean install -DskipTests=true -Pbuild-individual-bundles

Then install from local site <YourProjects>/webtools.jsdt/site/target/repository/ directory (available after successful build).

What do you need to make it fast - is just to set ECMAScript compliance level preference value to "External Builder/Validator" on JavaScript->Validator preference page.

BTW, having such option could be really useful if you're using a product like tern.java and angularjs-eclipse - they're provide ECMA5 compatibility and work a really faster this way.

And as no parsing/validation/content assist and so on is available when "External Builder/Validator" option is selected, I'd like to ask users what features they are really need and use in JSDT?

Regarding the performance issues listed, I strongly see one candidate to cut out from JSDT: It's override indicators that are doubling the performance glitches and adds almost nothing useful for users (imho). Should we cut it out?

What do you think?

Thanks in advance,
Victor Rubezhny,
JSDT

_______________________________________________
wtp-dev mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev

Reply via email to