- Require Wikibase DataModel 8.x or 9.x
- Raised minimum PHP version to 7.0 (^7.0)
- Moved (De)SerializerFactories into (De)Serializer Namespaces
- Apply ID prefix mapping in
SnakDeserializer, likeEntityIdValueParserdoes.
- Added compatibility with Wikibase DataModel 9.x
- Added compatibility with Wikibase DataModel 8.x
- Fixed
AliasGroupListDeserializerandTermListDeserializermisbehaving when confronted with language codes exclusively made of digits. - Fixed
SnakDeserializerpossibly accessing non-existing array elements. - Improved documentation of
SerializerFactory::newEntitySerializeras well asDeserializerFactory::newEntityDeserializer. - Added compatibility with Serialization 4.x
- Improved forward-compatibility with PHPUnit 6
- Note: The
SnakDeserializerconstructor changed, but since it's declared package private, this shouldn't affect anyone.
- Added compatibility with DataValues Number 0.9
- Removed MediaWiki integration files
- Added compatibility with DataValues Geo 2.x
- Deprecated
SerializerFactoryoptionsOPTION_SERIALIZE_MAIN_SNAKS_WITHOUT_HASH,OPTION_SERIALIZE_QUALIFIER_SNAKS_WITHOUT_HASHandOPTION_SERIALIZE_REFERENCE_SNAKS_WITHOUT_HASH. - Added
SerializerFactory::OPTION_SERIALIZE_SNAKS_WITHOUT_HASH.
- Added compatibility with Wikibase DataModel 7.x
- Improved performance of
StatementDeserializeras well as other deserializers - Improved type safety throughout the code
- Dropped support for PHP 5.3 and PHP 5.4
- Added compatibility with Wikibase DataModel 6.x
- Added
newItemSerializerandnewPropertySerializertoSerializerFactory - Added
newItemDeserializerandnewPropertyDeserializertoDeserializerFactory - Added compatibility with Wikibase DataModel 5.x
- Added compatibility with DataValues Common 0.3
- Dropped dependency on Wikibase DataModel Services
- Removed
newClaimSerializer,newClaimsSerializerandnewSnaksSerializerfromSerializerFactory - Removed
newClaimDeserializer,newClaimsDeserializerandnewSnaksDeserializerfromDeserializerFactory
- Revert of breaking changes, will be added in 2.0 again
- Dropped dependency on Wikibase DataModel Services
- Added compatibility with Wikibase DataModel 4.x
- Removed compatibility with Wikibase DataModel 3.x
- Added
SerializerFactoryoptionOPTION_SERIALIZE_MAIN_SNAKS_WITHOUT_HASH - Added
SerializerFactoryoptionOPTION_SERIALIZE_QUALIFIER_SNAKS_WITHOUT_HASH - Added
SerializerFactoryoptionOPTION_SERIALIZE_REFERENCE_SNAKS_WITHOUT_HASH - Added
$serializeSnaksWithHashparameter tonewSnakListSerializer, the default is b/c - Added
$serializeWithHashparameter tonewSnakSerializer, the default is b/c - Added
$serializeWithHashparameter tonewTypedSnakSerializer, the default is b/c - Added support for deserializing ungrouped SnakLists and StatementLists
- Added
newAliasGroupSerializertoSerializerFactory
- Added
newTermSerializertoSerializerFactory - Added
newTermListSerializertoSerializerFactory - Added
newAliasGroupListSerializertoSerializerFactory - Added
newTermDeserializertoDeserializerFactory - Added
newTermListDeserializertoDeserializerFactory - Added
newAliasGroupListDeserializertoDeserializerFactory - Deprecated
SerializerFactory::newClaimsSerializerin favour ofSerializerFactory::newStatementListSerializer - Deprecated
DeserializerFactory::newClaimsDeserializerin favour ofDeserializerFactory::newStatementListDeserializer
- Added compatibility with Wikibase DataModel 3.x
- Removed compatibility with Wikibase DataModel 2.x
- Renamed
SerializerFactory::newClaimSerializertoSerializerFactory::newStatementSerializer, leaving a b/c alias - Renamed
SerializerFactory::newSnaksSerializertoSerializerFactory::newSnakListSerializer, leaving a b/c alias - Renamed
DeserializerFactory::newClaimDeserializertoDeserializerFactory::newStatementDeserializer, leaving a b/c alias - Renamed
DeserializerFactory::newSnaksDeserializertoDeserializerFactory::newSnakListDeserializer, leaving a b/c alias - Added
SerializerFactory::newStatementListSerializer - Added
DeserializerFactory::newStatementListDeserializer - Added support for showing the component version when loaded via MediaWiki
FingerprintSerializernow supports serializingAliasGroupFallbacks andTermFallbacksEntityDeserializernow fails if the given serialization contains a term or alias that was either the result of a fallback or transliteration- Added
newTypedSnakSerializertoSerializerFactory
- Compatibility with DataModel 2.x added
- Support statements on properties
- Add option to serialize maps as objects instead of arrays so as to be able to differentiate empty maps from empty lists
- Use UnDeserializable error from serialization in SnakDeserializer
- Compatibility with DataModel 1.x was added
- DataModel 1.x is now required
- Hashes are now ignored by the SnakDeserializer
- Compatibility with Wikibase DataModel 1.x was improved
- Fixed issue where invalid snaks-order elements in reference serialization caused an error rather than a deserialization exception
- Hashes are now ignored by the ReferenceDeserializer
- The Deserializer for snaks now constructs UnDeserializableValue objects for invalid data values
- Usage of DataModel 0.7.x rather than 0.6.x.
- Usage of Serialization ~3.1 rather than ~2.1.
- Snaks now always have a 'hash' element in their serialization
- Added
snaks-ordersupport toReferenceSerializerandReferenceDeserializer - Added
qualifiers-ordersupport toClaimDeserializer - Added
TypedSnakSerializer - Added hash validation for references and snaks
- Added additional tests to ensure old serializations can still be deserialized
Initial release with these features:
- Serializers for the main Wikibase DataModel (0.6) objects
- Deserializers for the main Wikibase DataModel (0.6) objects