# Release Notes

# [v3.2.0]

# Release Date - 10th October 2023

# Added

  • [API] Add optional parameters for searchString and limit for gettables API.
  • [API] Add startHeight optional query parameter to gethistory webapi endpoints.
  • Add metrics for inventory items and peers waiting list.
  • [CLI] Add command computehash for computing hash.
  • [CLI] Allow CLI Create Table commands to pass option for 'PermissionModel'.
  • [CLI] Add option -vah|--value-as-hex to addentity, updateentity, optimisticupdateentity to allow writing entity value as hex.
  • Rebuild the Floating Block Manager cache in case of node restart.
  • [SDK] Add the feature for retrieving and caching transactionLifetime to CliSdk.
  • [API] Add peerconnections endpoint to get peer connections.
  • [CLI] new command to get entity owners: getentityowners.
  • [SDK] Add new transaction entries BinaryAddValue and BinaryUpdateValue for adding and updating rows to a binary table. BinarySetValue tx entry marked as 'to be deprecated'.
  • [CLI] Add new cli commands AddBinaryValue and UpdateBinaryValue. SetBinaryValue cli command marked as 'to be deprecated'.
  • [CLI] Add commands addconsensuscredentialsadmins and removeconsensuscredentialsadmins to change consensus credentials admins.
  • [API] Improve swagger documentation for modules APIs.
  • [API] Improve swagger documentation for general APIs.
  • [API] Add Inventory and Consensus endpoints to a separate Debug API - default to https://+:5000/.
  • [CLI] Add hexdata attribute to getentity, getentitytable, getentitytree commands to display entity table values as hex.
  • [API] Improve swagger documentation for consensus and admin APIs.
  • Add Resize method to BoundedFIFOCache.
  • [SDK] Extend BlockchainParametersChange tx to update blockchain parameters (transactionLifetime, emptyBlocks, maxtpb, maxClockDrift, networkName).
  • [CLI] Extend changeblockchainparameters command to update blockchain parameters (transactionLifetime, emptyBlocks, maxtpb, maxClockDrift, networkName).
  • Add blockchain parameters validation (including threshold limitation) at node initialization.
  • [SDK] Add new transaction entry ExtensionModuleAdd to enable extension module.
  • [CLI] Add new cli command AddExtensionModule for ExtensionModuleAdd tx entry.
  • Add C# language versioning option for SmartContract.
  • [CLI] Add option -vf |--valid-from and -tl |--tx-lifetime for createTransaction and sendTransaction command.
  • Add TransactionErrorCode containing unique error code to sub categorize transaction execution error.
  • Add miyabi wallet cli
  • [SDK] Add methods to query multiple entries (for Asset, Binary, Entity, Nft, and PrivateData modules).
  • [CLI] Add commands getassets, getbinaryvalues, getentities, getprivatedataentries, getnftbalancesof, getnftowners to query multiple entries.

# Changed

  • Add flag to allow app node to reject 'InvTx' from other nodes.
  • Remove WebApi related metrics.
  • Move miyabi_score_value metric to inventory logger.
  • Rename metric miyabi_score_value to miyabi_inventory_score_value.
  • [CLI] Command decodefromhex should now throw exception for invalid Unicode (to be consistent with ByteString.Decode).
  • [CLI] Allow --host, -cc and -ccp options to override values in SdkConfig.
  • [CLI] Allow user to set file path or text for --ccp option or in sdk config.
  • [CLI] Allow user to get raw private data from a specific host using --host.
  • [CLI] Change CreateNFTTable command to inherit from CreatePermissionedTable.
  • Gracefully clear pending download items ('Peerdownloadinfo') and reschedule to other peer(s) when a node is disconnected.
  • [API] History endpoints display and fetch transactions from latest to oldest.
  • [SDK] EntityTree JSON representation ('EntityTreeRepresentation') provides TableName and EntryId.
  • [API] performance txPerBlock.sum should display 0 instead of null.
  • [CLI] --pretty also applies to API errors.
  • [Private data] Throw exception if user specified pdo host using --host is invalid.
  • [API] peercount endpoint should return peer count (instead of connection count).
  • [CLI] --privatekey is no longer mandatory for the following commands: addtableowners, removetableowners, addtokenadmins, removetokenadmins, addtrustedentities, removetrustedentities.
  • [CLI] derivepkcs12 and generatepkcs12 now print message on success.
  • [SDK] [CLI] Allow CLI to parse transaction from file with ByteString content.
  • [API] getinfo now shows StartTime in UTC format.
  • [SDK] BlockchainParametersChange targets next height if 'ActivationHeight' is not set.
  • [CLI] Make 'Activation Height' optional for ChangeBlockchainParameters command.
  • [CLI] Change CreateTransaction command to be offline.
  • [CLI] Archiving admin commands should not depend on blockchain config file.
  • [All] Update MessagePack for C# to 2.5.108
  • [Archiving] For prune history, use Json serialization instead of BinaryFormatter
  • [SDK] Update the client blockchain config cache only when data can be retrieved from the server
  • [CLI] Move option -rcm from BaseCommand to SendTransaction
  • [CLI] Renamed command getprivatedata to getprivatedatavalue.

# Fixed

  • Fix blstool validatechildkey was sending 'Invalid proof' error to output console instead of error console.
  • Fix row existence check error message for entity table.
  • Allow "performance" API to be accessible when Prometheus is not configured.
  • Fix node to send same number of raw blocks as upto 'MaxGetBlocks' configuration.
  • GetByteArray function of ByteString should return immutable byte array.
  • Fix miyabi SDK manual warnings for correct pdf generation.
  • [Catching up issue] Send Reject message and resend blocks when node receives request for more blocks than configured 'maxGetBlockSize'.
  • Fix Slowness for History Endpoints.
  • Fix error message when moving asset from address with insufficient balance.
  • [CLI] Fix getentitytree 'isRecursive' indicator to show correct value.
  • [API] Fix error message for 'getblock', 'getheaders' and 'getblockevents' API with negative height.
  • Correct 'moveasset' transaction error message for insufficient balance.
  • [ClientSDK] API GET requests should encode URI string to support special characters.
  • [MessagePack] Prevents tags to be registered under wrong NamespaceId.
  • Fix null row owners causing error in signer validation.
  • Fixate the TLS version to v1.2 on server and client
  • Fix vulnerability related to a byzantine block with far future block timestamp
  • Fix error message when querying NftBalance unauthorized.