May 2017 (version 1.2.0-alpha)

1.2.0 Update

Welcome to the new logo!

We've released a 1.2.0 DeepScan service. We focused to deliver new brand identity, organization repository and React rules.

Keep reading for the highlights for this release.

Release Summary

This version includes a number of updates that we hope you will enjoy. The notable highlights are:

New Brand

It's been 3 months since we launched DeepScan.

Today we'd like to announce our new brand. We've redesigned our logo, color scheme, and home page focusing on revealing our vision.

Our vision is providing the best JavaScript analyzer that helps you to find problems and the logo is a visual metaphor of this commitment. The submarine of our logo stands for the tool to analyze code and detect unknown problems.

Here's our new design. We hope you enjoy it.

New Logo & Colors

New BI: LogoNew BI: Colors

New Home Page

New BI: Home Page

React and Flow Support

React Rules

With the rapid growth of React, we're concentrating to deliver React specific rules.

We now ship with a few first rules like:

  • Do not use the return value of render() directly
  • Specify an event handler as correct type
  • Do not return false from an event handler to stop event propagation
  • Do not set this.state variable directly

If you'd like to read details, please refer to React Rules.

Flow Support

Starting in this release, we add support for Flow. From now, you can use DeepScan for files written in Flow.

Also, Flow type annotations are used in some rules to detect more alarms.

Let's take an example of NO_EFFECT_CALL rule.

function foo(str: string): string {
    str.replace("a", "b"); // NO_EFFECT_CALL alarm
                           // 'String.prototype.replace()' result should not be ignored.
    return str;
}

Organization Repository

There has been users' request for supporting GitHub organization repositories. Starting in this release, we are very excited about announcing good progress for it.

In Repositories view, you can now see your organizations, see the repositories in it, and add the project you want as you did for the user repository.

Note: To display your organizations in DeepScan, you need to grant third-party access to DeepScan. Please check Connection with DeepScan on GitHub.

Organization repositories

Improved File Listing

To help you browse files dead simple, we changed Files view as a conventional Explorer style from displaying all files in a page.

  • Drill-down from the top-level directory
  • See issues and lines of code for the directory
  • Search for files by entering a file name

And you can exclude a file or directory from the analysis result by just clicking the 'x' button.

Improved File Listing

Improved Issue Listing

We changed sorting and filtering combo boxes in a new way.

In the left side of Issues view, you can easily sort and filter the issues.

  • Sorting criteria: Impact, File, Rule
  • Filtering criteria: Impact, Status, Rule, File, Newly detected since previous analysis

And we provide Expand All and Collapse All buttons to show or hide all code snippets.

Improved Issue Listing

Miscellaneous

Notification

In Account Settings view, you can now set whether you want to be notified by e-mail. There are two events:

  • Analysis is complete
    • Notify me when normal analysis is complete e.g. adding project, reanalyzing project after changing rules
  • Automatic analysis per commit is complete
    • Notify me when automatic analysis is complete. Automatic analysis means the analysis automatically occurred as commits are pushed to the repository.

Commit Information

In Overview view, you can see the commit information (author, message, date) for the latest analysis result. This helps you to verify your commit has been analyzed.

Commit Information

Analysis Improvements

  • Show the cause of detected problems for more rules
  • We now use Babylon parser used in Babel transpiler. With this change, we support the latest JavaScript features such as decorators and binding operator.

GitHub OAuth Scope

We changed to request repo scope to support organization repository and delete a webhook.

For a complete list of GitHub OAuth scope, please refer to this guide.

Bug Fixes

  • Open Source Report does not show a chart.
  • In Demo and Dashboard, the location of syntax error is not marked properly in the line.
  • File Viewer's scroll does not work in iPhone.
  • Fixed many small bugs.

Known Issues

  • For non-analyzed branch, Files and Settings view does not work correctly. Please analyze the branch first in Overview view.
  • On Safari before 10.1, you cannot download a file in file viewer of Issues and Files view.