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

Ложно срабатывание "Обращение к отсутствующему методу общего модуля" (MissingCommonModuleMethod) в расширении [BUG]

Open agibalovsa opened this issue 1 year ago • 2 comments

Диагностика

Обращение к отсутствующему методу общего модуля (MissingCommonModuleMethod)

Версия

1.13.0

Описание ошибки диагностики

Ошибка срабатывает в модулях расширений, как будто ищет модули методов не в основной конфигурации, а в том же расширении.

Пример кода

Если Не ПроведениеДокументов.РассчитыватьИзменения(ДополнительныеСвойства) Тогда
    Возврат;
КонецЕсли;

Скриншоты

image

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

  1. Мы еще используем очень часто библиотечные расширения, т.е. модули из них используются в других расширениях, скорее всего эта проверка и на такие случаи будет ругаться.
  2. Проверяет ли эта проверка модули полученные методом БСП ОбщегоНазначения.ОбщийМодуль, ОбщегоНазначенияКлиент.ОбщийМодуль?

agibalovsa avatar Aug 01 '23 10:08 agibalovsa

@agibalovsa Диагностика на текущий момент на самом деле ищет "в расширении", пока нет мержа конфигурации и расширения.

По доп пунктам

  • да, методы в расширениях поверх расширений будут фонить. Кроме того, пока нет четкого понимания, как в будущем такие расширения мержить между собой, т.к. связи между ними нет
  • нет, диагностика не анализирует БСП. Но, думаю, сделать это можно, оформите отдельной таской

theshadowco avatar Jan 24 '24 04:01 theshadowco

Добрый день, Валерий @theshadowco А планируется расширять возможности соединения конфигураций и расширений в одно целое пространство? Я бы даже предложил соединять в одно целое пространство еще и конфигурацию и доработанные по ней куски. Например:

  1. у нас есть конфигурация поставщика выгруженная в xml
  2. у нас есть только доработанные файлы из конфигурации поставщика
  3. у нас есть скрипт, который одно накладывает на другое и мы получаем конечную конфигурацию Такой подход был бы удобен в организации хранения конфигураций:
  • Конфигурации поставщика в одном тяжелом репозитории, каждый коммит = официальному релизу.
  • Доработки конфигураций поставщика в другом гораздо более легком репозитории, а конфигурация поставщика там подсоединена как подмодуль (git submodule add)

agibalovsa avatar Jan 24 '24 08:01 agibalovsa