:snake: SonarQube Python plugin
Sonar's Clean Code solutions help developers deliver high-quality, efficient code standards that benefit the entire team or organization.
Prerequisites:
The easiest way to build the Project is by running:
mvn clean install -DskipTypeshed
It builds only Java Maven modules, runs tests, and installs jar locally. The Python interpreter is not required in that case.
Prerequisites:
pip install tox
git submodule update --init
to retrieve Typeshed as a Git submoduleAll the above should be available in PATH.
To execute the full build just run:
mvn clean install
The full build executes Typeshed serializer script. It generates protobuf messages for Typeshed symbols (for standard Python API) and our customs symbols (for Python libraries, e.g. AWS CDK). This helps with type inference and providing better rules.
First, please configure your IDE: https://github.com/SonarSource/sonar-developer-toolset.
Each new implemented rule should have @Rule(key = "S0000")
annotation on the class level.
The number of the rule can be found here: https://sonarsource.github.io/rspec/#/rspec/?lang=python.
The key is usually automatically generated by a rspec repository GitHub action
and needs to be unique in the whole project.
Please check if all files have a license header.
If not, the mvn install
will fail with the Some files do not have the expected license header
message.
To fix that please execute: mvn license:format
.
Copyright 2011-2022 SonarSource.
Licensed under the GNU Lesser General Public License, Version 3.0