bsl-language-server
bsl-language-server copied to clipboard
Ложно срабатывание "Обращение к отсутствующему методу общего модуля" (MissingCommonModuleMethod) в расширении [BUG]
Диагностика
Обращение к отсутствующему методу общего модуля (MissingCommonModuleMethod)
Версия
1.13.0
Описание ошибки диагностики
Ошибка срабатывает в модулях расширений, как будто ищет модули методов не в основной конфигурации, а в том же расширении.
Пример кода
Если Не ПроведениеДокументов.РассчитыватьИзменения(ДополнительныеСвойства) Тогда
Возврат;
КонецЕсли;
Скриншоты
Дополнительная информация
- Мы еще используем очень часто библиотечные расширения, т.е. модули из них используются в других расширениях, скорее всего эта проверка и на такие случаи будет ругаться.
- Проверяет ли эта проверка модули полученные методом БСП ОбщегоНазначения.ОбщийМодуль, ОбщегоНазначенияКлиент.ОбщийМодуль?
@agibalovsa Диагностика на текущий момент на самом деле ищет "в расширении", пока нет мержа конфигурации и расширения.
По доп пунктам
- да, методы в расширениях поверх расширений будут фонить. Кроме того, пока нет четкого понимания, как в будущем такие расширения мержить между собой, т.к. связи между ними нет
- нет, диагностика не анализирует БСП. Но, думаю, сделать это можно, оформите отдельной таской
Добрый день, Валерий @theshadowco А планируется расширять возможности соединения конфигураций и расширений в одно целое пространство? Я бы даже предложил соединять в одно целое пространство еще и конфигурацию и доработанные по ней куски. Например:
- у нас есть конфигурация поставщика выгруженная в xml
- у нас есть только доработанные файлы из конфигурации поставщика
- у нас есть скрипт, который одно накладывает на другое и мы получаем конечную конфигурацию Такой подход был бы удобен в организации хранения конфигураций:
- Конфигурации поставщика в одном тяжелом репозитории, каждый коммит = официальному релизу.
- Доработки конфигураций поставщика в другом гораздо более легком репозитории, а конфигурация поставщика там подсоединена как подмодуль (git submodule add)