Name | Python Plugin |
Latest version | Trunk |
Requires Sonar version | 2.9 or higher |
License | GNU LGPL v3 |
Developers | |
Issue Tracker | http://jira.codehaus.org/browse/SONARPLUGINS/component/15262 |
Sources |
Description / Features
This plugin enables the analysis of Python projects.
Current feature list:
- Recognition of basic program entities:
- Directories
- Python modules
- Python packages
- Provides basic size metrics:
- files (number of)
- lines
- lines of comments
- lines of code
- Static code checking via pylint (covering as well code style as code defects aspects)
- Provides cyclomatic complexity metrics including:
- Complexity per function/method
- Complexity per module
- Complexity distributions
- Basic highlighting mode for Python in Sonar UI
Dependencies
This plugin has following dependencies:
- For complexity analysis the Python interpreter is needed, anything >=2.5 will do.
- Pylint is used for the rules compliance analysis.
Installation
- Copy the jar-archive into <sonar home>
/extensions/plugins/directory - Restart the Sonar web server
Usage
You can analyze your projects using the usual means (see this page for all available). Just make sure to set a couple of properties. See below how to do it for maven and sonar-runner.
Analyzing with maven
Add your source directories to the build and the language-property to the properties section of your pom. Syntax:
<build> ... <sourceDirectory> path </sourceDirectdory> ... </build>
<properties> ... <sonar.language>py</sonar.language> ... </properties>
- Make sure the dynamic analysis not switched of. Syntax:
<properties> ... <sonar.dynamicAnalysis>true<sonar.dynamicAnalysis> ... </properties>
- Make sure sonar-server is running
Start the analysis with
"mvn sonar:sonar"
See here for general information about analyzing via maven.
Analyzing with sonar-runner
- Add a
sonar-project.properties-file to the root directory of your project - Set
sonar.languagetopy.Syntax:
sonar-language=py
- Make sure your sonar-server is running
- run
sonar-runnerin the directory containing thesonar-project.properties-file
See here for general information about analyzing via sonar-runner.
Changelog

