Релиз Svace 3.3.2

Выходит следующая версия Svace 3.3.2. Основные изменения: обновление поддерживаемых версий Java, C# и Go, добавление анализа с кэшем в удалённый анализ.

Обновления для Java, C# и Go

В релизе обновлены компиляторы для следующих языков:

Язык Go довольно активно развивается и сейчас уже доступны версии 1.18 и 1.19. Проекты для этих версий также должны анализироваться, но возможен неточный анализ для новых возможностей языка.

Удалённый анализ

Другим важным изменением было добавление анализа с кэшем в удалённый анализ. Теперь сервер удалённого анализа может запускать анализ с кэшем, что позволит существенно сократить время. Для активации режима необходимо передать параметр --with-cache команде запуска удалённого анализа: svace remote analyze --with-cache.

Также в анализе появилась опция ZIP_ANALYZE_RES, которая позволяет передать заархивированную директорию analyze-res на клиентскую машину при удалённом анализе.

Улучшения детекторов

В этом релизе было улучшено множество детекторов. Ниже улучшения для детекторов, которые просили улучшить наши пользователи: DYNAMIC_OVERFLOW, SIMILAR_BRANCHES, DEREF_OF_NULL.RET, DEREF_OF_NULL.COND, UNCHECKED_FUNC_RES.STAT, DEREF_OF_NULL.RET.STAT, DEREF_OF_NULL.CONST, USE_AFTER_FREE.REALLOC, HANDLE_LEAK (C#), DEREF_OF_NULL.RET.USER.PROC (C#).

Утилита svace warning

В утилиту просмотра детекторов добавлена возможность объединения и пересечения:

Команда

svace warning DEREF_AFTER_NULL,DEREF_OF_NULL false

выключит предупреждения DEREF_AFTER_NULL и DEREF_OF_NULL.

Команда

svace warning --and CRITICAL,GO

покажет список критических предупреждений для Go.


Бородин Алексей