Releases: sabre-io/xml
Releases · sabre-io/xml
1.4.0
- Any array thrown into the serializer with numeric keys is now simply
traversed and each individual item is serialized. This fixes an issue
related to serializing value objects with array children. - When serializing value objects, properties that have a null value or an
empty array are now skipped. We believe this to be the saner default, but
does constitute a BC break for those depending on this. - Serializing array properties in value objects was broken.
1.3.0
- The
Service
class adds a newmapValueObject
method which provides basic
capabilities to map between ValueObjects and XML. - #61: You can now specify serializers for specific classes, allowing you
separate the object you want to serialize from the serializer. This uses the
$classMap
property which is defined on both theService
andWriter
. - It's now possible to pass an array of possible root elements to
Sabre\Xml\Service::expect()
. - Moved some parsing logic to
Reader::getDeserializerForElementName()
,
so people with more advanced use-cases can implement their own logic there. - #63: When serializing elements using arrays, the
value
key in the array is
now optional. - #62: Added a
keyValue
deserializer function. This can be used instead of
theElement\KeyValue
class and is a lot more flexible. (@staabm) - Also added an
enum
deserializer function to replace
Element\Elements
. - Using an empty string for a namespace prefix now has the same effect as
null
.
1.2.0
1.1.0
- #44, #45: Catching broken and invalid XML better and throwing
Sabre\Xml\LibXMLException
whenever we encounter errors. (@stefanmajoor,
@DaanBiesterbos)
1.0.0
0.4.3
0.4.2
0.4.1
0.4.0
- Added
Sabre\Xml\Service
. This is intended as a simple way to centrally
configure xml applications and easily parse/write things from there. #35, #38. - Renamed 'baseUri' to 'contextUri' everywhere.
- #36: Added a few convenience constants to
lib/constants.php
. Sabre\Xml\Util::parseClarkNotation
is now in theSabre\Xml\Service
class.