Skip to content

v0.4.0 — Уровень валидации 2.5 (level=3)

Choose a tag to compare

@Regsorm Regsorm released this 22 May 13:18

Добавлено

Уровень валидации 2.5 (level=3), под-фаза A — return-type tracking. Тип локальной переменной теперь выводится не только из Новый ТипX, ТипY.ЗначениеZ и аннотации // @type, но и из возвращаемого типа вызванного метода/свойства:

  • Х = Запрос.Выполнить()Х: РезультатЗапроса;
  • цепочки любой глубины: Х = Запрос.Выполнить().Выбрать()ВыборкаИзРезультатаЗапроса;
  • свойства: Х = Объект.Свойство → тип из Property.type_name;
  • возврат глобального метода: Х = ПолучитьОбщийМакет()ТабличныйДокумент.

Фильтр типов с динамическими членами (на всех уровнях). Для типов, чьи члены задаются в runtime и в hbk отсутствуют, проверка Объект.Член отключена (ВыборкаИзРезультатаЗапроса, Структура, Форма, XDTO и др.). Устраняет массовый false-positive. Регресс-прогон по 4 конфигурациям: high-confidence находки не затронуты, unknown_type_member снижен ~6x.

level=3 в validate_expression и default_validation_level=3 в конфиге. Диапазон клампа расширен до [1..=3]. Дефолт по-прежнему level=1.

Полная история — CHANGELOG.md.