Releases: jolicode/automapper
Releases · jolicode/automapper
10.0.0
Added
- GH#297 Support PHP 8.5 and Symfony 8, this library now use the
TypeInfoComponent for types instead of PropertyInfo directly. - GH#297 Debug command now show the type of each property mapped, transformers will also display more information.
- GH#297 Profiler now show the type of each property mapped, transformers will also display more information.
- GH#304 Allow to override source and/or target property type.
- GH#314 Add support for static callable in attribute transformer.
- GH#317 Initial support for nested properties.
- GH#318 Add support for lazy mapping.
- GH#316 Add support for object invokable transformer in attribute transformer.
- GH#319 Add support for discriminator with
Mapperattribute. - GH#320 Add a new interface
PropertyTransformerComputeInterfaceto allow property transformers with supports, to compute a value that will be fixed during code generation. - GH#306 Support ObjectMapper attributes.
- GH#306 Add an implementation for Symfony
ObjectMapperInterfaceusing AutoMapper.
Changed
- [BC Break] GH#297
PropertyTransformerSupportInterfacedoes not use aTypesMatchinganymore, you can get the type directly fromSourcePropertyMetadataorTargetPropertyMetadata. - [BC Break] GH#297
ProviderInterface::providemethod now receive also the identifiers of the object to provide.
Fixed
- GH#303 Fix api platform not returning an iri when there is no property mapped.
Miscellaneous
- GH#297 Add a castor task to serve the symfony app in tests for debugging purpose.
9.5.0
Added
- GH#260 Add support for identifiers detection and comparison of objects, this allow mappers to detect if objects are equals based on some properties, which allow better deep merge / update of collections.
- GH#253 Add support for Doctrine provider, which allow to fetch entities from database instead of creating new ones, this is an experimental feature.
Changed
- GH#286 Optimize condition order to avoid unnecessary method calls by prioritizing custom conditions
Fixed
- GH#280 Use correct property name to extract types from write mutator, which result in better extraction in some cases.
- GH#272 Fixed circular references with promoted properties.
- GH#285 Fix constructor not used when on a abstract class.
Miscellaneous
9.4.1
9.4.0
Added
- GH#246 Add support for PHP 8.4
- GH#246 Add support for API Platform 4
- GH#252 Add support for SerializedName attributes
- GH#251 Allow to map extra properties on array/object
- GH#242 Add support for DiscriminatorMap with interface
- GH#256 Allow nested array to be transformed to object
- GH#262 Allow to extract types from getter
- GH#261 Remove existing values when using adder and remover on collection
Changed
- GH#243 GH#258 Clean the tests suite
- GH#264 Upgrade phpstan to make it work with PHP 8.4
- GH#257 Better error reporting of missing 'typePropery' when using DiscriminatorMap
- GH#265 Set deep populate to true if passing an existing value
- GH#266 Use composer to get installed versions instead of const
Fixed
9.3.1
9.3.0
Added
- GH#223 Handle array to Doctrine Collection transformations
- GH#225 Add mapCollection method to base interface
- GH#200 Added skip_uninitialized_values context to skip non initialized properties
- GH#200 Changed skip_null_values behavior to not handle initialized properties anymore
- GH#230 Allow to map unknown array into object when it's nested
- GH#235 Add possibility to use the
NameConverterInterfacefrom symfony 7.2
Removed
- GH#200 Drop nikic/php-parser < 5.0 compatibility
Fixed
- GH#231 Fix cases where constructor arguments were missing but not detected
- GH#188 Correctly handle default constructor arguments when they are objects.
- GH#234 Fix custom providers not being registered inside the bundle
Miscellaneous
- GH#232 Use castor for local and CI checks on the library