Changelog
Release 9-0-1
15.07.2024
- Исправлены ошибки в клонировании проектов, приводящие к размножению записей в некоторых внутренних таблицах
- Различные исправления связанные с миграцией данных
- Исправлена работа ряда CLI команд с включенным TLS на сервере
- Исправлен ряд ошибок в генерации PDF
Release 9-0-0
04.06.2024
- Множество изменений в UI, смотрите Release notes 9-0-0
- Svacer разделен на два исполняемых файла:
svacer-server
— сервер иsvacer
— клиент - Object store заменен на другую реализацию. Конвертация данных запускается автоматически при апгрейде и требует примерно 2х-2.2х дискового пространства, после конвертации старый object store будет удален. Время конвертации зависит от объема данных и скорости диска
- Изменен алгоритм сопоставления предупреждений. При старте сервера будет произведена регенерация всех инвариантов во всех ветках. Это может занять продолжительное время (зависит от мощности сервера и объемов данных)
- Добавлена возможность ручного сопоставления предупреждений для переноса разметки
- Добавлена экспериментальная поддержка OpenID протокола для аутентификации
- Добавлена экспериментальная возможность слияния снимков через CLI
- Исправлены баги в импорте Sarif, добавлена поддержка импорта с относительными путями к файлам (флаг
--base-dir
) - Лог сервера работает в режиме append, прежние данные не затираются
- Добавлена возможность передачи токена аутентификации в клиент Svacer через переменную окружения
SVACER_AUTH_TOKEN=token
- Добавлена возможность передачи логина и пароля в клиент Svacer через переменную окружения
SVACER_AUTH_CREDS=login:password
- Добавлен public REST endpoint для импорта
.svace-dir
на стороне сервера - Добавлена возможность импорта
.svace-dir
из веб-интерфейса - Добавлены метрики для Prometheus, доступны при запуске сервера с переменной окружения
SVACER_TRACE_OPTIONS=prom_metrics_on
на/api/metrics
- Добавлена очистка БД от мусора с возможностью настройки периодичности данной операции через переменную окружения
SVACER_GC_PERIOD=val
где val — duration в форматеhhmmss
или cron шаблон вида https://en.wikipedia.org/wiki/Cron - Добавлена возможность клонирования проектов
- Добавлен импорт
*warn, *.err
файлов из.svace-dir
, которые содержат диагностические сообщения от Svace - Добавлена возможность ограничения числа запросов на сервер с указанием параметров в переменной окружения
SVACER_SERVER_THROTTLE_PARAMS
- Добавлен шаблон для импорта разметки из кода на Go:
DEFAULT_GO
- Добавлена возможность аутентификации из файла
- Исправлены проблемы безопасности
- Добавлена возможность просмотра исходного кода снимка с предупреждениями анализатора во внешней IDE собранной на базе Theia IDE
- К команде automigrate add в CLI добавлен флаг
skip-exist
, чтобы при добавлении паттерна, который уже существует, не выдавало ошибки - К команде upload (import с флагом upload) с указанием флага
quality-gate
теперь можно добавить флагquality-gate-verbose
. Если его указать, то также будет выведен результат успешных проверок quality-gate - Улучшения в поддержке протокола LDAP
Release 8-0-1
22.01.2024
- Исправлена работа в изолированной от сети среде. Загрузка Web UI больше не требует доступа к публичным CDN
- Добавлена поддержка функций при указании пользовательского фильтра
- Добавлено API для управления пользовательскими фильтрами. Детали и пример использования можно найти здесь: https://gitlab.ispras.ru/svacer-public/api-go-examples/-/tree/master/api-ui-settings
- Исправлено отображение Checker Severity при экспорте в SARIF. Теперь Critical -> error; Major, Normal -> warning; Minor -> note; any other -> warning
Release 8-0-0
21.11.2023
- Множество изменений в UI. Смотрите обзор в Release notes 8-0-0
- Добавлен новый импорт и экспорт из SARIF в command line с поддержкой исходного кода в SARIF файлах и импортом описания детекторов из SARIF
- Добавлены группы проектов
- Переделана модель ролей и доступов. Добавлен CLI для управления ролями и доступами
- Добавлена возможность настройки автопереноса разметки между ветками, в том числе в разных проектах
- Импорт/экспорт снимков включает информацию о детекторах
- Исправлена работа интерфейса с Undefined детекторами (т. е. детекторами, информация о которых отсутствует в Svacer)
- Добавлено экспериментальное API по управлению детекторами и конфигурациями детекторов
- Добавлена очистка исходного кода от Svacer-specific комментариев перед экспортом разметки в код
- Добавлена возможность включения режима обязательного комментария при разметке кода. Комментарий будет сгруппирован с операцией разметки и будет иметь ссылку на нее
- Утилита миграции со старого svace-сервера больше не поддерживается. При необходимости миграции используйте утилиту из прошлых релизов Svacer
- Добавлена Swagger документация на API
- Добавлено хранение истории изменений комментариев
- Опция
--pathPrefix
поддерживает файлы в JSON формате вида:[{ "prefix": "/some/path", "replace": "/test" }, ...]
- При использовании операции по обновлению
pathPrefix
на сервере, данные о прежнемpathPrefix
запоминаются в мета-информации о снимке - Добавлена возможность переименования снимков в UI
- Sensitive информация (детали подключения к БД с данными аутентификации) убрана из UI и API
- ОС в docker-образе Svacer обновлена с Ubuntu 18 до Ubuntu 22
- Улучшена логика автоопределения портов и протоколов при соединении с сервером из Svacer CLI
Release 7-0-1
23.05.2023
- Исправлена проблема с фильтрацией предупреждений для C# проектов
Release 7-0-0
16.05.2023
- Убрана зависимость от PostgreSQL из .deb и .rpm пакетов, чтобы проще было ставить Svacer только как клиент
- Сделан пакет для Windows (.msi) и документация по установке и запуску на Windows
- Теперь, если при svacer import и svacer sarif не указан путь к проекту, им считается текущая директория
- Информация о разметке и блокировках теперь обновляется автоматически при изменении в другом браузере (табе) или другим пользователем
- UI для пользовательских фильтров улучшен и перенесен в правую верхнюю часть экрана
- UI для выбора проекта, ветки и снимка теперь находится на одном уровне
- Улучшен UI для режима сравнения снимков
- Добавлена возможность работать одновременно с несколькими открытыми файлами в режиме Code, это поведение можно изменить в настройках профиля пользователя
- В левой навигационной панели детекторы теперь по умолчанию группируются по серьезности, это поведение можно изменить в настройках профиля пользователя
- Профиль текущего пользователя теперь можно смотреть/редактировать только через меню в правом верхнем углу
- Добавлена возможность копирования в системном логе и журнале
- Для пользователя теперь запоминается последний контекст (проект/ветка/снимок), с которым он работал, он автоматически открывается при старте новой сессии
- Групповая разметка теперь делается единой транзакцией, в случае ошибок или отмены все изменения откатываются
- Добавлено предупреждение при использовании некорректных путей при использовании REST API с префиксом /api
- Поддержка указания паролей из файла или pipe-а при использование Svacer CLI
- Добавлена поддержка multi-tab code view для режима просмотра кода объекта сборки
- Добавлена поддержка сохранения информации об удаленных детекторах при загрузке информации о детекторах из новой версии Svace
- Исправлен импорт результатов анализа, если сборка проводилась с опцией --disable-dxr
- Исправлены проблемы при импорте и прикреплении нескольких файлов к снимку
- Исправлены ошибки с входом в систему пользователей LDAP (специальные символы в пароле, вход по атрибуту mail)
- Добавлена возможность использования резервных серверов LDAP
- Добавлена возможность автоматического назначения пользователям LDAP роли Svacer, в зависимости от принадлежности пользователя к LDAP группе
- Добавлены новые public запросы на получение маркеров/снимков/проектов с учетом заданных параметров фильтрации
- Добавлена поддержка TLS при работе сервера по протоколам HTTP и gRPC
- Добавлена возможность загрузки статистики по общему количеству предупреждений и по количеству размеченных предупреждений для проектов и веток через REST API
- Добавлена вкладка выбора проектов в расширении VSCode
- Убрана возможность использовать всплывающее окно в VScode для добавления/редактирования/удаления комментариев, установки ревью-статусов, локов и т.д.
Release 6-0-3
25.01.2023
- RPM-пакет теперь при сборке упаковывается в gzip вместо zstd для обратной совместимости со старыми дистрибутивами
- Если short url некорректен, то Svacer теперь будет возвращать корректный http error NotFound
- Если путь к лог файлу явно не указан, то svacer.log будет создаваться во временной директории. Это решает проблемы при запуске Svacer из директорий с запретом на запись. Путь к лог файлу будет печататься в stdout
- Лог файлы не будут создаваться, когда используется опция --help
- Исправлены проблемы при миграции схемы данных, когда в PostgreSQL используется SSL подключение
- Добавлены описания детекторов из последнего релиза Svace, которые были пропущены в релизе 6-0-2
- Исправлена работа Svacer за proxy-сервером, где выставляется Header "X-Content-Type-Options nosniff"
- Добавлены кнопки для скачивания системного лога и журнала из web-интерфейса
- Поправлен ряд ошибок валидации схемы при экспорте в SARIF
- Исправлено поведение при наличии нескольких хуков в конфигурационном файле
- В информацию о маркере для хуков добавлены checker severity и reliability
- Исправлен случайный порядок URL для маркеров при использовании public API для получения URL-ов
- На главную страницу добавлена кнопка "Помощь", которая открывает документацию
- При использовании команд навигации в режиме "Browse code" текущий файл теперь корректно подсвечивается в дереве файлов
- В диалоге групповой разметки убран индикатор изменений в виде кружочка, наличие изменений можно определить по активности кнопок "Apply" и "Reset"
- Кнопка обновления в верхнем меню теперь корректно обновляет информацию на странице Settings/Project
- Различные небольшие исправления в пользовательском интерфейсе
Release 6-0-2
16.12.2022
- Исправлена проблема в UI с сохраненными пользовательскими фильтрами
Release 6-0-1
13.12.2022
- Добавлено описание ряда детекторов, которые есть в последнем релизе Svace 3.3.2 но были пропущены в Svacer
- Исправлено вылетание в Login Screen при удалении нотификации из панели нотификаций
- Исправлено появление белого экрана при клике на детектор, информация о котором отсутствует
- Ряд различных небольших исправлений в UI
- Промежуточное хранилище будет очищаться по умолчанию при использовании команды import
Release 6-0-0
30.11.2022
- Добавлено копирование комментариев при копировании разметки
- Комментарии добавлены к отчету в формате csv
- Добавлена возможность вводить пароль с клавиатуры для консольных команд
- Добавлена возможность импортировать разметку из объекта сборки (из ранее загруженных данных)
- Добавлена возможность импортировать разметку сразу после загрузки на сервер (опция для команды svacer upload)
- Добавлена возможность загружать исходный код не из папки .svace-dir
- Добавлена возможность бэкапа и восстановление объектного хранилища в сервер PostgresSQL
- Добавлена возможность создания отчета по проекту в формате PDF через интерфейс командной строки и посредством REST API
- Добавлена возможность подавления предупреждений через inline комментарии в коде
- Добавлена возможность подавления предупреждений по идентификатору предупреждения через command line и REST API
- Добавлена возможность ассоциировать организацию с пользователем и реестр организаций
- Добавлена фильтрация списка комментариев по пользователю в правой панели веб-интерфейса
- Добавлен поиск пользователей по его атрибутам в панели управления пользователями
- Добавлена возможность заполнения данных профиля LDAP пользователя данными, полученными от LDAP сервера
- Добавлена возможность прикреплять файлы к снимкам при импорте результатов (данные файлы составляют часть экспортируемых данных при экспорте снимков)
- Добавлена возможность ассоциировать пользовательские атрибуты типа "строка" или массив строк со снимком при импорте данных (данные атрибуты составляют часть экспортируемых данных при экспорте снимков)
- Добавлены command line операции по получению прикрепленных файлов и пользовательских атрибутов со снимков
- Добавлена возможность группового добавления комментариев
- Добавлена возможность указания сетевого интерфейса для работы WEB и GRPC серверов
- Добавлен вывод краткой статистики по загруженному снимку при команде upload. Поддерживается текстовой и JSON форматы вывода
- Существенно расширены возможности по интеграции Visual Studio Code с сервером Svacer
- Добавлен флаг --git в команду import. При наличии такого флага, ищется ближайший git репозиторий содержащий .svace-dir и при наличии такого - используется путь к гит репозиторию для замены путей на префикс .build.
- Portable PostgreSQL больше не входит в поставку. Вместо него поставляется docker-compose.yml файл для запуска PostgreSQL в докер-контейнере
- Добавлено больше данных и информации об ошибках в вывод команды svacer import
- Изменение Public API: добавлена точка входа /api/public/login
- Операции по импорту и экспорту снимков доступны теперь обычным пользователям (не администраторам) при использовании command line интерфейса
- Операция по экспорту снимков доступна обычному пользователю из веб-интерфейса (импорт все еще требует роль администратора для веб-интерфейса)
- Операции по экспорту снимков переведены на асинхронный режим. Нотификация о готовности будет показана пользователю и доступна в панели нотификаций
- Обновлено описание детекторов в соответствии с релизом Svace 3.3.2
- Исправлена ошибка обработки корневых сертификатов при подключении к LDAP серверу по протоколу ldaps
- Исправлено ошибочное создание дубликатов локальных учетных записей LDAP пользователей (case sensitive login)
- Различные исправления в пользовательском интерфейсе с целью оптимизации производительности
- Добавлены пропущенные проверки ролей при работе с веб-интерфейсом
- Svacer больше не создает временные файлы в директории с исполняемым файлом
- Устаранены задержки при удалении веток и проектов