PVS-Studio 7.22: Visual Studio Code, Qt Creator, .NET 7

—

от автора

1016_Release_7_22_ru/image1.png

Вышел новый релиз PVS-Studio — 7.22. В него вошли плагины для Visual Studio Code и Qt Creator, поддержка анализа проектов на .NET 7, доработки механизма Best Warnings, новые диагностики и не только. Подробности описали в этой заметке.

Плагины для Visual Studio Code и Qt Creator

Новые плагины дают ещё больше вариантов кроссплатформенной работы. Сейчас в них можно работать с логами: смотреть предупреждения, фильтровать их, сортировать в гриде и т. п. Запускать анализ пока нельзя — планируем добавить такую возможность в будущих релизах.

Так выглядит плагин для Visual Studio Code:

1016_Release_7_22_ru/image3.png

А вот так — плагин для Qt Creator:

1016_Release_7_22_ru/image5.png

Документация по новым плагинам доступна на соответствующих страницах:

Поддержка анализа .NET 7, C# 11 и Blazor компонентов

Здесь почти всё понятно из заголовка. Сам C# анализатор под Linux и macOS, кстати, теперь тоже работает на .NET 7.

Небольшое уточнение про Blazor компоненты: сейчас поддерживается анализ в code секциях .razor-файлов. Планируем статью, которая раскроет тему чуть подробнее.

Улучшения и доработки Best Warnings

Напомню, что Best Warnings — механизм, который из всех предупреждений анализатора выбирает самые интересные. Особенно полезен при первом знакомстве с PVS-Studio, так как поможет в один клик оценить, что интересного удалось найти.

В этом релизе обновлений Best Warnings сразу несколько:

1. Изменили интерфейс. До кнопки «Best Warnings» легче добраться — теперь она находится на основной панели главного окна PVS-Studio:

1016_Release_7_22_ru/image7.png

Если нужно, кнопку можно скрыть через настройки (опция «Show Best Warnings Button»).

2. Скорректировали «веса» диагностик и алгоритмы выборки. Это должно сделать подборку предупреждений интереснее.

3. Добавили фильтр в большее количество IDE. Раньше механизм Best Warnings был доступен только в плагине для Visual Studio. Теперь кроме VS его можно использовать в утилите «C and C++ Compiler Monitoring UI», а также в плагинах для IntelliJ IDEA, Rider, CLion.

Обновлённая документация по Best Warnings — на этой странице.

Новые диагностики

C, C++

  • V836. Decreased performance. Unnecessary copying is detected when declaring a variable. Consider declaring the variable as a reference.
  • V2018. Cast should not remove ‘const’ qualifier from the type that is pointed to by a pointer or a reference.
  • V2019. Cast should not remove ‘volatile’ qualifier from the type that is pointed to by a pointer or a reference.

C#

  • V3183. Code formatting implies that the statement should not be a part of the ‘then’ branch that belongs to the preceding ‘if’ statement.
  • V5626. OWASP. Possible ReDoS vulnerability. Potentially tainted data is processed by regular expression that contains an unsafe pattern.
  • V5627. OWASP. Possible NoSQL injection. Potentially tainted data is used to create query.
  • V5628. OWASP. Possible Zip Slip vulnerability. Potentially tainted data is used in the path to extract the file.

Статьи

Для тех, кто пишет на C++:

Для тех, кто пишет на C#:

Разное:

**

Загрузить PVS-Studio 7.22 можно здесь.

Если хотите получать пресс-релизы по почте, подписывайтесь на рассылку.


ссылка на оригинал статьи https://habr.com/ru/company/pvs-studio/blog/705890/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *