JavaScript Plugin Finds Tricky Bugs, Thanks to Execution Flow

Over the last few months, the SonarAnalyzer for JavaScript has made major advances in bug detection. Until recently, it only caught rather simple bugs, like function calls passing extra arguments, which didn’t really need more than a correct identification of symbols. Things changed a lot when we made the analyzer aware of execution flow: in other words, it is now able to determine the precise order of execution inside a JavaScript function and detect bugs based on it.

Read the rest of this page »

ECMAScript 2015: With Great Power Comes Great Responsibility

Last summer a revolutionary version of ECMAScript was released with native classes, modules, arrow functions and many other long-awaited features.

Accordingly, the latest release of the Sonarqube JavaScript plugin has a bunch of new rules targeting ES2015 syntax. With our new rules we try to enforce some conventions which have already become the standard in JavaScript world.

Let’s go through some of them.

Read the rest of this page »

SonarQube supports ECMAScript 6

The 2.1 version of the JavaScript Plugin fully supports ECMAScript 6 (ES6). But what does that mean exactly ?

Read the rest of this page »

SonarQube JavaScript plugin: why compete with JSLint and JSHint?

This question has been raised several times on the Sonar mailing lists. Indeed since version 1.0, the SonarQube JavaScript plugin hasn’t relied on external rule engines like JSLint or JSHint. Like most SonarQube rule engines, the one for JavaScript is now fully based on our own open source code analysis technology: SSLR.

Read the rest of this page »

© 2008-2016, SonarSource S.A, Switzerland. All content is copyright protected. SONARQUBE, SONARLINT and SONARSOURCE are
trademarks of SonarSource SA. All other trademarks and copyrights are the property of their respective owners. All rights are expressly reserved.