Сонар. Несколько вопросов по навигации в веб-морде

То ли лыжи не едут, то ли я одаренный.

  1. Как в сонаре в веб-морде найти быстро и удобно замечания по одному модулю?
  2. Как в сонаре в веб-морде быстро и удобно перемещаться между участками дублированного кода в модуле?

Фильтр - отбор по модулю. Если коротко.

Если длинно

Фактически - назначь 2 фильтра на закладке замечания, по правилу дубля, по модулю (каталогу)

http://opensonar.silverbulleters.org/project/issues?directories=epf%2FbddRunner%2FbddRunner%2FForms%2FВыборИзвестногоШага%2FExt%2FForm&fileUuids=AWTPS9rP_THS_icg0OLw&id=add&moduleUuids=AWTPOsgkXmBrL_4iG9dM&resolved=false&rules=common-bsl%3ADuplicatedBlocks

Только надо помнить о том, что список каталогов увы не весь в морде отображается, а топ 15

Работает поле поиска - если знать имя модуля: можно просто ввести 3-4 буквы

видать в какой-то другой версии

image

Про поиск файла:
Ни фильтр по файлу, ни фильтр по каталогу на закладке Замечания не имеет отдельного поля поиска, а отображает только список ТОП-n элементов.
На закладке Код есть поиск по имени файла, но там учитывается только имя файла без пути, что в случае 1С, когда внезапно почти все модули у тебя Module.bsl, оказывается крайне полезным от слова никак.
Про дубликаты:
замечание по дубликату/дубликатам в веб-морде относится ко всему файлу и отображается перед первой строкой, а не по месту дублирования. Вопрос в том, как переходить к конкретным участкам. Ну т.е. выводится мне, что у тебя 5 дублирующихся блоков, а чтобы понять где они, надо листать модуль и палить полоски в интерфейсе? Вот точно нет другого способа, а то этот, мягко говоря, нерациональный?

2 Симпатий

По дубликатам - можно использовать отдельный раздел http://opensonar.silverbulleters.org/component_measures?id=add&metric=duplicated_lines_density&selected=add%3Alib%2FCF%2F83xdd%2FDataProcessors%2FБазовыеУтверждения%2FExt%2FObjectModule.bsl&view=tree

Если нужно погружаться в контекст определнного модуля в целом - то есть закладка код

http://opensonar.silverbulleters.org/code?id=add&selected=add%3Adoc%2FPluginsTemplates%2FШаблонГенератораОтчета%2FШаблонГенератораОтчета%2FExt

Вообще существует возможность отобразить дашборд по контректному объекту

http://opensonar.silverbulleters.org/project/issues?id=add%3Adoc%2FPluginsTemplates%2FШаблонГенератораОтчета%2FШаблонГенератораОтчета%2FExt&resolved=false

По дубликатам - можно использовать отдельный раздел

как этот раздел помогает перемещаться между дублирующимися участками в отдельном модуле?

Если нужно погружаться в контекст определнного модуля в целом - то есть закладка код
Вообще существует возможность отобразить дашборд по контректному объекту

Чтобы погрузиться в контекст модуля или отобразить дашборд по объекту, надо сперва этот модуль/объект среди тысяч найти. Вопрос в том, как это быстро сделать в веб-интерфейсе.

Перестаю понимать что же ты все таки хочешь от Веб-интерфейса.

Ты почему-то хочешь найти некий модуль среди тысячи - у тебя есть закладка код http://opensonar.silverbulleters.org/code?id=add - скролишь и ищещь

Дальше ты хочешь работать только с этим модулем - нажимаешь “скрепку” напротив найденного модуля. Теперь замечания, дубли и все остальное у тебя отображается только для конкретного модуля

Примерно так - http://opensonar.silverbulleters.org/dashboard?id=add%3Afeatures%2FCore%2FExpectedSomething%2Fstep_definitions%2FExpectedForms%2FExpectedForms%2FForms%2FФорма%2FExt%2FForm

Дальше у тебя замечения только для этого модуля - здесь отбираешь по правилу дубликатов: есть конкретных список срабатывания на дубли (уже в контексте модуля) - открываешь их через скрепку в отдельных окнах. Также через скрепку напротив замечания.

Ключевое посыл - если тебе надо работать с отдельным модулей: проваливайся в него через закладку код и нажатию “скрепка”.

Фактически дашборд в таком случае отображется по отношению к

Directory key (ключ директории)

add:features/Core/ExpectedSomething/
step_definitions/ExpectedForms/ExpectedForms/Forms/Форма/Ext/Form

Вот такого онанизма как раз и хочется избежать. Список файлов отображается по 100 позиций, при количестве файлов в репе в несколько тысяч - это прям сверхэффективный способ найти нужный. У меня просто надежда на то, что я что-то упустил в интерфейсе и есть адекватный способ.

Про дубликаты можно мне пример с картинками как для детей-дебилов. Что и где нажать, чтобы перейти к, например, первому участку дублирования в модуле? Ну т.е. вот чтоб был, например, на экране модуль и курсор находился на первой строке дублирующегося участка.

2 Симпатий

Как-то так
https://jira.sonarsource.com/browse/MMF-1250
https://jira.sonarsource.com/browse/SONAR-9369

1 Симпатия

Ну ты дал, что то я как-то уже и подзабыл что можно писать им напрямую. Заковырялся.

Good news, everyone©
https://jira.sonarsource.com/browse/SONAR-9369 запилили в 7.4
https://jira.sonarsource.com/jira/secure/ReleaseNote.jspa?projectId=10930&version=14549

1 Симпатия

@a.nenashev Отличная новость.
Давно не хватало.

Правда, не совсем понятно, как мы будем искать модули, они же все одинаковые - Module.bsl :slight_smile:

По имени метаданного и далее Module ?

Интересно, есть ли там нечеткий/неполный поиск - по части слов, разделенных пробелами?

Сегодня, сегодня - погодите :wink:

https://opensonar.silverbulleters.org/about

Переведен на последнюю версию 7.4 и последнюю версию плагина - в целях пилотирования будущего релиза.

Для каталогов есть. Уже отлично, этого вполне хватит.

Нет, для каталогов нет, я проверил :frowning:

ищу “xdd Упр” (без кавычек) - не находит

стоит после xdd набрать пробел, уже ничего нет :frowning:

Вот не пользуются они своим же инструментов!

хм. странно. у себя еще не обновились, а по ссылке выше в открытом SB сонаре потыкался - работал поиск по части имени каталога. если что я про поиск в фильтрах на закладке Замечания, а не про поиск на закладке Код