bsl-language-server icon indicating copy to clipboard operation
bsl-language-server copied to clipboard

[FP] Проверка на область "ПрограммныйИнтерфейс" в расширяемом модуле.

Open agibalovsa opened this issue 2 years ago • 7 comments

Диагностика

Общий модуль должен иметь хотя бы один экспортный метод, а также область "ПрограммныйИнтерфейс" или "СлужебныйПрограммныйИнтерфейс".

Версия

sonar-communitybsl-plugin-nightly-20220520

Описание ложного срабатывания диагностики

Был расширен общий модуль. Расширяемые процедуры были помещены в соответствующие области. В результате чего в возникло сообщение Общий модуль должен иметь хотя бы один экспортный метод, а также область "ПрограммныйИнтерфейс" или "СлужебныйПрограммныйИнтерфейс".

Пример кода

...

Скриншоты

image

image

image

Дополнительная информация

Мне кажется, что в случае расширенных модулей, наличие областей "ПрограммныйИнтерфейс" или "СлужебныйПрограммныйИнтерфейс" нужно проверять и в основном модуле и в расширенном. Или не выполнять данную проверку для расширенных модулей совсем, т.к. по идее она должна была успешноп пройти для основного модуля.

agibalovsa avatar May 23 '22 15:05 agibalovsa

https://github.com/1c-syntax/bsl-language-server/issues/1339

asosnoviy avatar May 24 '22 12:05 asosnoviy

Вроде как мы уже понимаем, что модуль заимствованный и можем игнорить какие то диагностики. Надо апнуть тему со скоупом.

asosnoviy avatar May 24 '22 12:05 asosnoviy

@zeegin есть какие-то рекомендации по использованию или неиспользованию ключевого слова Экспорт в переопределяемых в расширении экспортных процедурах?

Я все ещё склоняюсь к необходимости написания, но не могу найти подтверждения.

nixel2007 avatar May 25 '22 05:05 nixel2007

В данном случае ключевое слово "Экспорт" на ошибку не влияет. Проверке не нравится, что в расширенном модуле вообще нет области "ПргораммныйИнтерфейс". Дело в том, что мы расширяем в приведенном примере процедуру из службеных функций. Програмного интерфейса и не должно быть.

agibalovsa avatar May 25 '22 05:05 agibalovsa

Либо СПИ. А для них нужен хоть один экспортный метод. Так что диагностика орёт вполне обосновано

nixel2007 avatar May 25 '22 06:05 nixel2007

А, тут расширение не экспортной... Понял...

nixel2007 avatar May 25 '22 06:05 nixel2007

@zeegin есть какие-то рекомендации по использованию или неиспользованию ключевого слова Экспорт в переопределяемых в расширении экспортных процедурах?

Я все ещё склоняюсь к необходимости написания, но не могу найти подтверждения.

Я не помню чтоб такое было.

zeegin avatar May 26 '22 10:05 zeegin