# Supporting SCM providers

The SonarQube Scanner uses information from the project’s SCM provider, if available, to:

* Assign a new issue to the person who introduced it. The last committer on the related line of code is considered to be the author of the issue.
* Estimate the coverage on new code, including added and changed code since in your new code.
* Display the most recent commit on each line in the code viewer.

![Exempt a block of Python code from coverage](https://3272878703-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FI10pmJWeVVXYITlQJllp%2Fuploads%2Fgit-blob-684502976c46262d850aceb9870cc3f2cf8dfc59%2F9801c7fc496d5d2181ecff3ec24703b0685513dd.png?alt=media)

Exempt a block of Python code from coverage

The only required SCM command is "blame", which gets the last committer of each line for a given file. This command is executed by a SonarQube plugin through the extension point `org.sonar.api.batch.scm.ScmProvider`. See the embedded [scm-integration](https://docs.sonarsource.com/sonarqube-server/10.7/analyzing-source-code/scm-integration "mention") documentation for more details.
