PVS-Studio 7.39: OWASP Top Ten 2021, улучшения в плагине для Visual Studio Code, расширение поддержки MISRA Compliance и не только
Были исправлены ошибки и падения, связанные с использованием нового парсера C++, представленного в предыдущей версии С++ анализатора PVS-Studio, в том числе критические падения при анализе проектов на Unreal Engine. Если вы столкнулись с нестабильной работой нового парсера, рекомендуем временно переключиться на предыдущую реализацию с помощью настройки use-old-parser и обязательно сообщить о проблеме в техническую поддержку. Это поможет нам быстрее улучшить его надёжность.
В Java анализаторе проведена работа по улучшению покрытия диагностическими правилами категорий OWASP Top 10 2021. Теперь он покрывает 9 из 10 категорий. Подробнее об этом можно прочитать здесь.
Добавлена поддержка генерации отчёта MISRA Compliance с учётом новых поддерживаемых версий MISRA. Продолжаются работы по поддержке стандарта MISRA C 2023, которые планируется завершить до конца 2025 года. Подробнее о покрытии стандартов MISRA можно прочитать здесь.
В плагине PVS-Studio для среды разработки Visual Studio Code добавлена возможность запуска анализа в режиме мониторинга компиляции на операционной системе Windows. В предстоящих релизах мы планируем также поддержать в Visual Studio Code трассировку сборки на операционных системах семейства Linux. Подробнее об этом в нашей документации.
Добавлена документация об интеграции отчёта анализатора в ASOC-платформы CyberCodeReview и TRON.ASOC.
PVS-Studio 7.38: новое ядро C++ анализатора, пользовательские аннотации в Java, улучшение taint-анализа и многое другое
Реализовано новое ядро C и C++ анализатора PVS-Studio, включающее полностью переработанные компоненты: парсер, семантический анализатор и систему типов. Новое ядро обеспечивает более точную обработку шаблонных конструкций, улучшенный разбор стандартной библиотеки и кода на современных стандартах языка C++. В ходе расширенного периода тестирования (EAP) была достигнута стабильная работа нового ядра на большом количестве реальных проектов. Для обеспечения обратной совместимости сохранена возможность временного переключения на предыдущую версию ядра. Подробнее об этом можно прочитать в документации. В случае возникновения проблем при анализе рекомендуем сообщить о них в техническую поддержку. Ваша обратная связь поможет ускорить финальную стабилизацию нового ядра C и C++ анализатора.
Реализован механизм пользовательских аннотаций в Java анализаторе PVS-Studio. Также добавлена возможность разметки источников и приёмников заражения для taint-анализа. Подробнее о механизме и синтаксисе файлов с аннотациями можно прочитать в документации.
На странице классификации предупреждений PVS-Studio, согласно стандартам MISRA C и MISRA C++, появилось разделение по версии стандарта. Посмотреть можно по этой ссылке. Мы продолжаем увеличивать покрытие стандарта MISRA C 2023 и планируем завершить работы в этом направлении до конца 2025 года.
Поддержано использование Kotlin DSL при использовании плагина PVS-Studio для сборочной системы Gradle. Подробнее об этом можно прочитать в соответствующем разделе документации.
Плагин PVS-Studio появился на портале плагинов для интегрированной среды разработки OpenIDE. Подробнее о работе с этим плагином можно прочитать в документации.
PVS-Studio 7.37: улучшения taint-анализа, выбор версии стандарта MISRA, анализ SLNX и многое другое
Механизм анализа помеченных данных (taint-анализа) в C++ анализаторе PVS-Studio теперь распространяется на диагностики поиска других типов ошибок: деления на ноль, выхода за границу буфера, побитового сдвига на недостоверное значение, знакового переполнения и передачи аргументом недостоверного значения. В C# и Java анализаторах PVS-Studio добавлен учёт помеченных данных при выходе за границу массива, определении переполнения и потенциального деления на 0.
В C и C++ анализаторе улучшена работа со стандартной библиотекой и поддержка стандарта языка C23.
Возможность выбора версии стандарта MISRA C Coding Guidelines добавлена в плагины PVS-Studio для сред разработки Visual Studio Code, Qt Creator, CLion и Rider, а также для утилит командной строки PVS-Studio_Cmd.exe и pvs-studio-analyzer.
Поддержан анализ C++ и C# проектов на основе сборочной системы MSBuild, использующих формат решений SLNX.
Плагин PVS-Studio для IDE Qt Creator портирован на комплект разработчика для операционной системы "Нейтрино" на Windows. Поддержана работа с Qt Creator 6 (Qt 5.14.2) из данного комплекта разработчика.
Узнайте, что изменилось в PVS-Studio за последние три года! В этом видео мы расскажем про новые диагностические правила, интеграции, оптимизацию работы анализатора и многое другое.