Skip to content
This repository has been archived by the owner on Jan 4, 2022. It is now read-only.

Dash Platform Protocol v0.11.0

Compare
Choose a tag to compare
@shumkov shumkov released this 12 Mar 17:29
· 264 commits to master since this release

Bug Fixes

  • missing public key during ST signature validation (667402d)
  • add npmignore (c2e5f5d)
  • prevent to update dependencies with major version 0 to minor versions (ea7de93)

Features

  • catch decode errors and rethrow consensus error (892be82)
  • limit data contract schema max depth (f78df33)
  • limit serialized Data Contract size to 15Kb (7c95197)
  • remove Data Contract restriction option (0edd6ff)
  • validate documents JSON Schemas during data contract validation (d88817d)
  • ensure maxItems with uniqueItems for large non-scalar arrays (3364325)
  • ensure maxLength in case of pattern or format (297c754)
  • ensure all arrays items are defined (43d7b8f)
  • ensure all object properties are defined (d9f71df)
  • limit number of allowed indices (5adff5d)
  • validateData method accept raw data too (e72a627)
  • prevent of defining propertyNames (c40663f)
  • prevent of defining remote $ref (34bdb3f)
  • prevent of using default keyword in Data Contract (7629878)
  • throw error if 16Kb reached for payload in encode function (c6aba8b)
  • accept JsonSchemaValidator as an option (ee1bb0f)

BREAKING CHANGES

  • Data Contract schema max depth is now limited by 500
  • Serialized Data Contract size is now limited to 15Kb
  • validate, createFromSerialized, createFromObject methods of Data Contract Factory are now async
  • items and additionalItems are required for arrays
  • properties and additionalProperties are required for objects
  • number of indices limited to 10
  • number of unique indices limited to 3
  • number of properties in an index limited to 10
  • required maxItems with uniqueItems for large non-scalar arrays
  • required maxLength in case of pattern or format
  • propertyNames keyword is restricted in document schema
  • default keyword is restricted in Data Contract
  • encode function throws error if payload is bigger than 16Kb