Releases: schmittjoh/serializer
Fixed issues with expression virtual prop and exclude all policy
Fixed bugs:
- @VirtualProperty "exp" does not play nice with @ExclusionPolicy("ALL") #746
Fixed XML edge-case when using max-depth exclusion strategy
Fixed bugs:
Closed issues:
- XmlList not working since version 1.5.0 with xmlns attributes #742
- DoctrineObjectConstructor: how to use it without Symfony, in a PHP project #741
- Outdated docs site #733
- Allow data access to Property naming strategy #717
- Can't hint interface using @type to trigger custom handler #631
- JSON/YAML encoding changes #617
- Why do we need this check inside SerializedName constructor, if there is name? #558
- Is it possible to deserialize Collection from Json #534
- PhpCollection 0.4 #531
- Possible mismatch of xml-attribute-map and $pMetadata->xmlAttribute in XmlDriver.php #422
- Access level propose for Handler/DateHandler.php #386
- Type DateTime and Timestamp (U format) #343
Expression language based virtual properties and other improvements
1.6.0 stable
Implemented enhancements:
- Add DateTimeImmutable support to DateHandler #543
Fixed bugs:
- Virtual property having type overriden by doctrine metadata #276
Closed issues:
- Serialize a subclass #735
- How to handle Doctrine not found entity ? #731
- Regression with 1.5.0 => Undefined offset 15 #715
- detect serialisation without groups set #546
- Introducing the NormalizerInterface #537
- How to set JSON serialization options? #535
- @MaxDepth doesn't seem to be working #522
- max_depth in YML config is ignored #498
- Dynamic property type annotation #436
- How to deserialize JSON if property might have a list of subobjects? #355
- Object to array normalization #354
- Serialize Doctrine object without references #353
- Post_serialize doesn't serialize relation! #236
- parsing string to date #217
- Discriminator is not exposed when using a group exclusion strategy #157
Expression language based virtual properties and other improvements
The main feature that will be released with the 1.6.0 release is the "expression language based virtual properties" support.
For more info about expression language based virtual properties you can read this document.
Other things contained in the release candidate:
Implemented enhancements:
- Expression language based virtual properties #708 (goetas)
- check that cache directory was not created before throwing exception #729 (mente)
- #720 - Adding support for DateInterval deserialization #721 (c0ntax)
- Xml namespaces improvements #644 (goetas)
Fixed bugs:
Closed issues:
- Add symfony expression in exclusions/expositions #406
- Is it possible to achieve something like - shouldSerializeEmpty #725
- How to handle DateTime serialization with fromArray method ? #723
- DateInterval supported for serialization but not deserialization #720
- Deserialization of collection when wraped by aditional xml tags #719
- SerializedName based on a property value #716
- Blank XML breaks XmlDeserializationVisitor error handling #701
- Problem with FOSUserBundle ROLE serialization #690
- Doctrine cache dependency when using setCacheDir #676
- OneToOne entities are not deserialized if passing a nested one-to-one property #652
- [RFC] Serialization refacotring #609
- Object handler callback returns array, but serialized object = null #594
- Cannot add @Discriminator field into specific @group #557
- Object check on SerializationContext::isVisiting() #502
- Define cdata and namespace for @xmllist elements #480
- Serializer working with parent class #376
- Add support for array format #374
- Obtain VirtualProperty value using a service #359
- make deserialisation of non existing id's configurable #333
- HHVM compatibility issue with undefined property JMS\Serializer\Metadata\ClassMetadata::$inline #312
- resources serialization #275
- I'm receiving "Class ArrayCollection does not exist" when serializing (temporarily solved with a workaround) #274
- Can't use handlers on strings (and other simple types) #194
- composer.json update for doctrine #178
- Use expression for virtual properties #171
- Handle classes that implement collections (e.g. ArrayObject) and properties #137
- Check CDATA is needed #136
- property path support #22
Merged pull requests:
1.5.0 stable
The main feature included in the 1.5.0 release is the expression language exclusion policy implemented with #673.
Here a more detailed changelog:
Implemented enhancements:
- Implemented dynamic exclusion using symfony expression language #673 (goetas)
- added support for xml-attributes as discriminators #692 (twtinteractive)
- Prevent doctrine proxy loading for virtual types #684 (goetas)
Fixed bugs:
Merged pull requests:
- Added doc reference for disabling discriminator #699 (dragosprotung)
- Use GroupsExclusionStrategy::DEFAULT_GROUP instead default group. #694 (Aliance)
- Improved Symfony 3.x compatibility #682 (goetas)
Closed issues:
- Deserializing XMLList with Namespaces not (always) working as intended #695
- Groups logic #693
- BC from 1.1.* to ^1.2 #643
- DoctrineProxySubscriber forces loading of the proxy even if custom handler exist #575
- ConditionalExpose/Exclude annotation #540
- Deprecated usage of ValidatorInterface #438
- Missing addData in XmlSerializerVisitor makes it impossible to add data in serializer.post_serialize event #235
- Support JSON PATCH for updating object graph #231
- Dynamic expose, aka 'fields' query param #195
1.5.0-RC1 release candidate
The 1.5.0 release is going to be one of the most important releases till now for the 1.x series of the JMS serializer.
The main feature included in the 1.5.0 release is the expression language exclusion policy implemented with #673.
Here a more detailed changelog:
Implemented enhancements:
- Implemented dynamic exclusion using symfony expression language #673 (goetas)
- added support for xml-attributes as discriminators #692 (twtinteractive)
- Prevent doctrine proxy loading for virtual types #684 (goetas)
Fixed bugs:
Merged pull requests:
- Added doc reference for disabling discriminator #699 (dragosprotung)
- Use GroupsExclusionStrategy::DEFAULT_GROUP instead default group. #694 (Aliance)
- Improved Symfony 3.x compatibility #682 (goetas)
Closed issues:
- Deserializing XMLList with Namespaces not (always) working as intended #695
- Groups logic #693
- BC from 1.1.* to ^1.2 #643
- DoctrineProxySubscriber forces loading of the proxy even if custom handler exist #575
- ConditionalExpose/Exclude annotation #540
- Deprecated usage of ValidatorInterface #438
- Missing addData in XmlSerializerVisitor makes it impossible to add data in serializer.post_serialize event #235
- Support JSON PATCH for updating object graph #231
- Dynamic expose, aka 'fields' query param #195
A stable 1.5.0 will be tagged in 3 weeks
2016-11-02
v1.4.1 (2016-11-02)
Fixed #668 that creates some issues with nelmio apidoc and in general when trying to use group based exclusion strategies without a properly initialized context
v1.4.0 (2016-10-31)
- Xml setters ignored when deserializing #665 (goetas)
- Document the implied 'Default' property group when no group is specified #661 (akoebbe)
- Nullable array inconsistency #660 (goetas)
- Allow discriminator map in the middle of the hierarchy when deserializing #659 (goetas)
- Fixed PHP 7.0.11 BC break (or bugfix) #658 (goetas)
- Handle both int and integer #657 (Aliance)
- Renamed replaceData to setData #653 (goetas)
- add required sqlite extension for developing #649 (scasei)
- Run serialization benchmarks in the build process #647 (goetas)
- Alcalyn feature default serializer context #645 (goetas)
- Add format output option #640 (AyrtonRicardo)
- Remove deprecated FileCacheReader for doctrine annotations #634 (goetas)
- Added tests to ensure SerializeNull policy #633 (goetas)
- Fix inheritance of discriminators on Doctrine entities #382 (xoob)
- Allow Post Serialize Event to overwrite existing data #273 (jockri)
Fixed BC break introduced with 1.3.0
Fixed BC break introduced with #317 and released as 1.3.0
- reported on #317 (comment)
- reported on FriendsOfSymfony/FOSRestBundle#1557
- fixed by #630