Формат этого файла соответствует рекомендациям Keep a Changelog. Проект использует семантическое версионирование.
Merge::output
принимал только массивы.
- Метод
input
изMapper
перенесён вInputMapper
. - Метод
output
изMapper
перенесён вOutputMapper
. ObjectMapper
переименован вAbstractObjectMapper
.ObjectConstructor
переименован вConstructor
.- В конструктор
Constructor
теперь можно передавать имя класса в виде строки.
- Добавлены интерфейсы:
InputMapper
OutputMapper
BidirectionalMapper
- Добавлены классы:
Merge
PublicProperties
ObjectMapper
- Если значение отсутствует в карте
Map
, то вместо выбрасывания исключения это значение возвращается как есть.
Полностью изменена концепция библиотеки. Все старые классы удалены и заменены новыми.
- Более понятное сообщение об ошибке в случае невозможности преобразовать значение свойства.
- Добавлены интерфейсы
OneOf\Selector
- Добавлены классы
OneOf
.OneOf\ByDiscriminator
.OneOf\ByExistedField
.Path\SubPath
.
- Метод
ClassType::toDataValue
не работал рекурсивно.
- Всем типам добавлен метод
toDataValue
.
- Новая стратегия определения имени класса —
ClassNameMap
.
- Значения для пропущенных аргументов по умолчанию конструктора/фабрики добавлялись во входные данные под неправильным именем.
- При создании объектов через
ClassType
происходило смещение аргументов конструктора/фабрики, если в конструкторе/фабрики было более одного необязательного аргумента и один из них (кроме последнего) не был указан во входных данных.
CollectionType
BooleanType
- Рефакторинг
- Исправлена повторная установка некоторых значений.
- Исправлено двойное преобразование значений при наличии конструктора класса.
- Не устанавливалось или устанавливалось неправильно значение для свойств типа
ClassType
, включая значения по умолчанию.
Properties
теперь поддерживает интерфейсIterator
.
- Новые типы:
CustomType
FloatType
MapType
NullableType
- Типы:
Type
ClassType
TargetClassResolver
ClassName
Properties
Property
ObjectFactory
AbstractObjectFactory
DefaultObjectFactory
CallableObjectFactory
EnumType
SameType
- Исключения:
ConfigurationError
DataError
- Прочее:
DefaultValue