QualityAssistant

QualityAssistant provides a live feedback in the Nautilus browser (main code editor of Pharo). It is the most used tool with the static analysis feedback in Pharo. QualityAssistant also have a hight positive acceptance rate of 90%.

QualityAssistant

Augmented Code Pane

Some tools are using the critiques provided by Renraku model to highlight Problematic issues in the source code. At the moment Message Browser, provides this functionality by default and Nautilus has an option to activate such feedback. A plugin for the debugger is soon to be released.

Augmented Code Pane

CriticBrowser

CriticBrowser is a veteran tool for static analysis that relied on SmallLint static analysis and existed in Pharo for many years. Renraku started as a wrapper of SmallLint and still shares may static analysis rules with the old system. During the work on Renraku we learned many important approaches to suggest automated fixes or detect issues more precisely. Lately CriticBrowser was ported to Renraku, and so all the features originally developed for QualityAssistant are now available in CriticBrowser.

CriticBrowser

Foreign Rules

Whether you are using frameworks integrated into Pharo such as SUnit or Glamour, or loading in external projects like Roassal or Seaside, they come prepackaged with their domain-specific rules. Now all the tools that use Renraku (Nautilus, MessageBrowser, CriticBrowser, Calypso) will support you with domain-specific critiques.

Foreign Rules

Calypso Support

Calypso is a new superior code browser for Pharo, which is hopefully going to replace Nautilus in one or two years. It may seem to be not a big deal, but Calypso also provides static analysis support based on Renraku. This quality reporting feature of Calypso was not implemented by the developers of Renraku, which is already a success story, meaning that the API and other support is good enough for the other to build on top. But the fact that all the static analysis implemented for Renraku will continue to work in Calypso is absolutely amazing. For example a very nice static analysis system called Usage Contracts was lost, as it used a custom integration with the old Pharo code browser, which was then replaced by Nautilus.

Calypso Support

More than Code Quality

Although this is just a prototype, an engine for linking source code with the Pharo issue tracker used Renraku to report issues that might be related with a certain piece of code. As the result the developers of the issue linking could focus on the algorithm itself, as the output was handled by the tools that use Renraku.

More than Code Quality

Advanced Feedback Loop

To ensure the best experience we collect manual feedback about the usefulness of individual critiques, as well as record (upon explicit agreement) user interactions to understand how our framework is used an continue improving it the best way possible.

Advanced Feedback Loop

MatchTool

MachTool is a tool for experimenting with Smalltalk Pattern code and discover how code snippets are matched and which groups are created in the process. Although not directly linked to Renraku, MatchTool became possible due to updates of the Pattern Code API motivated by Renraku evolution.

MatchTool