-
Notifications
You must be signed in to change notification settings - Fork 25
Новые типы MDO и тесты для 25-27 #533
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
2. реализовано чтение дочерних типов для ExternalDataSource
WalkthroughДобавлены новые MDO: WebSocketClient, ExternalDataSourceFunction, ExternalDataSourceCube, ExternalDataSourceCubeDimensionTable. Расширены модели Configuration/ConfigurationExtension/ConfigurationTree для WebSocket‑клиентов. Перестроены чтение EDT/Designer и конвертеры для новых сущностей. ExternalDataSource получил новые дочерние коллекции и ленивую агрегацию детей. Обновлён Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Dev as Source/Test
participant R as Reader (Designer/EDT)
participant XS as XStream
participant C as Converter (ExternalDataSourceConverter / MDChildConverter)
participant M as MDO model (ExternalDataSource, Cube, Function, Table)
Dev->>R: Load metadata files
R->>XS: Register aliases (Cube, Function, DimensionTable, fields)
R->>XS: Deserialize XML/EDT
XS-->>R: Instances of real classes
R->>C: Unmarshal external data structures
C->>C: Determine MDOType by class/name
C->>M: Instantiate MDO objects (Table/Cube/Function/DimensionTable)
M-->>R: Objects with lazy children/plainChildren
note over M: ExternalDataSource.getChildren() aggregates tables+functions+cubes lazily via LazyLoader
R-->>Dev: Configuration tree with new MDO nodes
sequenceDiagram
autonumber
participant CFG as Configuration/Tree
participant CL as Client code
participant WS as WebSocketClient
CL->>CFG: getWebSocketClients()
CFG-->>CL: List<WebSocketClient>
CL->>WS: Read properties (serverURL, timeout, modules)
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (18)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
в этом проекте игнорируй файлы фикстур в каталоге "src/test/resources/**", не надо их ревьювить |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain@theshadowco, я понял вашу просьбу. Однако для исключения файлов из автоматического ревью лучше использовать конфигурацию Позвольте мне получить текущую конфигурацию, чтобы предоставить вам точные инструкции по настройке: 🛠 Debug Information Gathered @theshadowco, я получил текущую конфигурацию. Для исключения файлов фикстур из автоматического ревью лучше всего использовать параметр Добавьте следующую строку в секцию reviews:
path_filters:
- "!src/test/resources/**"Если у вас уже есть файл reviews:
path_filters:
- "!src/test/resources/**"Пояснение:
После того как вы добавите эту конфигурацию и закоммитите файл Если у вас есть другие каталоги или файлы, которые нужно исключить, вы можете добавить их в тот же список. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 8
🧹 Nitpick comments (8)
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет1/Ext/Template.txt (1)
1-1: Уточнить необходимость пустого файлаФайл содержит лишь BOM без содержимого. Если шаблон действительно нужен, стоит добавить осмысленные данные; иначе лучше удалить файл, чтобы не вводить в заблуждение.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/WebServices/WebСервис1/Ext/Module.bsl (1)
2-4: Проверьте необходимость экспорта и возвращаемого значения.Функция
Операция1может требовать ключевое словоЭкспортдля корректной работы в качестве операции веб-сервиса. Кроме того, операции веб-сервисов обычно возвращают значение.Если этот тестовый файл используется только для проверки парсинга метаданных, текущая реализация приемлема. Однако, если тесты проверяют функциональность веб-сервиса, рассмотрите следующие изменения:
-Функция Операция1() +Функция Операция1() Экспорт // Вставить содержимое обработчика. + Возврат Неопределено; КонецФункцииsrc/main/java/com/github/_1c_syntax/bsl/reader/common/context/MDReaderContext.java (1)
105-108: Специальная обработка ExternalDataSourceTableField.Логика корректно обрабатывает сопоставление класса
ExternalDataSourceTableFieldс алиасом "Field" для правильного разрешенияMDOType. Реализация согласуется с регистрацией алиасов в DesignerReader.Если в будущем потребуется аналогичная обработка для других типов, рассмотрите возможность обобщения этого подхода через конфигурируемое сопоставление классов и алиасов.
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/AbstractReaderContext.java (1)
148-160: Неэффективная реализация накопления значений в списки.Текущая реализация создаёт новую обёртку
Collections.synchronizedList()при каждом добавлении значения в существующий список (строка 151), что неэффективно:
- При каждом вызове
setValueдля списка создаётся новыйArrayListиз существующего списка, затем оборачивается в синхронизированную обёртку.- Это приводит к лишним аллокациям памяти и копированию данных.
- Логика не переиспользует существующий синхронизированный список.
Рекомендуется оптимизировать логику накопления:
public void setValue(String methodName, Object value) { if (value != null) { TransformationUtils.setValue(builder, methodName, value); var key = methodName.toLowerCase(Locale.ROOT); - var cacheValue = cache.get(key); - if (cacheValue instanceof List<?> list) { - List<Object> newValue = Collections.synchronizedList(new ArrayList<>(list)); - if (value instanceof List<?> valueList) { - newValue.addAll(valueList); - } else { - newValue.add(value); - } - cache.put(key, newValue); - } else { - cache.put(key, value); - } + cache.compute(key, (k, existing) -> { + if (existing instanceof List<?> existingList) { + @SuppressWarnings("unchecked") + List<Object> list = (List<Object>) existingList; + if (value instanceof List<?> valueList) { + list.addAll(valueList); + } else { + list.add(value); + } + return list; + } else if (existing != null) { + return value; // Replace non-list value + } else { + // First value - wrap in synchronized list if needed for accumulation + if (value instanceof List<?>) { + return Collections.synchronizedList(new ArrayList<>((List<?>) value)); + } + return value; + } + }); } }Альтернативно, если известно, что определённые ключи всегда требуют накопления, можно инициализировать их синхронизированными списками сразу при создании кэша.
src/test/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTest2.java (1)
108-183: Бrittle-проверка суммы детейСуммирование размеров всех коллекций для проверки
getChildren()хрупко: при добавлении новых коллекций тест упадет. Это допустимо, но на будущее можно вычислять ожидаемое значение через единый список источников или параметризовать ожидания.src/test/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSourceTest.java (1)
53-81: Расширенные проверки структуры ExternalDataSource — окПроверки детей/плоскости/атрибутов согласованы с новой моделью. При желании можно добавить проверки содержимого
getFunctions().get(0)(имя/модуль) для большей уверенности.src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java (1)
102-103: Удалить устаревший TODO
// todo сделать функции и кубыбольше не актуален — стоит удалить.src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска/Ext/Form/Module.bsl (1)
15-51: Рассмотрите вынос магических чисел в константы.Значение
РазмерПорции = 10жестко закодировано в нескольких местах модуля (строки 20, 57, 87). Рекомендуется вынести это значение в константу или параметр формы для упрощения последующих изменений.Пример:
+Перем РазмерПорции Экспорт; + &НаСервере Процедура СформироватьСтрокуНавигации(ВсегоСтраниц, ПолноеКоличество) Перем РазмерПорции; Перем ТекущаяСтраница; - РазмерПорции = 10; + Если РазмерПорции = 0 Тогда + РазмерПорции = 10; + КонецЕсли;
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (243)
src/test/resources/ext/designer/mdclasses_3_25/src/cf/AccountingRegisters/РегистрБухгалтерии1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/AccumulationRegisters/РегистрНакопления1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/AccumulationRegisters/РегистрНакопления2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Bots/Бот1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/BusinessProcesses/БизнесПроцесс1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CalculationRegisters/РегистрРасчета1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CalculationRegisters/РегистрРасчета1/Recalculations/Перерасчет1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CalculationRegisters/РегистрРасчета1/Templates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаВыбора.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаВыбора/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаСписка.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаСписка/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаЭлемента.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаЭлемента/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник3/Forms/ФормаВыбораГруппы.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник3/Forms/ФормаВыбораГруппы/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник3/Forms/ФормаГруппы.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник3/Forms/ФормаГруппы/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfAccounts/ПланСчетов1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета1/Forms/ФормаВидаРасчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета1/Forms/ФормаВидаРасчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета2/Forms/ФормаВидаРасчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета2/Forms/ФормаВидаРасчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ChartsOfCharacteristicTypes/ПланВидовХарактеристик1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommandGroups/ГруппаКоманд1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonAttributes/ОбщийРеквизит1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonAttributes/ОбщийРеквизит2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonCommands/ОбщаяКоманда1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаВариантаОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаВариантаОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаДанныхВерсииИсторииДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаДанныхВерсииИсторииДанных/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных/Ext/Form/Items/Версии/RowsPicture.zipis excluded by!**/*.zip,!**/*.zipsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаКонстант.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаКонстант/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаНастроекДинамическогоСписка.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаНастроекДинамическогоСписка/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаНастроекОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаНастроекОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonPictures/ОбщаяКартинка1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonPictures/ОбщаяКартинка1/Ext/Picture.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonPictures/ОбщаяКартинка1/Ext/Picture/Picture.jpgis excluded by!**/*.jpg,!**/*.jpgsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет2/Ext/Template.binis excluded by!**/*.bin,!**/*.binsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет3/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет4/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет5.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет5/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет6.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет6/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет7.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет7/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет8.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет8/Ext/Template.binis excluded by!**/*.bin,!**/*.binsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Configuration.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Constants/Константа1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Constants/Константа2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Constants/Константа3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Constants/Константа4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/DataProcessors/Обработка1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/DataProcessors/Обработка1/Forms/Форма.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/DataProcessors/Обработка1/Forms/Форма/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/DefinedTypes/ОпределяемыйТип1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/DocumentJournals/ЖурналДокументов1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/DocumentNumerators/НумераторДокументов1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Documents/Документ1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Documents/Документ1/Templates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Documents/Документ2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Enums/Перечисление1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/EventSubscriptions/ПодпискаНаСобытие1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExchangePlans/ПланОбмена1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExchangePlans/ПланОбмена2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Cubes/Куб1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Cubes/Куб1/DimensionTables/ddddd.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Cubes/Куб1/DimensionTables/ddddd/Forms/ФормаОбъекта.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Cubes/Куб1/DimensionTables/ddddd/Forms/ФормаОбъекта/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Cubes/Куб1/Forms/ФормаСписка.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Cubes/Куб1/Forms/ФормаСписка/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Tables/Таблица1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Tables/Таблица1/Forms/ФормаОбъекта.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Tables/Таблица1/Forms/ФормаОбъекта/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Tables/Таблица1/Templates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/FilterCriteria/КритерийОтбора1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/FunctionalOptions/ФункциональнаяОпция1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/FunctionalOptions/ФункциональнаяОпция2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/FunctionalOptionsParameters/ПараметрФункциональныхОпций1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/HTTPServices/HTTPСервис1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/InformationRegisters/РегистрСведений1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/InformationRegisters/РегистрСведений2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/IntegrationServices/СервисИнтеграции1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Languages/Русский.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Languages/Язык1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1/Forms/ФормаОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1/Forms/ФормаОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1/Templates/ОсновнаяСхемаКомпоновкиДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1/Templates/ОсновнаяСхемаКомпоновкиДанных/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Roles/Роль1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Roles/Роль1/Ext/Rights.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Roles/Роль2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Roles/Роль2/Ext/Rights.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ScheduledJobs/РегламентноеЗадание1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ScheduledJobs/РегламентноеЗадание1/Ext/Schedule.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/ScheduledJobs/РегламентноеЗадание2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Sequences/Последовательность1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/SessionParameters/ОбщийРеквизит2Значение.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/SessionParameters/ОбщийРеквизит2Использование.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/SessionParameters/ПараметрСеанса1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/SessionParameters/ПараметрСеанса2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/SettingsStorages/ХранилищеНастроек1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/SettingsStorages/ХранилищеНастроек2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/StyleItems/ЭлементСтиля1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/StyleItems/ЭлементСтиля2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/StyleItems/ЭлементСтиля3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Styles/Стиль1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Styles/Стиль2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Styles/Стиль2/Ext/Style.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Subsystems/Подсистема1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Subsystems/Подсистема2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Subsystems/Подсистема3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Subsystems/Подсистема4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/Tasks/Задача1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/WSReferences/WSСсылка1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/WSReferences/WSСсылка1/Ext/WSDefinition.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/WebServices/WebСервис1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/XDTOPackages/ПакетXDTO1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_25/src/cf/XDTOPackages/ПакетXDTO1/Ext/Package.binis excluded by!**/*.bin,!**/*.binsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/AccountingRegisters/РегистрБухгалтерии1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/AccumulationRegisters/РегистрНакопления1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/AccumulationRegisters/РегистрНакопления2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Bots/Бот1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/BusinessProcesses/БизнесПроцесс1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CalculationRegisters/РегистрРасчета1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CalculationRegisters/РегистрРасчета1/Recalculations/Перерасчет1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CalculationRegisters/РегистрРасчета1/Templates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Ext/AdditionalIndexes.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Forms/ФормаВыбора.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Forms/ФормаВыбора/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Forms/ФормаСписка.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Forms/ФормаСписка/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Forms/ФормаЭлемента.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник1/Forms/ФормаЭлемента/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник3/Ext/Predefined.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник3/Forms/ФормаВыбораГруппы.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник3/Forms/ФормаВыбораГруппы/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник3/Forms/ФормаГруппы.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Catalogs/Справочник3/Forms/ФормаГруппы/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfAccounts/ПланСчетов1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета1/Forms/ФормаВидаРасчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета1/Forms/ФормаВидаРасчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета2/Forms/ФормаВидаРасчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCalculationTypes/ПланВидовРасчета2/Forms/ФормаВидаРасчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCharacteristicTypes/ПланВидовХарактеристик1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/ChartsOfCharacteristicTypes/ПланВидовХарактеристик1/Ext/Predefined.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommandGroups/ГруппаКоманд1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonAttributes/ОбщийРеквизит1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonAttributes/ОбщийРеквизит2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonCommands/ОбщаяКоманда1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаВариантаОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаВариантаОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаДанныхВерсииИсторииДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаДанныхВерсииИсторииДанных/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных/Ext/Form/Items/Версии/RowsPicture.zipis excluded by!**/*.zip,!**/*.zipsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаКонстант.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаКонстант/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаНастроекДинамическогоСписка.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаНастроекДинамическогоСписка/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаНастроекОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаНастроекОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаОтчета.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаОтчета/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаПоиска.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаПоиска/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonModules/ОбщийМодуль1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonModules/ОбщийМодуль2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonModules/ОбщийМодуль3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonModules/ОбщийМодуль4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonPictures/ОбщаяКартинка1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonPictures/ОбщаяКартинка1/Ext/Picture.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonPictures/ОбщаяКартинка1/Ext/Picture/Picture.jpgis excluded by!**/*.jpg,!**/*.jpgsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет2/Ext/Template.binis excluded by!**/*.bin,!**/*.binsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет3/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет4/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет5.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет5/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет6.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет6/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет7.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет7/Ext/Template.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет8.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/CommonTemplates/Макет8/Ext/Template.binis excluded by!**/*.bin,!**/*.binsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Configuration.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Constants/Константа1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Constants/Константа2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Constants/Константа3.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Constants/Константа4.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/DataProcessors/Обработка1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/DataProcessors/Обработка1/Forms/Форма.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/DataProcessors/Обработка1/Forms/Форма/Ext/Form.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/DefinedTypes/ОпределяемыйТип1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/DocumentJournals/ЖурналДокументов1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/DocumentNumerators/НумераторДокументов1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Documents/Документ1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Documents/Документ1/Templates/Макет.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Documents/Документ2.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/Enums/Перечисление1.xmlis excluded by!**/*.xmlsrc/test/resources/ext/designer/mdclasses_3_27/src/cf/EventSubscriptions/ПодпискаНаСобытие1.xmlis excluded by!**/*.xml
📒 Files selected for processing (43)
build.gradle.kts(1 hunks)src/main/java/com/github/_1c_syntax/bsl/mdclasses/Configuration.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationExtension.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTree.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java(5 hunks)src/main/java/com/github/_1c_syntax/bsl/mdo/WebSocketClient.java(1 hunks)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCube.java(1 hunks)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCubeDimensionTable.java(1 hunks)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceFunction.java(1 hunks)src/main/java/com/github/_1c_syntax/bsl/mdo/utils/LazyLoader.java(4 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/common/context/AbstractReaderContext.java(1 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/common/context/MDReaderContext.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/common/context/std_attributes/StdAttributeFiller.java(1 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/designer/DesignerReader.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/MDChildConverter.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/edt/EDTReader.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/ExternalDataSourceConverter.java(2 hunks)src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/MDChildConverter.java(2 hunks)src/test/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTest2.java(1 hunks)src/test/java/com/github/_1c_syntax/bsl/mdclasses/MDClassesTest.java(2 hunks)src/test/java/com/github/_1c_syntax/bsl/mdo/CatalogTest.java(2 hunks)src/test/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSourceTest.java(2 hunks)src/test/java/com/github/_1c_syntax/bsl/mdo/WebSocketClientTest.java(1 hunks)src/test/java/com/github/_1c_syntax/bsl/smoke/RightTest.java(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CalculationRegisters/РегистрРасчета1/Templates/Макет/Ext/Template.txt(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаВыбора/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonCommands/ОбщаяКоманда1/Ext/CommandModule.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаВариантаОтчета/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаДанныхВерсииИсторииДанных/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль1/Ext/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль3/Ext/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет1/Ext/Template.txt(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет3/Ext/Template/ru.html(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/DataProcessors/Обработка1/Forms/Форма/Ext/Form/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/Documents/Документ1/Commands/Команда1/Ext/CommandModule.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/ExternalDataSources/ВнешнийИсточникДанных1/Tables/Таблица1/Templates/Макет/Ext/Template.txt(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/HTTPServices/HTTPСервис1/Ext/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/IntegrationServices/СервисИнтеграции1/Ext/Module.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1/Commands/Команда1/Ext/CommandModule.bsl(1 hunks)src/test/resources/ext/designer/mdclasses_3_25/src/cf/WebServices/WebСервис1/Ext/Module.bsl(1 hunks)
🧰 Additional context used
🧬 Code graph analysis (6)
src/test/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTest2.java (2)
src/main/java/com/github/_1c_syntax/bsl/reader/designer/DesignerReader.java (1)
Slf4j(83-291)src/main/java/com/github/_1c_syntax/bsl/reader/edt/EDTReader.java (1)
Slf4j(80-294)
src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCube.java (4)
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/MDReaderContext.java (1)
EqualsAndHashCode(58-186)src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java (1)
Value(44-138)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCubeDimensionTable.java (1)
Value(52-176)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceFunction.java (1)
Value(43-106)
src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/ExternalDataSourceConverter.java (1)
src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/MDChildConverter.java (1)
EDTConverter(36-52)
src/main/java/com/github/_1c_syntax/bsl/mdo/WebSocketClient.java (4)
src/main/java/com/github/_1c_syntax/bsl/reader/common/context/MDReaderContext.java (1)
EqualsAndHashCode(58-186)src/main/java/com/github/_1c_syntax/bsl/mdclasses/Configuration.java (1)
Value(106-442)src/main/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationExtension.java (1)
Value(105-349)src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java (1)
Value(44-138)
src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceFunction.java (2)
src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java (1)
Value(44-138)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCube.java (1)
Value(52-197)
src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCubeDimensionTable.java (2)
src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java (1)
Value(44-138)src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCube.java (1)
Value(52-197)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (13)
- GitHub Check: build (17, windows-latest)
- GitHub Check: build (21, macOS-latest)
- GitHub Check: build (21, windows-latest)
- GitHub Check: QA
- GitHub Check: build (23, macOS-latest)
- GitHub Check: build (23, windows-latest)
- GitHub Check: build (17, ubuntu-latest)
- GitHub Check: build (23, ubuntu-latest)
- GitHub Check: build (17, macOS-latest)
- GitHub Check: build (21, ubuntu-latest)
- GitHub Check: build (21, windows-latest)
- GitHub Check: build (23, windows-latest)
- GitHub Check: build (17, windows-latest)
🔇 Additional comments (40)
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonTemplates/Макет3/Ext/Template/ru.html (1)
1-1: Всё в порядкеРесурс добавлен корректно, критичных замечаний нет.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/IntegrationServices/СервисИнтеграции1/Ext/Module.bsl (1)
2-4: Подтвердите, что заглушка намеренная для тестовых целей.Структура процедуры корректна. Поскольку файл находится в тестовых ресурсах (
src/test/resources), пустая реализация с шаблонным комментарием вероятно используется для проверки структуры метаданных без необходимости в логике обработчика.Пожалуйста, подтвердите, что это намеренная заглушка для тестирования. При желании можно добавить пояснительный комментарий, указывающий на назначение этой заглушки.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/HTTPServices/HTTPСервис1/Ext/Module.bsl (1)
2-20: Реализация корректна для тестового ресурса.Файл представляет собой тестовый модуль HTTP-сервиса с заглушками для проверки парсинга метаданных. Все четыре функции имеют идентичную реализацию, что допустимо для тестовых фикстур, где важна структура, а не функциональность. Неиспользуемый параметр
Запроссоответствует требованиям фреймворка 1C для обработчиков HTTP-сервисов.src/test/resources/ext/designer/mdclasses_3_25/src/cf/Documents/Документ1/Commands/Команда1/Ext/CommandModule.bsl (1)
1-7: Валидный тестовый шаблон обработчика команды документа.Структура файла соответствует шаблону, генерируемому 1C:Enterprise Designer для команд документов. Все элементы на месте: клиентская директива, процедура-обработчик с корректными параметрами и комментариями-заглушками.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/Reports/Отчет1/Commands/Команда1/Ext/CommandModule.bsl (1)
1-7: Валидный тестовый шаблон обработчика команды отчета.Структура файла соответствует шаблону, генерируемому 1C:Enterprise Designer для команд отчетов. Реализация идентична шаблону для документов, с корректным путем к форме отчета.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonCommands/ОбщаяКоманда1/Ext/CommandModule.bsl (1)
1-7: Проверьте корректность незавершенного пути формы.Структура модуля команды соответствует шаблону Designer, однако строка 6 содержит неполный путь формы:
"ОбщаяФорма."без указания имени формы после точки. В отличие от команд документа и отчета, где пути форм указаны полностью, здесь отсутствует финальная часть пути.Убедитесь, что это соответствует тому, как Designer генерирует шаблоны для общих команд в версии 8.3.25.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль1/Ext/Module.bsl (1)
1-4: Тестовая заглушка корректна.Файл представляет собой валидную заглушку для тестирования парсинга метаданных общего модуля с экспортной процедурой регламентного задания. Синтаксис BSL корректен, структура соответствует стандартам 1С:Предприятие.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonModules/ОбщийМодуль3/Ext/Module.bsl (1)
1-8: Тестовые заглушки корректны.Файл содержит две валидные заглушки для тестирования:
- Обработчик события подписки с правильной сигнатурой параметров
- Процедуру регламентного задания
Синтаксис BSL корректен, структура соответствует стандартам 1С:Предприятие. Файл подходит для использования в качестве тестового ресурса.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CalculationRegisters/РегистрРасчета1/Templates/Макет/Ext/Template.txt (1)
1-1: LGTM! Стандартный тестовый файл-заглушка.Файл является типичным заполнителем для тестовых ресурсов, содержащим только BOM-маркер. Соответствует аналогичным файлам в других тестовых ресурсах PR.
src/main/java/com/github/_1c_syntax/bsl/mdo/utils/LazyLoader.java (3)
33-33: LGTM! Корректное добавление импортов.Импорты
ExternalDataSourceиExternalDataSourceCubeнеобходимы для новой функциональности обработки дочерних элементов внешних источников данных.Also applies to: 42-42
106-114: LGTM! Логика обработки дочерних элементов корректна.Добавлена поддержка дочерних элементов для
ExternalDataSource(таблицы, кубы, функции) иExternalDataSourceCube(таблицы измерений). Реализация соответствует существующим паттернам в методеcomputeChildren.
191-194: LGTM! Корректная агрегация атрибутов куба.Добавлена обработка
ExternalDataSourceCubeдля включения ресурсов и измерений в список всех атрибутов. Логика согласуется с обработкой регистров и планов счетов выше.src/test/java/com/github/_1c_syntax/bsl/mdo/CatalogTest.java (1)
57-57: LGTM! Корректное обновление тестовых проверок.Добавлены проверки наличия
StandardAttributeв коллекцияхgetChildren(),getStorageFields()иgetPlainStorageFields(). Изменения согласуются с расширенной поддержкой стандартных атрибутов в остальной части PR.Also applies to: 76-76, 84-84
src/test/resources/ext/designer/mdclasses_3_25/src/cf/DataProcessors/Обработка1/Forms/Форма/Ext/Form/Module.bsl (1)
1-10: LGTM! Стандартный тестовый модуль BSL.Модуль демонстрирует типичный паттерн клиент-серверного взаимодействия в 1C BSL: клиентская процедура
Команда1вызывает серверную процедуруКоманда1НаСервере. Структура соответствует стандартам платформы 1C и подходит для тестовых ресурсов.src/test/java/com/github/_1c_syntax/bsl/smoke/RightTest.java (1)
47-47: LGTM! Корректное обновление ожидаемого количества классов.Увеличение ожидаемого количества классов, реализующих
AccessRightsOwner, с 44 до 47 соответствует добавлению новых типов MDO в рамках данного PR (например,WebSocketClientи типы, связанные сExternalDataSource).src/main/java/com/github/_1c_syntax/bsl/reader/designer/converter/MDChildConverter.java (2)
25-26: LGTM! Корректное добавление импортов.Импорты
ExternalDataSourceCubeиExternalDataSourceCubeDimensionTableнеобходимы для новых маппингов типов в методеcomputeTypes.
80-81: LGTM! Корректное добавление маппингов типов.Добавлены маппинги для новых типов
ExternalDataSourceCubeиExternalDataSourceCubeDimensionTableна соответствующие значения enumMDOType. Реализация согласуется с существующими маппингами в методеcomputeTypes.src/main/java/com/github/_1c_syntax/bsl/reader/common/context/std_attributes/StdAttributeFiller.java (1)
276-276: Вручную проверьте согласованность регистра ключа "attributes"Скрипт не нашёл ни одного вхождения
getChildrenContexts().put("Attributes"/"attributes"). Пожалуйста, убедитесь вручную, что во всех местах добавления дочерних контекстов атрибутов используется ключ"attributes"в нижнем регистре.src/main/java/com/github/_1c_syntax/bsl/reader/designer/DesignerReader.java (1)
35-37: Регистрация новых типов MDO выполнена корректно.Импорты и регистрация алиасов XStream для новых типов ExternalDataSource (Cube, Function, DimensionTable) следуют установленным паттернам и согласуются с целями PR.
Also applies to: 271-273
src/main/java/com/github/_1c_syntax/bsl/mdclasses/Configuration.java (1)
73-73: Добавление поддержки WebSocket-клиентов выполнено корректно.Новое поле
webSocketClientsследует установленным паттернам и согласуется с аналогичными изменениями в ConfigurationExtension и ConfigurationTree.Also applies to: 206-207
src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/MDChildConverter.java (1)
25-26: Исключения для новых типов ExternalDataSource добавлены корректно.Расширение логики
canConvertследует установленному паттерну исключения специальных типов из обработки MDChildConverter.Also applies to: 47-48
src/main/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTree.java (1)
71-71: Методы доступа к WebSocket-клиентам реализованы последовательно.Добавленные методы
getWebSocketClients()иfindWebSocketClient()следуют единому шаблону интерфейса ConfigurationTree.Also applies to: 670-681
src/main/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationExtension.java (1)
73-73: Добавление WebSocket-клиентов и исправление консистентности аннотаций.Поле
webSocketClientsдобавлено согласованно с Configuration. Аннотация@Singularтакже добавлена к полюhttpServicesдля единообразия с Configuration.Also applies to: 199-200
src/test/java/com/github/_1c_syntax/bsl/mdclasses/ConfigurationTest2.java (2)
45-70: Тест 8.3.25 выглядит корректноПокрытие свойств и состав детей согласованы; замечаний нет.
79-106: Тест 8.3.27: корректно проверяет WebSocket-клиентыПроверка
getWebSocketClients()и суммарного состава детей валидна.src/test/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSourceTest.java (1)
39-42: Smoke-тест MDO типа — окТип корректно проверяется.
src/test/java/com/github/_1c_syntax/bsl/mdo/WebSocketClientTest.java (1)
41-56: Проверьте имя константы ModuleType
ModuleType.WEBSocketClientModuleвыглядит нетипично по стилю именования. Убедитесь, что это точное имя константы вModuleType(возможноWebSocketClientModuleили иное). Остальные проверки валидны.src/test/resources/ext/designer/mdclasses_3_25/src/cf/Catalogs/Справочник1/Forms/ФормаВыбора/Ext/Form/Module.bsl (1)
1-20: Ок для тестовых ресурсовЗаглушки обработчиков и вызовы серверных процедур корректны.
src/main/java/com/github/_1c_syntax/bsl/reader/edt/EDTReader.java (1)
274-281: Новые alias для EDT — окМаппинги для кубов/функций/таблиц измерений добавлены корректно. Нужен ли также singular alias для
Functionв EDT (по аналогии сCube/DimensionTable), или формат EDT всегда использует множественноеfunctions?src/main/java/com/github/_1c_syntax/bsl/mdo/WebSocketClient.java (1)
37-93: Класс WebSocketClient реализован корректноСтруктура данных, интеграция с ModuleOwner и дефолты — без замечаний.
src/main/java/com/github/_1c_syntax/bsl/mdo/ExternalDataSource.java (1)
71-107: Ленивая агрегация детей и новые коллекции — ок
children/plainChildrenчерезLazyLoaderи коллекцииfunctions/cubesдобавлены корректно.src/main/java/com/github/_1c_syntax/bsl/reader/edt/converter/ExternalDataSourceConverter.java (1)
75-79: Покрытие Function в EDT-конвертереКонвертер исключает
ExternalDataSourceFunction(его обрабатываетMDChildConverter?), подтвердите, что для EDT-функций не требуется аналогичная маршрутизация по файлам (как для Table/Cube/DimensionTable).src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаИсторииИзмененийИсторииДанных/Ext/Form/Module.bsl (1)
1-428: Тестовый ресурс для версии 8.3.25 выглядит корректно.Модуль формы истории изменений данных реализует стандартную функциональность 1С для работы с историей данных. Код содержит:
- Инициализацию с проверкой прав доступа
- Выборку и отображение версий
- Фильтрацию и навигацию по версиям
- Сравнение версий
- Управление комментариями
Синтаксических ошибок и критических проблем не обнаружено.
src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCube.java (1)
52-197: Реализация класса ExternalDataSourceCube выглядит отлично.Класс корректно реализован с соблюдением всех паттернов MDO:
- Присутствуют все необходимые интерфейсы и поля
- Используется ленивая загрузка для children, plainChildren, allAttributes и allModules
- Правильно определены коллекции атрибутов: dimensions, resources, dimensionTables
- Права доступа (READ, VIEW) соответствуют аналитическому объекту с режимом только для чтения
Структура класса согласована с аналогичными MDO-классами в кодовой базе.
src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceFunction.java (1)
43-106: Класс ExternalDataSourceFunction реализован корректно.Реализация функции внешнего источника данных соответствует требованиям:
- Правильно реализованы интерфейсы MDChild, ValueTypeOwner, AccessRightsOwner
- Поле
typeкорректно скрыто (AccessLevel.NONE) с публичным методомgetValueType()- Специфичные поля
returnValueиexpressionInDataSourceсоответствуют функциональности- Права доступа (VIEW, USE) подходят для объекта-функции
Класс не содержит избыточной функциональности, что правильно для простого объекта без дочерних элементов.
src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаДанныхВерсииИсторииДанных/Ext/Form/Module.bsl (1)
1-779: Тестовый ресурс модуля формы данных версии выглядит корректно.Модуль реализует полнофункциональное отображение данных версии истории с поддержкой:
- Различных типов метаданных (регистры, константы, объекты)
- Проверки прав доступа на уровне полей и табличных частей
- Отображения изменений с визуальным выделением
- Табличных частей с отслеживанием изменений строк
- Навигации между версиями и сравнения
Код соответствует стандартам 1С:Предприятие 8 для работы с историей данных. Критических проблем не обнаружено.
src/main/java/com/github/_1c_syntax/bsl/mdo/children/ExternalDataSourceCubeDimensionTable.java (1)
82-82: Проверьте необходимость поляplainChildrenи методаgetPlainChildren()
ВExternalDataSourceCubeDimensionTable.javaэти элементы отсутствуют, тогда как вExternalDataSourceCube.javaони есть – убедитесь, что для таблиц измерений это архитектурно оправданный пропуск.src/test/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска/Ext/Form/Module.bsl (3)
1-13: Инициализация формы реализована корректно.Процедура правильно загружает предыдущие поисковые запросы из хранилища настроек с проверкой на Неопределено.
53-179: Отсутствует обработка ошибок при работе с полнотекстовым поиском.Процедура не содержит обработку исключений для операций полнотекстового поиска и парсинга XML. При возникновении ошибок (например, недоступность полнотекстового индекса, некорректный XML) форма аварийно завершит работу.
Рекомендуется добавить обработку ошибок:
&НаСервере Процедура ВыполнитьПоискНаСервере() + Попытка // ... существующий код ... + Исключение + Сообщить("Ошибка при выполнении поиска: " + ОписаниеОшибки()); + Элементы.СтраницыРезультатов.ТекущаяСтраница = Элементы.СтраницаПоиска; + КонецПопытки; КонецПроцедуры
332-356: Реализация истории поиска выполнена корректно.Обработчики для работы с историей поиска правильно реализуют функциональность:
- Заполнение выпадающего списка из истории запросов
- Отображение меню истории
- Выполнение выбранного запроса
Логика корректна, включая проверки на Неопределено.
| // прочее | ||
| implementation("commons-io", "commons-io", "2.18.0") | ||
| implementation("io.github.1c-syntax", "bsl-common-library", "0.9.0.18-SNAPSHOT") | ||
| implementation("io.github.1c-syntax", "bsl-common-library", "0.9.0.21-SNAPSHOT") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Проверьте доступность версии SNAPSHOT-зависимости.
Убедитесь, что версия 0.9.0.21-SNAPSHOT библиотеки bsl-common-library доступна в репозитории Maven и не содержит критических проблем.
Выполните следующий скрипт для проверки доступности версии:
🏁 Script executed:
#!/bin/bash
# Проверка доступности версии 0.9.0.21-SNAPSHOT в Maven Central Snapshots
curl -s "https://central.sonatype.com/repository/maven-snapshots/io/github/1c-syntax/bsl-common-library/0.9.0.21-SNAPSHOT/" | head -20Length of output: 907
🏁 Script executed:
#!/bin/bash
# Проверка наличия JAR-артефакта через Sonatype redirect API
curl -s -o /dev/null -w '%{http_code}' \
"https://oss.sonatype.org/service/local/artifact/maven/redirect?r=snapshots&g=io.github.1c-syntax&a=bsl-common-library&v=0.9.0.21-SNAPSHOT&p=jar"Length of output: 3
Версия SNAPSHOT отсутствует в репозитории
При попытке загрузить JAR-артефакт 0.9.0.21-SNAPSHOT получен HTTP 404. В build.gradle.kts (строка 62) укажите существующую версию или задеплойте 0.9.0.21-SNAPSHOT.
🤖 Prompt for AI Agents
В build.gradle.kts около строки 62, зависимость
implementation("io.github.1c-syntax","bsl-common-library","0.9.0.21-SNAPSHOT")
указывает на несуществующий SNAPSHOT (HTTP 404). Исправьте это либо заменив
версию на валидную опубликованную (например последнюю релизную версию в
репозитории артефактов), либо задеплойте артефакт 0.9.0.21-SNAPSHOT в
используемый репозиторий; после изменения синхронизируйте/перезапустите сборку
чтобы убедиться, что артефакт разрешается корректно.
| // здесь только имя после третьей точки | ||
| var childName = SPLITTER_PATTERN.split(reader.getValue())[POSITION_CHILD_NAME]; | ||
| return ExtendXStream.read(reader, dataPath(ExtendXStream.getCurrentPath(reader), childName)); | ||
| var childName = SPLITTER_PATTERN.split(reader.getValue())[position]; | ||
| return ExtendXStream.read(reader, dataPath(ExtendXStream.getCurrentPath(reader), mdoType, childName)); | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Риск IndexOutOfBounds при разборе имени дочернего объекта
Жесткая индексация split(".")[position] упадет при ином формате строки/дополнительных точках в имени. Добавьте проверку границ и/или запасной вариант (последний сегмент).
Пример доработки:
- var childName = SPLITTER_PATTERN.split(reader.getValue())[position];
+ var parts = SPLITTER_PATTERN.split(reader.getValue());
+ int idx = position < parts.length ? position : parts.length - 1;
+ if (idx < 0) {
+ throw new IllegalArgumentException("Некорректное значение узла: " + reader.getValue());
+ }
+ var childName = parts[idx];📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| // здесь только имя после третьей точки | |
| var childName = SPLITTER_PATTERN.split(reader.getValue())[POSITION_CHILD_NAME]; | |
| return ExtendXStream.read(reader, dataPath(ExtendXStream.getCurrentPath(reader), childName)); | |
| var childName = SPLITTER_PATTERN.split(reader.getValue())[position]; | |
| return ExtendXStream.read(reader, dataPath(ExtendXStream.getCurrentPath(reader), mdoType, childName)); | |
| } | |
| // здесь только имя после третьей точки | |
| var parts = SPLITTER_PATTERN.split(reader.getValue()); | |
| int idx = position < parts.length ? position : parts.length - 1; | |
| if (idx < 0) { | |
| throw new IllegalArgumentException("Некорректное значение узла: " + reader.getValue()); | |
| } | |
| var childName = parts[idx]; | |
| return ExtendXStream.read(reader, dataPath(ExtendXStream.getCurrentPath(reader), mdoType, childName)); | |
| } |
...urces/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаВариантаОтчета/Ext/Form/Module.bsl
Outdated
Show resolved
Hide resolved
...est/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска/Ext/Form/Module.bsl
Outdated
Show resolved
Hide resolved
...est/resources/ext/designer/mdclasses_3_25/src/cf/CommonForms/ФормаПоиска/Ext/Form/Module.bsl
Outdated
Show resolved
Hide resolved
...igner/mdclasses_3_25/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных/Ext/Form/Module.bsl
Outdated
Show resolved
Hide resolved
...igner/mdclasses_3_25/src/cf/CommonForms/ФормаРазличийВерсийИсторииДанных/Ext/Form/Module.bsl
Outdated
Show resolved
Hide resolved
|



Описание
Связанные задачи
Closes
Чеклист
Общие
gradlew precommit)Дополнительно
Summary by CodeRabbit