Команда Пули выпустила новый релиз SonarQube 1C (BSL) Plugin для статического анализа кода 1С.
- Новое правило с ошибками обхода результатов запросов,
- по запросам наших клиентов улучшены существующие правила, например, добавлены параметры для управления поведением правила
- ускорение работы множества существующих правил
Подробнее:
### Правила для языка запросов
- Обращение к объектной модели при обходе выборки - возможные потери производительности
### Запросы от клиентов
- Устранены ложные срабатывания правила
- Магические даты
- Добавлен параметр для игнорирования пустых дат (в разных вариантах написания)
- Строковые литералы не должны дублироваться
- Добавлен параметр исключения для параметров используемых функций
- Добавлен параметр для управления списком пропускаемых функций.
- Добавлен параметр "Минимальное количество найденных строк, при котором выдается замечание"
- Не рекомендуется смешивать символы разных языков в одной строке
- Подозрительный цикл
- Функция всегда возвращает одно и то же константное значение
- Исправлена привнесенная ошибка в правиле "Магические числа" - не работали исключения "Цел, Дата" и прочие.
### Новые правила для кода 1С
- "Подозрительное продолжение цикла"
- "Подозрительное использование арифметических операций при конкатенацией со строкой"
- "Последней строкой в функции должен быть возврат"
- "Сложные условия"
- Дополнено правило "Пустой блок кода" - теперь ловятся пустые блоки кода, даже если внутри есть комментарии
- Добавлен параметр - Считать проблемным блок Исключение, в котором нет кода даже при наличии комментария. По умолчанию - Истина
- Добавлен параметр - Считать проблемным блок, в котором нет кода, но есть комментарий. По умолчанию - Истина
- В файлах OneScript процедура `ПриСозданииОбъекта` теперь не помечается как неиспользуемая процедура
### Доработки
- Ускорен анализ правил для языка запросов
- "Обращение к стандартному реквизиту регистра составного типа без использования конструкции Выразить или с неверным использованием Выразить"
- "Совместное использование "УПОРЯДОЧИТЬ ПО" с конструкцией "РАЗЛИЧНЫЕ" "
- "Запросы, выполняющие соединение с вложенными запросами или виртуальными таблицами"
- "Использование вложенных запросов в условии соединения"
- "Отсутствие проверки на NULL или приведения через ЕстьNULL при левых/правых соединениях"
- Ускорен анализ правил для кода 1С
-Ограничения на использование "Выполнить" и "Вычислить" на сервере
- "Слишком много возвратов внутри функции"
- "Количество необязательных параметров процедуры/функции более 3"
- "Неиспользуемый реквизит формы"
- Исправлены ложные срабатывания правила "Метод вызывается с одинаковыми параметрами" на `Дата(ХХХ, 1, 1)`
- Добавлены теги SonarQube к правилам, у которых теги не были указаны
### Документация
- добавлены описания новых правил в поставляемую документацию
Обсудим на нашем форуме
https://xdd.silverbulleters.org/t/novyj-reliz-1-24-sonarqube-1c-bsl-plugin/2889 ?