Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Sonar is the ultimate open source platform to manage code quality.

Below is a list of links to some materials, which can be very useful during preparation of proposal , so we decided to share them with you :

Title Implement a fully new COPY/PASTE detector algorithm

Make SSLR natively support regular expressions by automatically converting them into parsing expression for SSLR PEG virtual machine

Keywords

CPDPEG, AlgorithmJava, Simian Parser, Lexer

Description The current COPY/PASTE detector is based on PMD/CPD. CPD is pretty good open source implementation but which has two main drawbacks : there isn't too much activity on this library and it requires lot of memory to work so it can't be used to analyse millions of lines of code
Most COPY/PAST detector requires first to lex the source code in order to work with a list of tokens. This lexing mechanism is not part of this project which is really focused on the algorithm and CPU/Memory performances of this algorithm.
With this new algorithm, some new very valuable features could be implemented into Sonar : 

  • Find duplications across projects
  • Find code duplicated from Open Source projects

Mentor(s)

Freddy Mallet, Evgeny Mandrikov

Constraint

It should be possible to analyse any amount of source code with a limited amount of memory.

Materials

...

SSLR is a lightweight Java library which provides all the required material to analyse any piece of source code. This library is used by almost of Sonar language plugins: Java, C#, Cobol, Python, Flex, Javascript, ... SSLR still uses standard java API to lex the source code based on regular expressions and the goal of this project is to also based this lexing on this internal SSLR PEG virtual machine.

Mentor(s)

Evgeny Mandrikov

--

Title

Build a new set of HTML5 Visualization components based on D3.js

Keywords

HTML5, Javascript, CSS

Description

D3.js is an awsome but low level javascript library to build any kind of HTML5 visualization components. The goal of this project is to build some highly level and sexy visualization components based on D3.js like TreeMap, BubbleChart, TimeLine, ..

Mentor(s)

Simon Brandhof and Freddy Mallet

--

Title

Implement a Sonar Wallboard

Keywords

Report, Wallboard, Widgets, Java, HTML5

Description

Sonar is well-known for its user-friendly interface but doesn't yet provide any mechanism to configure and display a Wallboard.

Mentor(s)

Simon Brandhof

Constraint

Reuse the Sonar widget/dashboard mechanism

---

Title

Implement a plugin to cover a new language like Scala, Pyton, ...

Keywords

Plugin, Language

Description

Through its plugin ecosystem, Sonar is already able to analyse C, Java, COBOL, Flex, Groovy, ... source code. But lot of exiting languages are not yet covered.

Mentor(s)

Simon Brandhof, Freddy Mallet

---

...

Title

...

Make the C Rules engine a popular Open Source rule engine for C source code

...

Keywords

...

Plugin, AST, C, Rule

...

Description

...

The C Rules engine is still a pretty young plugin which is based on the SonarSource C Plugin. This plugin doesn't yet contain lot of rules/checks but is ready to grow in order to embed best practices and market standards.

...

Mentor(s)

...

Freddy Mallet

...

Materials

...

---

Title

Create Sonarpedia.org

Keywords

Community, Social, Descriptions

Description

Stackoverflow is a good example of a social community which let you get answer on any kind of questions about programming. Sonarpedia could be similar but dedicated to Quality and Security questions.

Mentor(s)

Freddy Mallet