Skip to content

Releases: schmittjoh/serializer

v1.11.0

04 Feb 18:30
e7c5347
Compare
Choose a tag to compare

Implemented enhancements:

Fixed bugs:

  • Exception thrown for non-existant accessor to an excluded property #862
  • Support non-namespaced lists in namespaced XML #851 (bertterheide)

Closed issues:

  • Context Group not working #865
  • Not all virtual properties are serialized #864
  • DeserializedName #857
  • Annotation does not exist, or could not be auto-loaded. #855
  • [Question] Serialization of primitive types #853
  • Empty list when deserializing namespaced XML with children that are not namespaced #850
  • XmlList(skipWhenEmpty=true) or @SkipWhenEmpty() does not work #847
  • DateHandler Timezone ignored on deserialization #457

Merged pull requests:

  • Drop HHVM support #869 (goetas)
  • Allow excluded private properties to not have a getter acc… #863 (0mars)
  • Solve php 7.2 deprecations #860 (goetas)
  • Fixed issue where timezone is lost when creating DateTime from unix timestamp #835 (goetas)

v1.10.0 (support PSR-11 compatible DI containers)

30 Nov 18:24
62c7ff6
Compare
Choose a tag to compare

1.10.0

Implemented enhancements:

  • support PSR-11 compatible DI containers #844 (xabbuh)

Closed issues:

  • Serialize using jsonSerialize() if object implements JsonSerializable #846
  • ExclusionStrategy backward compatibility break #843
  • @MaxDepth jms/serializer-bundle 2.2 #842

v1.9.2

22 Nov 16:46
995270c
Compare
Choose a tag to compare

Fixed bugs:

Closed issues:

  • DateTime format documentation #836
  • Deserialization not working with camelCase #831

Merged pull requests:

  • Fix documentation syntax errors on available types #839 (andy-morgan)
  • Improve documentation about default DateTime format #838 (enumag)

v1.9.1

27 Oct 07:17
e708d6e
Compare
Choose a tag to compare

Fixed bugs:

  • Dynamic exclusion strategy, Variable "object" is not valid #826

Closed issues:

  • Allow DateTime or Null #779

Merged pull requests:

  • Alow to use "object" var in expressions when deserializing #827 (goetas)

v1.9.0

28 Sep 15:20
f4683f4
Compare
Choose a tag to compare

This release comes with few bugfixes and minor other change to allow a more smooth development when dealing with environment without translators, xml edge cases, added bool alias for boolean types, ability to exclude the annotation driver ad many other.

Implemented enhancements:

  • Doctrine LazyCriteriaCollection not supported #814
  • Do not require the translator #824 (goetas)
  • Added mapping for guid type #802 (develth)
  • Added translation domain to FormErrorHandler #783 (prosalov)

Fixed bugs:

  • Serializer fails if there is no AnnotationDriver in the DriverChain instance #815
  • Evaluate XML xsi:nil="1" to null #799 (Bouwdie)

Closed issues:

  • Empty array removed from XML serialization #816
  • XML Discriminator tags don't work in YAML metadata #811
  • Launching phpunit does not execute any test #809
  • Add "bool" Annotation/Type #807
  • Add support for overriding default annotation driver configuration #804
  • Add description to PropertyMetadata? #800

Merged pull requests:

BC Break Fix

13 Jul 11:47
Compare
Choose a tag to compare

This reverts the directory changes as they caused a BC in some dependent libraries.

1.8.0 stable release

12 Jul 06:08
020f2a2
Compare
Choose a tag to compare

The 1.8.0 release comes with some improvements regarding null handling (thanks to @Bouwdie), DateTime parsing when deserializing, migration to PSR-4 namespaces, and few other improvements. Some bugs have also been fixed regarding doctrine proxies and array inlining.

Implemented enhancements:

  • Detect XML xsi:nil="true" to null when deserializing #790 (goetas)
  • Added support for a third deserialize parameter for the DateTime type #788 (bobvandevijver)
  • Added trim to xml metadata reader for groups parameter, and added support for groups element #781 (mrosiu)
  • Add propertyMetdata to dynamic expression variables #778 (goetas)
  • Fix xml deserialization when xsi:nil="true" is set #771 (Bouwdie)

Fixed bugs:

Closed issues:

  • inline array with type array<K, V> not serialized #784
  • [2.0] [Feature-request] Provide InitializedObjectConstructor as default #775
  • Allow access to PropertyMetadata in Dynamic Exclusion strategies #772
  • Overriding groups at runtime does not work, or? #767
  • DateTime format and control characters #94

Merged pull requests:

1.7.1 - Doctrine proxies and type handlers bugfix

15 May 08:40
4fad8bb
Compare
Choose a tag to compare

The 1.7.1 release fixes an important bug introduced in 1.7.0 (#765 [custom handlers on virtual types were not triggered if the underlying object was a doctrine proxy] ).

Suggested immediate update to everybody using the serializer in combination with doctrine.

Fixed bugs:

  • Custom type handlers does not work with doctrine proxies anymore #765
  • Doctrine listener should not change the type on proxies with virtual type #768 (goetas)

Closed issues:

  • Missing bool type in graphNavigator.php in method accept() #764
  • The sub-class "Proxy-Class" is not listed in the discriminator of the base class "DiscriminatorClass" #459
  • Configure whether serializing empty array. #124

1.7.0

10 May 09:45
b5abc84
Compare
Choose a tag to compare

1.7.0 stable release

The 1.7.0 release contains a big set of improvements, especially when talking about:

  • consistency when dealing with arrays, hashes/maps (#728) and stdClass instances (#749, #730).
    This was a long standing group if inconsistencies and unexpected behaviors that now are finally solved.
    If you had issues with JSON arrays/hashes/maps serialization, and you were relying on internal/undocumented behaviors (example: extending JsonSerializationVisitor and overriding visitArray), recommended a more careful update process;
  • various fixes regarding Doctrine proxies (#750) and Doctrine objects instantiation (#751).
    This was a long standing feature request to configure the doctrine object constructor behavior when a requested entity is not found;

Details

Implemented enhancements:

  • Allow to configure the doctrine object constructor #751 (goetas)
  • Trigger doctrine events on doctrine proxies #750 (goetas)
  • Added stdClass serialization handler #749 (goetas)
  • Allow to typehint for the type (array/hash) of the root item to be serialized #728 (goetas)

Fixed bugs:

  • Array gets serialized as object, not as array, depending on order. #709
  • Doctrine Proxies and serializer.pre_serialize #666
  • Fix stdClass inconsistencies when serializing to JSON #730 (goetas)
  • Allow to typehint for the type \(array/hash\) of the root item to be serialized #728 (goetas)
  • Allow to skip "empty serialization result" when serializing #757 (goetas)

Closed issues:

  • Error deserializing a map of (nullable) objects #762
  • Add data using setData produces hashes instead of arrays #761
  • Is it possible to use @XmlNamespace & @XmlRoot in a class at same time ? #759
  • Serializes FOS:User datas with ExclusionPolicy("all") #599
  • Array serialized as JSON object #706
  • From old issue #290 #670
  • Form validation error response - field names not converted from camel case to underscore #587
  • Ability to getGroups on Context #554
  • SerializedName misleading usage and constructor issue #548
  • Discriminator should support xmlAttribute #547
  • Public method accessor is required for excluded/not exposed properties #519
  • Entity changed via preserialize and wrongly persisted #509
  • XML deserialization properties null when using default namespace #504
  • AccessorOrder is ignored #501
  • Deserialization of sub entites with non existing id #492
  • [Question] Handler/Converter for specific field #476
  • getClassName regex may incorrectly retrieve a false class name from comments above the class. #460
  • The sub-class "Proxy-Class" is not listed in the discriminator of the base class "DiscriminatorClass" #459
  • Multiple types for property? #445
  • Allow non-qualified XML serialization when XML namespaces are part of the metadata #413
  • Discriminator field name #412
  • Serializing to and deserializing from DateTime is inconsistent #394
  • ManyToOne and OneToMany Serialization Groups #387
  • Static SubscribingHandlerInterface::getSubscribingMethod #380
  • User defined ordering function #379
  • serialized_name for discriminator #372
  • Serializing object with empty array #350
  • VirtualProperty(s) are ignored with AccessorOrder #349
  • When setting a group of serialization, the inheritance doesn't work anymore #328
  • Serialization of empty object #323
  • "Can't pop from an empty datastructure" error when multiple serializer calls #319
  • virtual_properties cannot be excluded with groups #291
  • Integer serialized as String using VirtualProperty #289
  • SimpleObjectProxy is not implement abstract methods of Proxy class #287
  • Serializing array that have one of the element or member of an element an empty object #277
  • Serialization with groups return json object instead array #267
  • The purpose of "Force JSON output to "{}" instead of "[]" if it contains either no properties or all properties are null" #248
  • Json array serialisation #242
  • Ignoring "Assert" in output doc if excluded #241
  • Alphabetical accessor order doesn't respect SerializedName overrides #240
  • Request Annotation for Array Data #234
  • Allow @var instead of @type when deserializing #233
  • Strange issue with groups exclusion strategy #230
  • Warning when deserializing removed entity #216
  • Where in the JMS code does the navigator call VisitProperty method for visitor #207
  • Property of the type array is not in alphabetic order after serialization #196
  • Magic and inconsistencies in array serialization #191
  • PreSerialization Event not handled if the value is not object #162
  • Hierarchical object serialization does not appear to inherit metadata from ancestors for metadata defined in XML #151
  • When using MaxDepth, Serialization of an array entitiy is not working #132
  • Switch to change default naming strategy #128
  • Throw exceptions on invalid input #112
  • Recursion detected error when serialization groups are in use #96
  • Allow serialization groups to be accessible within event subscriber callbacks. #84
  • Allow Constructed Object to be Passed to Deserialize #79
  • JSON recursion when first object in root list is empty #61
  • Can't serialize an array with an empty object #59

Merged pull requests:

  • Added runtime twig extension support (significant performance improvements) #747 (goetas)

1.7.0 2nd release candidate

05 May 15:33
d88eedf
Compare
Choose a tag to compare
Pre-release

Fixed bugs:

  • Allow to skip "empty serialization result" when serializing #757 (goetas)

Closed issues:

  • Is it possible to use @XmlNamespace & @XmlRoot in a class at same time ? #759
  • Serializes FOS:User datas with ExclusionPolicy("all") #599