﻿# Дайте два\! Обновление плагина PVS\-Studio для SonarQube

Плагин PVS\-Studio для SonarQube работает уже долгое время, однако в последнем обновлении плагин превратился в два плагина\. В этой заметке расскажем о том, почему это произошло, что изменилось, и как с этим жить\.

![1152_SonarQube_division_ru/image1.png](https://import.viva64.com/docx/blog/1152_SonarQube_division_ru/image1.png)

SonarQube — это открытая платформа для обеспечения непрерывного контроля качества кода, которая поддерживает множество языков программирования, а также позволяет получать отчёты по самым разным метрикам: покрытие кода тестами, потенциальные ошибки, дублирование кода, соответствие стандартам и др\.

Собственно, для интеграции результатов анализа PVS\-Studio в SonarQube есть наш плагин\. Он позволяет добавлять сообщения анализатора в базу сообщений сервера SonarQube и осуществлять удобное управление этими предупреждениями в Web\-интерфейсе\.


> \*\*Примечание:\*\* подробнее об интеграции PVS\\\-Studio в SonarQube можно прочитать в \[документации\]\(https://pvs\-studio\.ru/ru/docs/manual/0037/\)\\\.



Некоторое время назад наш пользователь столкнулся с проблемой, о которой незамедлительно сообщил нам: предупреждения PVS\-Studio с тегом уровня High и Low отсутствовали в отчёте SonarQube, что создавало серьёзную неразбериху при его просмотре\.

![1152_SonarQube_division_ru/image2.png](https://import.viva64.com/docx/blog/1152_SonarQube_division_ru/image2.png)

У нас, увы, нет штатного детектива, поэтому мы сами принялись изучать, почему такое могло произойти\. И в итоге нашли проблему\! Оказалось, что пользователь использовал свежую версию SonarQube, которая таила в себе неожиданные изменения\. 

Ранее в SonarQube правила имели две отдельные характеристики: Type \(Code Smell, Bug, Vulnerability, Security Hotspot\) и Severity \(Info, Minor, Major, Critical, Blocker\)\. 

Но, начиная с версии 10\.2, вместо одного Severity, состоящего из пяти уровней, появились Software Quality \(Maintainability, Reliability, Security\) и новый Severity \(Low, Medium, High\), который в коде API называется Impact\. При фильтрации предупреждений старые характеристики игнорировались как Deprecated, поэтому SonarQube для диагностик PVS\-Studio выставлял Reliability Medium в качестве уровня по умолчанию, пряча всех найденных жучков под один флажок\. 

Засучив рукава мы принялись за реализацию поддержки новой версии API в нашем плагине, и в результате решения этой задачи произошло нечто поистине магическое\. Теперь плагинов PVS\-Studio для SonarQube целых два\! Каждый из них предназначен для разных версий SonarQube и соответствующих им версий API\. Один плагин для версий, начиная с 7\.6 и заканчивая 10\.1, а другой — для 10\.2 и выше\. 

Помимо этого, в плагине для версий SonarQube выше 10\.2 при включении отображения предупреждений как уязвимостей появилось распределение для обоих UI фильтров OWASP Top 10 \(2017 и 2021 год\)\.

![1152_SonarQube_division_ru/image3.png](https://import.viva64.com/docx/blog/1152_SonarQube_division_ru/image3.png)

С выходом версии 7\.32 статического анализатора PVS\-Studio скачать плагин для нужной вам версии SonarQube уже можно [на нашем сайте](https://pvs-studio.ru/ru/pvs-studio/download-all/)\. 


> \*\*Примечание:\*\* А если в силу каких\\\-то причин вам не подходит SonarQube, то PVS\\\-Studio также интегрируется в DevSecOps платформу DefectDojo, о чём можно прочитать \[в этой статье\]\(https://pvs\-studio\.ru/ru/blog/posts/1062/\)\\\.