Qodana for Python
Qodana for Python is based on PyCharm Professional and provides static analysis for Python projects.
Supported technologies
Qodana for Python provides inspections for the following technologies.
Programming languages | Python |
Markup languages | CSS HTML JSON and JSON5 RELAX NG XML YAML |
Scripting languages | Shell script |
Databases and ORM | MongoJS MySQL Oracle PostgreSQL SQL SQL Server |
Frameworks and libraries | Django Google App Engine Jupyter Pyramid |
Supported features
The Qodana for Python linter provides the following Qodana features:
Feature | Available under licenses |
---|---|
Ultimate and Ultimate Plus | |
Ultimate Plus | |
Ultimate and Ultimate Plus | |
Ultimate and Ultimate Plus | |
Ultimate Plus |
Try it now
Analyze a project locally
Install project dependencies
For a basic Python project that has no external dependencies, no preliminary steps are required.
In case the project has external pip
dependencies, you can set them up using the bootstrap
field in the qodana.yaml
file.
For example, if your project dependencies are specified by the requirements.txt
file in your project root, add the following line to qodana.yaml
:
The command will be automatically executed before the analysis.
Run analysis
Qodana provides two options for local analysis of your code. Qodana CLI is the easiest option to start. Alternatively, you can use the Docker command from the tab.
Assuming that you have already installed Qodana CLI on your machine, you can run this command in the project root directory:
Here, the QODANA_TOKEN
variable refers to the project token.
To start, pull the image from Docker Hub (only necessary to get the latest version):
Start local analysis with source-directory
pointing to the root of your project and QODANA_TOKEN
referring to the project token:
Open http://localhost:8080
in your browser to examine inspection results. Here, you can also reconfigure the analysis, see the Inspection report section for details. When done, you can stop the web server by pressing Ctrl-C in the console.