4.9 KiB
CHANGELOG
2.2.0
-
allow
3.xreleases of thephp-xapi/modelpackage too -
dropped support for HHVM
2.1.0
- allow
2.xreleases of thephp-xapi/modelpackage too
2.0.0
Raw attachment content data must be passed in order to make it possible for
serializer implementations to populate the $content attribute of Attachment
objects during deserialization.
In order to achieve this an optional $attachments argument has been added
to the StatementResultSerializerInterface::deserializeStatementResult(),
and the deserializeStatement() and deserializeStatements() methods of
the StatementSerializerInterface.
When being passed, this argument must be an array mapping SHA-2 hashes to an
array which in turn maps the type and content keys to the attachment's
content type and raw content data respectively.
1.0.0
This is the first stable release of the Experience API serialization API.
In terms of functions, there are no differences to the 0.4.0 release, but
required versions of the php-xapi packages each have been bumped to ^1.0.
0.4.0
-
The serializer implementation has been separated from its API definition. This package now no longer ships with an implementation.
The Symfony Serializer component integration has been moved to the separate php-xapi/symfony-serializer package.
A default implementation of the
SerializerRegistryInterfaceis still part of thephp-xapi/serializerpackage though.This package ships with the following interfaces that must be implemented by packages that want to provide the xAPI serialization functionality:
ActorSerializerInterfaceDocumentDataSerializerInterfaceStatementResultSerializerInterfaceStatementSerializerInterfaceStatementFactoryInterface
Implementors of the API provided by this package are advised to add the
php-xapi/serializer-implementationpackage to theprovidesection of theircomposer.jsonfile.The
Testssubnamespace of this package contains a set of base abstract PHPUnit test classes integrators can use to make sure that their implementation adheres to the API specified by thephp-xapi/serializerpackage. -
Added a
SerializerFactoryInterfacethat abstracts the creation of serializer instances. -
The
SerializerRegistryclass is now final. If you need custom behavior inside the serializer registry, create your own implementation of theSerializerRegistryInterface.
0.3.0
-
Normalization and denormalization support for
IRIandIRLinstances where they have been introduced in thephp-xapi/modelpackage. -
Fixed that context attributes are no longer ignored when statements are normalized/denormalized.
-
Added support for normalizing/denormalizing activity definition extensions.
-
Added support for normalizing/denormalizing statement activity interactions.
-
Added support for normalizing/denormalizing
LanguageMapinstances which is now the data type for the$displayproperty of theVerbclass as well as for the$nameand$descriptionproperties of theDefinitionclass. -
Updated how statement ids are normalized/denormalized to reflect the introduction of the
StatementIdvalue object in thephp-xapi/modelpackage. -
Added support for normalizing and denormalizing statement contexts, context activities, and extensions.
-
Properly denormalize statement objects (activities, agents, groups, statement references, and sub statements).
0.2.2
- Added support for (de)serializing a statement's
timestampandstoredproperties.
0.2.1
-
The object type is now optional. When the
objectTypekey is omitted while an object is deserialized, it is to be assumed that the type of the denormalized object is activity. -
Empty PHP arrays are now dumped as JSON objects instead of empty lists.
-
fixed the key of the mbox SHA1 sum property when denormalizing actors
-
fixed deserializing incomplete agent objects that are missing the required IRI (the
ActorNormalizerwil now throw an exception) -
add a
FilterNullValueNormalizerthat preventsnullvalues from being serialized -
empty group member lists are not normalized, but the property will be omitted
-
ignore nullable result properties when they are not set during normalization and denormalization
0.2.0
-
made the package compatible with version 0.2 of the
php-xapi/modelpackage -
replaced the JMS Serializer with the Symfony Serializer component
0.1.1
- restrict dependency versions to not pull in potentially BC breaking package versions
0.1.0
First release leveraging the JMS serializer library to convert xAPI model objects into JSON strings confirming to the xAPI specs and vice versa.
This package replaces the xabbuh/xapi-serializer package which is now deprecated
and should no longer be used.