9.8 KiB
CHANGELOG
3.1.0
- Introduce a new
Personclass. - Constructing a
Stateobject with an instance of any child class ofActorother thanAgentas the second argument is deprecated. Starting with4.0, only instances ofAgentwill be accepted. - The
State::getActor()method is deprecated and will be removed in4.0. UseState::getAgent()instead. - Added a
StateDocumentsFilterclass that allows to draft filters forStateDocumentobjects.
3.0.0
- The
Statement::getTimestamp()method has been removed. UseStatement::getCreated()instead. - The
Statement::withTimestamp()method has been removed. UseStatement::withCreated()instead. - The
SubStatement::getTimestamp()method has been removed. UseSubStatement::getCreated()instead. - The
SubStatement::withTimestamp()method has been removed. UseSubStatement::withCreated()instead. - Dropped support for PHP < 7.1 as well as HHVM.
- The
Objectclass was renamed toStatementObjectfor compatibility with PHP 7.2.
2.2.0
- Introduce a new
Personclass. - Constructing a
Stateobject with an instance of any child class ofActorother thanAgentas the second argument is deprecated. Starting with4.0, only instances ofAgentwill be accepted. - The
State::getActor()method is deprecated and will be removed in4.0. UseState::getAgent()instead. - Added a
StateDocumentsFilterclass that allows to draft filters forStateDocumentobjects.
2.1.0
- The
Statement::getTimestamp()method is deprecated and will be removed in 3.0. UseStatement::getCreated()instead. - The
Statement::withTimestamp()method is deprecated and will be removed in 3.0. UseStatement::withCreated()instead. - The
SubStatement::getTimestamp()method is deprecated and will be removed in 3.0. UseSubStatement::getCreated()instead. - The
SubStatement::withTimestamp()method is deprecated and will be removed in 3.0. UseSubStatement::withCreated()instead.
2.0.1
- Added missing
$versionattribute to theStatementclass which defaults tonull.
2.0.0
- Introducing a new
Uuidclass that supports bothramsey/uuid2.x and 3.x. Applications and packages using this library should not longer refer to theUuidclass from theramsey/uuidpackage, but should always use theUuidclass from the this package instead. - The type of the
StatemendId::$idproperty has been changed from an instance ofRhumsaa\Uuid\Uuidto an instance of the addedUuidclass.
1.2.0
- The
Statement::getTimestamp()method is deprecated and will be removed in 3.0. UseStatement::getCreated()instead. - The
Statement::withTimestamp()method is deprecated and will be removed in 3.0. UseStatement::withCreated()instead. - The
SubStatement::getTimestamp()method is deprecated and will be removed in 3.0. UseSubStatement::getCreated()instead. - The
SubStatement::withTimestamp()method is deprecated and will be removed in 3.0. UseSubStatement::withCreated()instead. - Introduce a new
Personclass. - Constructing a
Stateobject with an instance of any child class ofActorother thanAgentas the second argument is deprecated. Starting with4.0, only instances ofAgentwill be accepted. - The
State::getActor()method is deprecated and will be removed in4.0. UseState::getAgent()instead. - Added a
StateDocumentsFilterclass that allows to draft filters forStateDocumentobjects.
1.1.1
- Added missing
$versionattribute to theStatementclass which defaults tonull.
1.1.0
-
The
StatementsFilter::format(),StatementsFilter::includeAttachments(), andStatementsFilter::excludeAttachments()methods are deprecated and will be removed in 2.0. -
Added a
$contentattribute to theAttachmentclass to make it possible to attach the raw content to an attachment.
1.0.1
-
Added missing
$timestampand$attachmentsproperties to theSubStatementclass. -
Fixed comparing scores where some values are integers instead of floats.
1.0.0
This is the first stable release of the 1.x series. All objects that are part of the 1.0.1 Experience API spec have been implemented and the current API is considered to be stable.
In terms of existing classes and methods, there is no difference to the 0.5 release series.
0.5.1
- Fixed the handling of
IRIinstances (forVerb::$idandActivity::$id) inStatementsFilterto only include the IRI's string value in the generated filter.
0.5.0
-
The type of the following properties has been changed from
stringto instances of the newIRIclass:Activity::$idAttachment::$usageTypeDefinition::$typeInverseFunctionalIdentifier::$mboxVerb::$id
Type hints of respective methods have been updated accordingly.
-
The type of the following properties has been changed from
stringto instances of the newIRLclass:Account::$homePageAttachment::$fileUrlDefinition::$moreInfoStatementResult::$moreUrlPath
Type hints of respective methods have been updated accordingly.
-
Fixed how context attributes of statements are dealt with in
Statement::equals()(previously, they were completely ignored). -
Fixed handling
nullvalues for statement ids insideStatement::equals(). Previously,StatementId::equals()might have been called even if a statement's identifier was not defined. -
Added an
Attachmentclass to store statement attachments. -
Fixed some edge cases in
Context::equals()where statement references, teams, and extensions would not have been compared properly. -
Added missing extensions to activity definitions.
-
Added
with*()methods for the$name,$description,$type, and$moreInfoproperties of theDefinitionclass and its subclasses to ease the creation of newDefinitionobjects based on existing instances. -
Added new classes to model user interaction activity definitions (all extending an abstract
InteractionDefinitionclass which in turn is a child class of the already existingDefinitionclass):ChoiceInteractionDefinitionFillInInteractionDefinitionLikertInteractionDefinitionLongFillInInteractionDefinitionMatchingInteractionDefinitionNumericInteractionDefinitionOtherInteractionDefinitionPerformanceInteractionDefinitionSequencingInteractionDefinitionTrueFalseInteractionDefinition
Interaction components which are part of some of the new definition classes will be handled by
InteractionComponentinstances. -
Added a
LanguageMapvalue object class to model the$displayproperty ofVerbinstances as well as the$nameand$descriptionproperties of theDefinitionclass (all these properties have been plain PHP arrays before). -
Added a value object for statement ids.
-
The constructor of the
SubStatementclass now throws an exception when aSubStatementinstance is passed as the$objectargument to comply with the Experience API spec which does not allow to nest sub statements. -
Removed the
$idproperty from theSubStatementclass as well as thegetStatementReference()andgetVoidStatement()methods which relied on the existence of an id as a sub statement must not have an id according to the xAPI spec. -
added a
$contextattribute toSubStatementinstances -
added
equals()method to theResultmodel class -
added a
StatementFactoryto ease the creation of complex xAPI statements -
Added
with*()methods toResult,Score,Statement,SubStatementthat allow the creation of new model objects based on existing instances. -
added
Context,ContextActivities, andExtensionsclasses that represent statement contexts, their context's activities, and statement extensions respectively
0.4.1
- also compare timestamps when performing statement equality checks
0.4.0
-
fixed some edge cases in the
equals()methods of theDefinition,Result, andVerbclasses -
Made
Objecta parent class of theActorclass to reflect the fact that actors can also be objects in xAPI statements. -
The argument type of the
equals()method in theActorbase class was changed fromActortoObjectto be compatible with the same method from the parentObjectclass.
0.3.0
-
made sure that boolean statements filter parameters are passed as the strings
'true'and'false' -
added missing return statements to some methods of the
StatementsFilterclass to ensure the fluent interface -
changed the default value of the
displayproperty of theVerbclass tonull(was the empty array before) to make it possible to distinguish the empty list from the case when thedisplayproperty was omitted -
added the possibility to attach an IRL to an activity definition that acts as a reference to a document that contains human-readable information about the activity
-
all values of an activity definition are optional, pass
nullto omit them -
all values of a result are optional, pass
nullto omit them -
throw an exception when not existing document data is accessed instead of failing with a PHP notice
-
all values of a score are optional, pass
nullto omit them -
values passed to the constructor of the
Scoreclass are no longer cast tofloat
0.2.0
-
added a dedicated class to refer to inverse functional identifiers, refer to the upgrade file for more detailed information
-
marked the
Statementclass as final
0.1.0
This is the first release containing immutable and final classes that reflect all parts of Experience API statements.
This package replaces the xabbuh/xapi-model package which is now deprecated
and should no longer be used.