Qodana for Python

Qodana for Python is based on PyCharm Professional and provides static analysis for Python projects.
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 |
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 |
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
:
bootstrap: pip install -r requirements.txt
The command will be automatically executed before the 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 Docker image tab.
Assuming that you have already installed Qodana CLI on your machine, you can run this command in the project root directory:
$qodana scan \ -e QODANA_TOKEN="<cloud-project-token>" \ -l jetbrains/qodana-python:2023.2 \ --show-report
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):
$docker pull jetbrains/qodana-python:2023.2
Start local analysis with source-directory
pointing to the root of your project and QODANA_TOKEN
referring to the project token:
$docker run --rm -it \ -v <source-directory>/:/data/project/ \ -e QODANA_TOKEN="<cloud-project-token>" \ -p 8080:8080 \ jetbrains/qodana-python:2023.2 \ --show-report
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.
Thanks for your feedback!