Skip to content

Releases: autumn-library/autumn

v2.3.1

13 Feb 11:31
2be77a4
Compare
Choose a tag to compare
  • Исправлено отсутствие вызова ПриРазворачиванииАннотации при разворачивании вложенных аннотаций

Full Changelog: v2.3.0...v2.3.1

v2.3.0

06 Feb 12:01
132dc22
Compare
Choose a tag to compare
  • Внедрение желудей и деталек в приватные поля объекта (без Экспорт)
  • Асинхронный запуск всех рогаток с опциональным ожиданием завершения. Подробнее см. документацию
  • Добавлена возможность внедрять желуди в виде соответствия (имя желудя -> желудь) и таблицы значений (Имя, ОпределениеЖелудя, Желудь)
  • Требуемая версия движка повышена до 1.8.3

v2.2.0

11 Jan 10:00
8d94546
Compare
Choose a tag to compare
  • Проект переехал в организацию autumn-library
  • Добавлен механизм повторяемых параметров аннотаций.
  • Исправлена ошибка, при которой ПриРазворачиванииАннотации в параметр ТипВладельцаСвойства иногда передавалась Строка вместо Тип
  • Добавлена возможность поиска списка желудей с передачей параметров-блестяшек по аналогии с поиском одного желудя.
  • В ОпределениеАннотации добавлен публичный метод создания объекта аннотации

v2.1.0

30 Dec 11:47
33cef30
Compare
Choose a tag to compare
  • Добавлен механизм наследования и контроля заполнения аннотаций. Теперь можно создать специальный класс, помеченный аннотацией &Аннотация. При ее применении свойство/метод обоготиться подчиненными аннотациями и будет осуществлена проверка заполнения параметров аннотации. Подробнее см. в документации.
  • В Поделку добавлен метод ДобавитьАннотацию(Тип)
  • При использовании автоинициализации Поделки &Заготовками список заготовок больше не очищается. Для принудительной очистки списка автозаготовок добавлен метод Осень.ОчиститьЗаготовкиДляАвтоИнициализации()
  • В модуль РаботаСАннотациями добавлены методы поиска аннотации в списке аннотаций и установки значения параметра аннотации
  • Исправлено смешение контекстов ФабрикиЖелудей при работе с несколькими независимыми Поделками
  • Исправлено дублирование элементов массива при внедрении в &Детальку
  • Ускорено создание желудей, в том числе компанейских
  • Новые публичные классы - ОпределениеАннотации и РазворачивательАннотации (доступен для внедрения как &Желудь)
  • В ОпределениеАннотации добавлены методы Свойства() и Методы() с информацией о развернутых аннотациях
  • Исправлено создание желудей примитивных типов через &Завязь
  • Исправлена ошибка при использовании настроек в формате yaml
  • Новые разделы документации:
    • Собственные аннотации
    • Наследование аннотаций
    • Обработка аннотаций
  • Добавлено немножечко описания публичного интерфейса и полей классов.
  • Добавлено автотестирование проекта

Full Changelog: v2.0.0...v2.1.0

v2.0.0

29 Sep 16:03
10903a2
Compare
Choose a tag to compare

Breaking change

  • КонтекстПриложения переименован в Поделка.
  • Методы КонтекстПриложения.Зарегистрировать* переименованы в Поделка.Добавить*.
  • Метод КонтекстПриложения.ПолучитьЖелудь переименован в Поделка.НайтиЖелудь.
  • В качестве значения второго аргумента метода ОбработатьЖелудь в Напильник теперь передается ОпределениеЖелудя, а не ИмяЖелудя.
  • Жизненный цикл приложения разделен на две фазы:
    • фаза инициализации, в которой можно только добавлять в поделку новые желуди;
    • фаза выполнения, в которой можно находить желуди, но нельзя регистрировать новые.
  • Добавлен метод Поделка.ЗапуститьПриложение(), переводящий приложение из статуса Инициализация в статус Выполнение.

Новое в версии

  • Добавлена аннотация &Прозвище, в которой можно указывать "синоним" желудя. Желудь может иметь несколько прозвищ (через повторение аннотации).
  • В Поделка добавлен метод НайтиЖелуди, позволяющий получить массив желудей с совпадающим прозвищем.
  • В аннотацию &Пластилин добавлен параметр Тип, в котором можно указать способ поиска прилепляемой частицы:
    • "Желудь" - будет осуществлен поиск и внедрение одного желудя (как и раньше);
    • "Массив" - будет осуществлен поиск нескольких желудей по имени/прозвищу и внедрение их в виде массива.
  • Не только имя &Желудь, но и имя &Напильник, &Дуб и &Завязь теперь можно переопределить в соответствующей аннотации.
  • Для &Завязь реализована возможность именовать метод произвольно, а не только по имени типа возвращаемого значения. В случае произвольного имени, тип возвращаемого значения должен быть указан в параметре Тип аннотации &Завязь.
  • Добавлена аннотация &Верховный, с помощью которой можно:
    • переопределить имеющийся в Поделке желудь по имени желудя;
    • объявить желудь как желудь "по умолчанию" при получении желудя по прозвищу, в случае если желудей с одним прозвищем несколько.
  • В конструктор &Напильник теперь можно прилепить не только Поделка, но и любой другой желудь. Из-за рекурсивной зависимости на таком прилепляемом желуде не будет отрабатывать &Напильник, в который он внедряется.
  • Все &Напильник'и теперь принудительно инициализируются перед поиском первого желудя.
  • &Завязь теперь тоже может иметь свой &Характер.
  • Добавлена аннотация &Рогатка для определения желудей, которые должны срабатывать при старте приложения. Каждая &Рогатка должна иметь метод ПриЗапускеПриложения().
  • Добавлена аннотация &Заготовка для массового наполнения Поделки желудями. Каждая &Заготовка должна иметь метод ПриИнициализацииПоделки(Поделка). Заготовка инстанцируется на фазе инициализации приложения, поэтому может принимать в качестве зависимостей только набор &Деталька.
  • Добавлен модуль Осень со статическими методами наполнения списка заготовок на этапе загрузки библиотеки (Осень.ДобавитьЗаготовкуДляАвтоИнициализации(ИмяТипаЗаготовки))
  • Добавлена аннотация &Деталька для чтения параметров приложения из конфигурационного файла. Аннотацию можно использовать в тех же местах, что и &Пластилин - в конструкторе, сеттере и на поле. В качестве параметра аннотации выступает путь к настройке в формате библиотеки configor. Конфигурационный файл имеет имя autumn-properties.json/yaml/yml и может быть расположен в корне проекта или в подкаталоге src. Значение по умолчанию для параметра можно указать с помощью параметра аннотации ЗначениеПоУмолчанию.
  • Добавлена аннотация &Блестяшка для задания произвольных параметров конструктора/завязи желудя. Параметры могут быть переданы в виде массива через метод Поделка.НайтиЖелудь(ИмяЖелудя, Параметры). Можно либо передать либо все параметры конструктора (включая пластилин, детальки и собственно блестяшки) либо только блестяшки.

v1.0.1

05 Sep 16:16
17ce03d
Compare
Choose a tag to compare
  • Публикация в хаб
  • Обновление зависимостей

v1.0.0

27 May 20:11
3940d98
Compare
Choose a tag to compare

Первый релиз.