The Atom package provided by DeepCode.ai finds bugs and critical vulnerabilities in your code. We support Java, C/C++, Python, JavaScript, TypeScript and XML.
Through the package you can quickly start using DeepCode's code review and analysis within your development workflow. The package will automatically alert you about critical vulnerabilities you need to solve in your code the moment when you hit Save in your IDE. With DeepCode's superior code review you save time finding and fixing bugs before they go to production.
DeepCode uses symbolic AI to process hundreds of millions of commits in open source software projects and learns how to find serious coding issues. Because the platform determines the intent of the code — and not only the syntax mistakes — DeepCode identifies 10x more critical bugs and security vulnerabilities than other tools.
In order to show detailed explanation why something was flagged as bug we introduced a new AI technique called Ontology. With Ontology, we’ve integrated the capability to present logical conclusions within the DeepCode engine.
Java, C/C++, JavaScript, Python, TypeScript and XML are currently supported.
Installing the package is rather straightforward. You could use apm
(Atom's package manager) - open the terminal and run apm install deepcode
. Below we show how to install it through the Preferences.
Open Atom's Preferences and then Install. Search for the deepcode
package. Here is a video how to do this:
we are serious when it comes to your code. We upload and analyse your code only after you giving us the consent to do so. Your code is protected and used only for the purpose of informing you about issues in code:
once the confirmation is in place we start uploading the files:
Here is a video on how to use the package. In short - don't forget to save and you would be in good hands:
There are two key steps here:
Ignore particular alert directly by using Ignore for line
or Ignore for file
:
Deepcode will create a comment, that will inform our analysis engine to ignore it. Don't forget to specify a description why you think it needs to be ignored. Your feedback will improve our engine over time:
If you want to ignore certain files/folders (like node_modules for example), create a .dcignore file. You can create it in any folder on any level starting from the directory where your project resides. You may create multiple .dcignore
files depending on your use case. This file supports glob syntax with "*" and "**" to specify file masks and sub-folders:
.node_modules
mocked_for_tests
**/models/*_molecule.js
If you need to restart the analysis or if it fails for any reason, you can easily analyse the project again by clicking Scan project
:
If you need to view the results online or you want to see example fixes, you could go to the analysis by clicking View results online
:
If you need to update the url to the DeepCode server in a self-managed environment or restart the login process, you could do so by clicking on Settings
:
Good catch. Let us know what about this package looks wrong to you, and we'll investigate right away.