Change Log
1.7.1 (2017-05-15)
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 (2017-05-10)
Implemented enhancements:
- Skip doctrine proxy initializations when exclusion strategy will exclude it #760 (goetas)
Closed issues:
- Error deserializing a map of (nullable) objects #762
- Add data using setData produces hashes instead of arrays #761
Implemented enhancements:
- Make sure input is always a string #755 (goetas)
- Allow namespaced XML element discriminator #753 (goetas)
Fixed bugs:
- Allow to skip "empty serialization result" when serializing #757 (goetas)
Closed issues:
Merged pull requests:
- Add a quick reference for how to enable expression evaluator #758 (chasen)
- Allow for setExpressionEvaluator usage to be chainable #756 (chasen)
- Fix typo in annotation docs #754 (JustBlackBird)
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)
Closed issues:
- 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
- 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.6.2 (2017-04-17)
Fixed bugs:
1.6.1 (2017-04-12)
Fixed bugs:
- Do not output the XML node when the object will be emtpy #744 (goetas)
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
Merged pull requests:
1.6.0 (2017-03-24)
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
Implemented enhancements:
- Add symfony expression in exclusions/expositions #406
- check that cache directory was not created before throwing exception #729 (mente)
- #720 - Adding support for DateInterval deserialization #721 (c0ntax)
- Expression language based virtual properties #708 (goetas)
- Xml namespaces improvements #644 (goetas)
Fixed bugs:
- Serialize correctly empty intervals according to ISO-8601 #722 (goetas)
Closed issues:
- 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 (2017-02-14)
Closed issues:
- Serialized DateTime instances are not valid ISO-8601 #713
- Impossible to use discriminator field. Why we need StaticPropertyMetadata ? #705
- Deserializing XMLList with Namespaces not (always) working as intended #695
Implemented enhancements:
- added support for xml-attributes as discriminators #692 (twtinteractive)
- Added clearing previous libxml errors #688 (zerkms)
- Prevent doctrine proxy loading for virtual types #684 (goetas)
- Implemented dynamic exclusion using symfony expression language #673 (goetas)
Fixed bugs:
- Deserializing XMLList with Namespaces not (always) working as intended #697 (goetas)
Closed issues:
- 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
Merged pull requests:
1.4.2 (2016-11-13)
Fixed bugs:
- Warning: JMS\Serializer\XmlDeserializationVisitor::visitArray(): Node no longer exists #674
- Fixed xml arrays with namespaced entry triggers error #675 (goetas)
Closed issues:
- Max depth produces array of nulls #671
1.4.1 (2016-11-02)
Fixed bugs:
- Groups context might be not initialized #669 (goetas)
Closed issues:
- Warning: Invalid argument supplied for foreach() on getCurrentPath method #668
1.4.0 (2016-10-31)
Implemented enhancements:
- Document the implied 'Default' property group when no group is specified #661 (akoebbe)
- Allow discriminator map in the middle of the hierarchy when deserializing #659 (goetas)
- Handle both int and integer #657 (Aliance)
Fixed bugs:
- Deserialization fails when discriminator base class extends another class #182
- Xml setters ignored when deserializing #665 (goetas)
Closed issues:
- Move
FormErrorHandler
to the bundle #664
- Not compatible with Symfony 3's Controller::json() #663
- Class name not reflecting in serialized json #662
- YML virtual_properties no group exlcusion #656
- [RFC] Introduce normalizer\denormalizer interface #646
- Plain arrays are serialized (normalized) as "objects", ignoring serializeNull #641
- serializer doesn't serialize traits #638
- Add metadata informations #637
- Unexpected results when serializing arrays containing null value elements #593
- Allow to set default serialization context when building serializer #528
- Enable Sourcegraph #455
- Use different accessor for each group #420
- GenericSerializationVisitor and shouldSerializeNull #360
- Specify group along with MaxDepth #150
- Allow Post Serialize Event to overwrite existing data #129
- Warning: array_key_exists() expects parameter 2 to be array, string given #70
Merged pull requests:
- Nullable array inconsistency #660 (goetas)
- Fixed PHP 7.0.11 BC break (or bugfix) #658 (goetas)
- 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)
1.3.1 (2016-08-23)
Closed issues:
- [Idea] Inline name #629
- indexBy property doesn't work since 1.2.0 #618
- Composer deps issue #494
- PHP 7 compatability issue #478
- Add new tag (upgrade packagist) #461
- Custom Type Handler for String Values #384
- serializer ignores properties added by traits #313
- Skip an element during Xml deserialization process #229
- Using serializer for JSON serialising #223
- No way to serialize binary data with a custom type #202
- Automatic mapping of properties #200
- Maybe the serializer should also allow the legal literals {1, 0} for booleans #198
- Customize how Booleans are serialized #180
- Problem with deserialize related entity #123
- serialized_name does not work in yaml #118
Merged pull requests:
- Revert "Default
$serializeNull
to false" #630 (goetas)
1.3.0 (2016-08-17)
Closed issues:
- problems with xml namespaces after update #621
- Trying to decorate a member to ArrayCollection but gets an error when deserilizing because composer didn't download the class from doctrine. #596
- Missing doctrine/common requirement ? #517
- PHP Fatal error: Using $this when not in object context in JMS/Serializer/Serializer.php on line 99 #441
- custom collection handler #415
- Exclude annotation not preventing attempt to find public methods when using AccessType #367
- serializer.pre_serialize event only thrown on objects/classes #337
- Installing through composer gets "Segmentation fault" #308
- Erroneous data format for unserializing... #283
- DoctrineObjectConstructor should skip empty identifier field #193
Merged pull requests:
1.2.0 (2016-08-03)
Implemented enhancements:
Fixed bugs:
- Fix xml-attribute-map for the xml driver #595 (romantomchak)
- Fix warning array_key_exists in deserialization. #398 (leonnleite)
- #367 Exclude annotation not preventing attempt to find public methods when using AccessType #397 (Strate)
Closed issues:
- XML serialisation performance vs. SimpleXML? #606
- Undefined Offset 21 - PropertyMetadata (master) #581
- Invalid null serialization in arrays #571
- List Polymorphic with XML Deserialization #568
- Serialize null values as empty string #566
- Type mismatch should throw an exception instead of coercing when deserializing JSON #561
- Serialize to array #518
- AnnotationDriver Exception on Missing Setter/Getter even on @Exclude'd Properties #516
- Arrays are serialized as objects like {"0":... } when data contains empty objects #488
- Tag new release #465
- Forcing no scientific notation for larg number, type double #405
- PHP < 5.3.9 BC break #383
- Ignoring a tag when deserializing #352
Merged pull requests:
1.1.0 (2015-10-27)
Closed issues:
- Possible to set xsi:schemalocation? #505
- Travis needs a renewed token to be able to set the status #495
- Serialize a many-to-many relation #474
- The document type "..." is not allowed #427
- Yml serializer don't serialize empty arrays #183
Merged pull requests:
1.0.0 (2015-06-16)
Closed issues:
- Unrecognized 4 parts namespace #449
- Groups is ignored #440
- Property FelDev\CoreBundle\Entity\Persona::$apellido does not exist #432
- Erroneous data format for unserializing #430
- Deserialize JSON into existing Doctrine entities and empty strings are ignored #417
- Failing to deserealize JSON string #402
- Empty results serializing virtual_properties #400
- API stable 1.0.0 release in sight? #395
- Is this project maintained still? #361
- PreSerialize #339
- Change default
access\_type
globally #336
- Deserialization of XmlList does not support namespaces #332
- Recursion groups, serializing properties in entities #329
- The testsuite is broken #326
- Namespaces and serialize/deserialize process #303
- Exclusion of parent properties failing #282
- How to deserialize correctly an array of arbitrary values ? #280
- Try to identify getter/setter from an excluded property #278
- Bug Entity constructor not called #270
- Make it possible to escape special characters on serialization #265
- doctrine annotations without namespace #264
- php-collection constraint #257
- [Metadata] PHP warning only when unittesting #255
- Discriminator #220
Merged pull requests:
0.16.0 (2014-03-18)
Closed issues:
- best way to add root to json? #250
- Use Doctrine metadata #247
- Integration Points - run-time exclusion checking #239
- Using DoctrineTypeDriver to use Doctrine Anotations #232
Merged pull requests:
- Changed some constraint to allow latest versions #251 (stof)
- XML root element namespace support #246 (andreasferber)
- Added test for leading backslash in front of class name to TypeParserTest #245 (deralex)
- Allow to fetch data from has*() with public_method #243 (jaymecd)
- Improve yaml documentacion Fix #100 #221 (BraisGabin)
0.15.0 (2014-02-10)
Closed issues:
- Add trait support #228
- "array" type: Not working for arrays of DateTime objects #199
- Discriminator field filtered by exclusion strategy #189
- DateTime within an array (format get ignored) #140
- EntityNotFoundException using softDeletable #101
- Virtual property documentation xml & yaml #100
Merged pull requests:
0.14.0 (2013-12-04)
Implemented enhancements:
Closed issues:
- @HandlerCallback not inherited #181
- Conditional serialization #173
- Deserialize XML partially #167
- getter is not called when serializing Discriminator parent entity #156
- Deserialize DateTime from js Date.toJSON format fail #145
- Yaml driver for the parameter xml_attribute_map is broken #141
- XmlKeyValueStore annotation does not seem to deserialize properly #139
- Boolean conversion gone wrong #134
- Serialize to/from array? #133
- @XmlRoot annotation no longer working #131
- Skip an element based on a condition in a XmlList #121
Merged pull requests:
0.13.0 (2013-07-29)
Closed issues:
- Documentation on Exclusion Strategies has an error #122
- How access to the current serializing group in a subscriber ? #99
- DoctrineProxySubscriber not found #93
- Namespaces at root level #86
- Issues when requesting JSON or XML using Doctrine MongoDB ODM #85
- addGlobalIgnoredName not working #78
- serialize_null configuration #77
- Add json prefix to prevent script tag csrf attack #76
- Add support for replacing serialization object inside events #74
- Next stable version? #64
- Deserialize with object refs #62
Merged pull requests:
0.12.0 (2013-03-28)
Closed issues:
- Serialization profile/definition builder #68
- I want to configure the default exclution policy #65
- Mulit type property mapping #56
- AccessType("public_method"): Setters ignored when deserializing to non-standard XML properties #53
- Adding @Accessor with custom getter causes LogicException if Doctrine ManyToOneEntity #52
- Handler callback's does not get passed context #49
- PostSerialize callback causes data loss #46
- Empty Objects get serialized as "array()" #43
- Exclusion Policies aren't properly applied when "serializeNull" is "true" #42
- Accessor annotation ignored #40
- Support for multiple exclusion strategies #39
- srholt123@yahoo.com #35
- Could you tag a stable version? #34
- Default conversion of camelCase to underscores is counterintuitive #33
- Define the xml root when deserializing #18
Merged pull requests:
0.11.0 (2013-01-29)
Closed issues:
- Hooking into metadata directly... #17
- Serializing null values #14
- Strange caching-error #13
- handling of plain array #10
- Unsupported format doesn't throw exception anymore #8
Merged pull requests:
- Fix typo #32 (inanimatt)
- Fixed the serialization of pluralized form errors #31 (stof)
- Extract json specific logic from GenericSerializationVisitor #29 (adrienbrault)
- [Serializer] Misc cleanup #27 (vicb)
- [Builder] Add ability to include if metadata #25 (vicb)
- Fix DateTimeZone issue when using the DateTime type #23 (colinmorelli)
- Wrong exception message for parsing datetime #21 (nickelc)
- Fixed typo in doc/reference/annotations.rst #16 (iambrosi)
- Typecast when serializing primitive types #15 (baldurrensch)
- add check and helpful exception message on inconsistent type situation #12 (dbu)
- Dispatch pre-serialization event before handling data to have ability change type in listener #7 (megazoll)
- Fix tests running in different environments #6 (megazoll)
- Add DateInterval serialization to DateHandler formerly DateTimeHandler #5 (rpg600)
- WIP Navigator context #3 (adrienbrault)
- Update src/JMS/Serializer/Construction/DoctrineObjectConstructor.php #2 (robocoder)
- Filter out non-identifiers from $data before calling find() #1 (robocoder)
* This Change Log was automatically generated by github_changelog_generator