SonarQube 1C (BSL) - Выпуск релиза 1.4


#1

1.4.0

Изменены проверки:

  • Проверка “Имена процедур/функций должны быть написаны без опечаток”:
    • обновлен словарь
    • в пользовательский интерфейс добавлена настройка слов-исключений
    • проверка переведена в статус READY
  • Исправлено позиционирование проверки “Пустая процедура/функция”
  • Исправлено позиционирование первого срабатывания проверок “Когнитивная сложность методов не должна быть слишком высокой” и “Цикломатическая сложность методов не должна быть слишком высокой”

Добавлены проверки:

  • Неиспользуемая процедура/функция
  • Запросы, выполняющие соединение с вложенными запросами или виртуальными таблицами

Изменения правил грамматики:

  • В грамматику запросов добавлены:
    • обработка ключевых слов периодов (ДЕНЬ, МЕСЯЦ и прочее)
    • обработка конструкций (Поле1, Поле2) В (ВЫБРАТЬ Поле1, Поле2 ИЗ ...)
    • расширены правила секции ИТОГИ, добавлена секция ПЕРИОДАМИ
  • В грамматику встроенного языка 1С добавлены конструкции:
    • ДобавитьОбработчик
    • УдалитьОбработчик

Прочее:

  • В интерфейс настроек вынесена настройка File suffixes для указания расширений файлов, анализируемых плагином
  • В ядре плагина и проверках исправлены места, которые могли привести к ошибкам NullPointerException и остановке процесса анализа
  • Выключенные проверки языка запросов больше не приводят к остановке процесса анализа

#2

@nixel2007 а где-то можно смотреть изменения в разрезе задач, например, зарегистрированных ошибок, правил, вопросов заказчиками плагина, чтобы эффективно определять что вошло или что войдет по планам. Нужно для работы с архитекторами проектов для ответов на запрашиваемый функционал и исправления ошибок. Например, как обычно сейчас делают - в системах типа жира - релиз и какие задачи в него включены, будущий релиз и какие задачи планируется в них решить. https://jira.sonarsource.com/browse/SONAR/?selectedTab=com.atlassian.jira.jira-projects-plugin:versions-panel


#3

Что-то не работает поиск неиспользуемых(


#4

Проверку-то в профиле включили? :slight_smile:


#5

Список задач сейчас ведется на закрытом репозитории в гитлабе. Открывать его “совсем” в публичку пока не планировали. По поводу открытия трекера для купивших плагин клиентов - подумаем, в целом идея хорошая.

Опубликованный чейнджлог - довольно полный.
Из конкретики - большинство проблем с грамматикой запросов, которые рапортовал @theshadowco должны быть исправлены. Если обнаружится что-то новое - возьмем в планы на следующий релиз.
Ошибка позиционирования сообщения в запросе при наличии в нем комментариев пока не исправлена :frowning:


#6

Мы ж на вебе. Думал автоматом включится… Сейчас буду искать


#7

На вебе должно быть включено. У данной проверки есть ограничение - на данный момент она работает только в общих модулях :frowning:


#8

Понятно. Тогда печально. У нас то обработки


#9

Поддержку в формах и модулях объектов/менеджеров тоже планируем. Решили идти итеративно.
Основная проблема там - обработчики событий формы. Они все такие неэкспортные и из кода нигде не вызываются, но в метаданных прошиты. :slight_smile:


#10

Это было первое о чем подумал "Как обошли события формы"
В АПК вроде есть такая проверка. Только работает как-то криво


#11

Кэш метаданных скоро доберется и до форм :wink:


#12

интерфейс)


#13

Что-то изменили? Теперь обработки событий формы стали появляться как неиспользуемые


#14

Оу, у вас же обработки…

Правило срабатывает, если выполняются любое из следующих условий:

  • если это файл os
  • если не найден файл Configuration.xml
  • если найден файл Configuration.xml И текущий файл - общий модуль

В вашем случае можно попробовать положить пустой файл Configuration.xml в репозиторий.
Если анализ все же рухнет, тогда я могу настроить Вам отдельный Профиль качества, где эта проверка выключена.

Если глобально - ждем разработки кэша форм и ее обработчиков :slight_smile:


#15

Ладно. Пока оставим. Вдруг что-то полезное найдется