This repository has been archived by the owner on Jan 4, 2022. It is now read-only.
Dash Platform Protocol v0.12.0
Bug Fixes
- do not allow to change
ownerId
andentropy
(bff5807) - json schema for
signaturePublicKeyId
(#161) - wrong entropy size (#157)
- data contract definitions might be
null
orundefined
(#153) - identity existence validation in data contract structure validation (#149)
- state transition signature validation in data contract structure validation (#150)
Code Refactoring
- rename
$rev
to$revision
(#140) - rename
userId
toownerId
(b9a5e83) - remove
type
from Identity (227dc4d) - remove
version
from Data Contract (f856ecc) - rename
$ownerId
toownerId
in Data Contract (#160) - rename
$contractId
to$dataContractId
in Document (158) - split document model and it's state transitions (#126, #156)
- store document ID as a part of the document (3d10a01)
- Data Contract Create Transition now accepts raw data (#136)
- start types and indices from
0
instead of1
(#155) - put JSON Schemas into order (#135)
Features
- implement apply state transition function (#138, #139, #142, #141, #147, #143)
- generate Data Contract ID from
ownerId
and entropy (4c0dae1) - introduce balance to Identities (#137, b13a9bb, #146)
- validate ST size is less than 16 Kb (ff7aa51, 70c3c54)
- validate state transition fee (48c9fda, #145, 0cb1d6f)
- create Identity factory now accepts locked out point and public keys (#151)
getDataContractFixture
acceptsownerId
(#148)- implement create identity create transition factory (#152)
- introduce
signByPrivateKey
andverifySignatureByPublicKey
methods to ST (4eb5cdc) - verbose invalid data errors (#134)
BREAKING CHANGES
- Data Contract ID is ownerId + entropy. You don't need to create an additional identity anymore.
- Data Contract Create Transition now accepts raw data
- size of serialized state transition must be less than 16 Kb
type
removed from Identity due to Data Contract doesn't require it anymoreversion
removed from Data ContractuserId
renamed toownerId
- Documents State Transition renamed to and it's structure is changed
applyStateTransition
methods no longer a part of identity, data contract and document facades- renamed
$rev
field to$revision
in raw document model - applyIdentityStateTransition is now asynchronous
- Documents State Transition is now happening through separate state transition classes and renamed to Documents Batch Transition. Hence document class no longer have
$action
field.$action
is now starting from 0.$entropy
field is now a part of document create state transition.createStateTransition
method of a document factory now accepts a map with actions as keys (create
,replace
,delete
) and document arrays as values respectively. - create Identity factory accepts locked out point and public keys instead of ID and
IndentityPublicKey
- types and indices now starts from
0
instead of1
- Data Provider renamed to State Repository and store/remove functions introduced