Skip to content

Releases: wavesplatform/Waves

Version 1.3.5 Jumeirah (Mainnet + Testnet + Stagenet)

03 Jun 12:47
758aee7
Compare
Choose a tag to compare

In this release

This release is accumulation of all previous 1.3.x releases. Now it's available for Mainnet.
After the activation of the feature #​16 all Protocol changes become available.

Protocol Enhancements

  • dApp-to-dApp invocation. A dApp callable function can invoke a callable function of another dApp, or another callable function of the same dApp, or even itself. All invoked functions are executed within a single Invoke Script transaction. The total complexity is limited. More about dApp-to-dApp invocation
  • Amended Invoke Script transaction:
    • Canceled the extra fee of 0.004 WAVES for smart assets in payments and script actions.
    • Transaction can contain up to 10 attached payments.
    • The total complexity for all callable functions and asset scripts involved is limited by 26,000 (the sender's account script complexity is not included in this limit).
    • The maximum complexity of a callable function of a dApp script is changed to 10,000.
  • For all types of transactions, canceled the extra fee of 0.004 WAVES for sending a transaction from a smart account or dApp unless the complexity of sender's account script or dApp script verifier function exceeds 200.

Ride

  • Issued version 5 of the Ride Standard library.

  • Enabled processing up to 10 payments attached to the Invoke Script transaction.

  • Added the functions for dApp-to-dApp invocation:

  • Added strict variables that are evaluated before the next expression to ensure executing callable functions and applying their actions in the right order.

  • Modified the callable function result by adding a return value.

  • Modified the Invocation structure: in case of dApp-to-dApp invocation, the structure contains the address and public key of both the sender of the Invoke Script transaction and the dApp account that invokes the callable function.

  • The maximum total number of Issue, Reissue, Burn, SponsorFee, ScriptTransfer, Lease, LeaseCancel script actions executed by all callable functions in a single transaction is 30.

  • The maximum total number of BinaryEntry, BooleanEntry, IntegerEntry, StringEntry, DeleteEntry script actions executed by all callable functions in a single transaction is 100.

  • Added script actions that the callable function can perform:

    Using these actions, you can change the amount of the lease, in particular, withdraw a part of the leased funds. If you cancel a lease for a larger amount and create a new lease for a smaller amount with the same recipient in the same script invocation, the recipient's generating balance decreases by the difference. Otherwise, if you send two separate transactions: a Lease Cancel transaction and a Lease transaction, they can be added to a different blocks and therefore generating balance decreases by the amount of the canceled lease immediately and increases by the amount of the new lease after 1000 blocks.

  • Added the function calculateLeaseId that calculates ID of the lease formed by the Lease structure.

  • Added an arbitrary data type — Any.

  • Added the BigInt data type of 64 bytes (512 bits) and functions.

  • Added the following built-in functions:

  • Added the following account data storage functions that allow the dApp script to read entries of its own data storage:

    • getBinary(key: String): ByteVector|Unit
    • getBinaryValue(key: String): ByteVector
    • getBoolean(key: String): Boolean|Unit
    • getBooleanValue(key: String): Boolean
    • getInteger(key: String): Int|Unit
    • getIntegerValue(key: String): Int
    • getString(key: String): String|Unit
    • getStringValue(key: String): String
  • The maximum complexity of a callable function of a dApp script is changed to 10,000.

Node REST API

Breaking Changes

A lease can be created both as a result of a Lease transaction and as a result of an Invoke Script transaction via a Lease script action. Therefore, the response of the following endpoints has been changed:

  • In the response of /transactions/address/{address}/limit/{limit} and /transactions/info/{id} endpoints for a Lease Cancel transaction, the lease structure now contains lease parameters instead of Lease transaction fields.
  • /leasing/active/{address} returns an array of structures containing lease parameters instead of array of Lease transactions.

Semantic Changes

  • dApp-to-dApp invocation results are added as the invokes array to the stateChanges structure returned by the following endpoints:

    • /transactions/info/{id}
    • /transactions/address/{address}/limit/{limit}

    Each element of invokes array, in turn, also contains stateChanges.

  • Results of the Lease and LeaseCancel script actions are added to the stateChanges structure.

  • Results of Lease and LeaseCancel script actions are also added to the trace structure returned by the following endpoints:

    • /transactions/broadcast
    • /debug/validate

Improvements

  • Added the /leasing/info endpoint that returns lease parameters by lease IDs.
  • Added the /blocks/heightByTimestamp endpoint that returns blockchain height at a given timestamp.

Activation

To activate the improvements listed above, vote for feature #16 “Ride V5, dApp-to-dApp invocations”.

Update Notes

If you are not using Blockchain Updates extension, there's no need to reimport state when updating from version 1.2.x.
Attention Blockchain Updates users:

  • Due to an issue with one of the previous versions, current extension data is likely inconsistent with the blockchain. Please reimport blockchain to rebuild BU state.
  • In some cases BU subscription can get stuck, that is once connected, the client receives some updates up to the most recent block/microblock, but won't receive any subsequent updates when node appends new blocks/microblocks. This is a known issue. While we are working on a fix, one possible workaround is to monitor the connection, and once the subscription is stuck, restart the node process.

Official pools update notes

Due to presense of breaking changes in the Node's API please migrate your existing projects/applications. Version 1.3.5 will be immediately available on the testnet. Mainnet will be updated on June, 11th.

SHA256 Checksums

b938cbd04016131be6a06a3f6db9d8fc5df8fe6fd1204469e1a67eeb999f1bbc  waves-all-1.3.5.jar
76381331a983383ef4991077abcafcaed3f5ad55bb686c52dd0f1c68ca752d04  waves-grpc-server-1.3.5.tgz
449af81db3ec693baaf5508ca5769587a7023ddaea203f406413efca6a2e840f  waves-grpc-server-stagenet_1.3.5_all.deb
aa801db4c4b279fc226b2642d11281cc02ec7f182668a96628e8bc097e0aadb8  waves-grpc-server-testnet_1.3.5_all.deb
2c28f517df7595fd85e1a12a0dc78eb2e8cf3f7316251b160eeacf5f56dbabf0  waves-grpc-server_1.3.5_all.deb
f4faf1da9fc23b90ba96f48585f73b4ac1a1127ec73fd636decac57261cca5fa  waves-stagenet_1.3.5_all.deb
6dd05421d4f2622693acb8ca320af291c04aeb0052863b9bedf3c2dc79e167df  waves-testnet_1.3.5_all.deb
142616a71ed1aa3f08623db036cb540234a546d2d6cbd769dbe605cced28abb4  waves_1.3.5_all.deb

Version 1.3.4 (Testnet + Stagenet)

14 May 14:32
9011b93
Compare
Choose a tag to compare
Pre-release

In this release

This is the first release of 1.3 series intended for both Testnet and Stagenet (however, it is not ready for Mainnet just yet). Please vote for feature 16 on Testnet!

The following issues have been fixed since 1.3.3:

  • Fixed liquid block rollbacks in Blockchain Updates extension.

SHA256 Checksums

c35b97d5e7e842ba7ed14dbca663d89452cfe78ef0802a0669f8d470eedc2491  grpc-server-stagenet-1.3.4.tgz
2d891990360b654a26e20fae85d709f2ff9d1db5fae4cf6a4fa0d5c00fd0881f  grpc-server-stagenet_1.3.4_all.deb
c550927f681cdedd0c6047e1203d8de29b981ac298bdaae4fb9a28aaa6517ec9  grpc-server-testnet-1.3.4.tgz
c82a99252aebb1511843ee6e2b6fd8026640b8a1a980e71e6def2f040059d634  grpc-server-testnet_1.3.4_all.deb
169401cf4d81aa99ffc936b3de36bed61c7d499dd12218635ba7f6a9360ea912  waves-all-1.3.4.jar
4783b334f08151b2c89f0762de4e86720288911266f0dc08e121f6b84ccba78b  waves-stagenet_1.3.4_all.deb
ef304c7f0412d3e0127f468f6ee043aa773d84b071410ec845d9772d7d4b813a  waves-testnet_1.3.4_all.deb

Version 1.2.21 (Mainnet + Testnet)

13 May 14:52
050da90
Compare
Choose a tag to compare

In this release

This release fixes an issue which could prevent the node from successfully completing blockhain import. All miners are advised to update their nodes. A bug which prevented Blockchain Updates extension from properly handling certain types of microblock rollbacks has also been fixed.

There is no need to rebuild state when updating from version 1.2.20.

SHA256 Checksums

3d5e98bc15dec945c3925e7e430240a9dde47961c4c8f91dfca4e45284f849dc  grpc-server-1.2.21.tgz
70193a320a7f41b80ea84644daf9eab3e8aae9e50359337da1e7829465903bd4  grpc-server-testnet-1.2.21.tgz
e123842f551ceb802e4db6c3341d3f53a1ef3bdbc7b1832eda29db569c6660cd  grpc-server-testnet_1.2.21_all.deb
ade342d99951383084743d30875dc5c34c9666ccfe36df88d950e7720dee0bd2  grpc-server_1.2.21_all.deb
9e074f65338ee74c171b591354080ebee4274f9d231f66886df9a7e26cc8e753  waves-all-1.2.21.jar
4afa8bc74e7fe9420b716550117a255bbc9542552d4bbeff8c81f7c37e54f258  waves-testnet_1.2.21_all.deb
190c7cfb303bd933a5a1df8e6255ae662b95bd51a65314cc392326332a2e2c6d  waves_1.2.21_all.deb

Version 1.3.3 (Stagenet)

30 Apr 15:09
26a34d2
Compare
Choose a tag to compare
Pre-release

In this release

This release is intended for Stagenet only. There's no need to rebuild state when updating from 1.3.2

This release includes the following improvements:

  • Added the reentrantInvoke function for dApp-to-dApp invocation. The only difference from the invoke function is that there is no reentrancy restriction for the parent dApp that uses reentrantInvoke.
  • The maximum complexity of a callable function of a dApp script is changed to 10,000.
  • Blockchain Updates stream no longer freezes upon microblock rollbacks.
  • Updated nested invocation lease state changes format to be consistent with /leasing/info/{id} endpoint.

SHA256 Checksums

4851a8c950fb08e3a42a191d8bb313afc21ca0a20c2317b385e0a40b9bd775fc  grpc-server-stagenet-1.3.3.tgz
0ef5fed6a84029d41e1e939ac1822d6780815470121265ac5442ee53a742d740  grpc-server-stagenet_1.3.3_all.deb
ef099346d232a976f9d858cf4ead88bf286359cdfb8135f3eb13dca05dd0e530  waves-all-1.3.3.jar
3fa8b99760ab5752a86eb80aa2725773789c1915dabc8745579da92b7b83372a  waves-stagenet_1.3.3_all.deb

Version 1.3.2 (Stagenet)

16 Apr 10:54
74c3719
Compare
Choose a tag to compare
Pre-release

In this release

This release is intended for Stagenet only. There's no need to rebuild state when updating from 1.3.1

RIDE Improvements

  • Misc BigInt implementation fixes.
  • Invocation structure has been enhanced with two additional fields: originCaller and originCallerPublicKey.

Node Improvements

  • Fixed smart asset script estimation errors which could cause the eviction of valid transactions from UTX pool during cleanup.
  • Active leases created by a nested invocation are returned by the /leasing/active/{address} method.
  • New /blocks/height/{timestamp} method returns actual blockchain height at the given timestamp.
  • New /leasing/info/{id} returns lease details for the given lease ID (even for those issued via invocations).
  • State changes JSON has been tweaked to include invocation tree even for failed transactions, and also to make lease action details JSON consistent with lease info route response.
  • The node will check if the newly received extension increases local score before attempting to append it.

SHA256 Checksums

d07bcd2ff542dbfaf556732b576685c24896a6bddc12ec4e98d80b0ea618392a  grpc-server-stagenet-1.3.2.tgz
ba5bed1f39ac5564ea8678153cdcdac3ff7b54c1294f3fe842620f6ae3e0802d  grpc-server-stagenet_1.3.2_all.deb
5064bab6f8f6972c0402748e18617633f7725b7b0fc84bdf70c6e19b338b41bd  waves-all-1.3.2.jar
b638fb679b260c7bc1214e6e0517067df00ad2e647ce9e7697104b0777c1af7c  waves-stagenet_1.3.2_all.deb

Version 1.3.1 (Stagenet)

31 Mar 12:53
dc13d67
Compare
Choose a tag to compare
Pre-release

In this release

This release refines functionality introduced with release 1.3.0. Being intended for Stagenet only, it still has some known issues described below. To find out more about new functionality in series 1.3, head over to release notes.

Protocol Enhancements

  • Increased block complexity limit from 1M to 2.5M, changed overall (including nested) invocation limits:
    • complexity can not exceed 26000
    • action limit has been increased to 30
    • data entry limit has been increased to 100
  • Fixed complexity estimation for dApp-to-dApp calls.
  • When dApp does not have enough balance to cover transfer actions produced by an invocation, such invocations are no longer discarded, and are included in the block as failed instead.
  • Attached payment limit has been increased from 2 to 10 for invocations targeting dApps using RIDE V5.
  • When account's @Verifier script complexity does not exceed 200, outgoing transactions from such accounts will not require additional fee.
  • Continued сomputations have been pushed to release 1.4. All continuations-related functionality has been removed from this release.

RIDE

In addition to the features from v1.3.0, he following changes have been introduced with RIDE V5:

  • New BigInt type widens built-in integer type to 512 bits.
  • Invocation structure has been extended with originalCaller and originalCallerPublicKey fields which contain original InvokeScript transaction's sender address and public key.
  • Added new functions:
    • isDataStorageUntouched that checks if the data storage of a given account never contained any entries.
    • hashScriptAtAddress that returns BLAKE2b-256 hash of the script assigned to a given account.
  • Non-standard rounding modes HALFDOWN and UP have been removed.

Node

  • Leases produced from nested dApp invocation will not be returned by /leasing/active/{address} API. This is a known issue which will be fixed in the upcoming version.
  • Upon successful rollback completion, only those transactions which are not present in the blockchain will be returned to UTX pool.
  • All fixes from 1.2.x series (up to [release 1.2.20]) have been backported to this series, which includes the new Blockchain Updates extension.

SHA256 Checksums

c50cad467603dbedeb2dbed4183dcc80675125b5c34b01ebba66b98aa5eb2410  grpc-server-stagenet-1.3.1.tgz
91ebade64a49c4183025a5b2f86a03c78620bab39f1faf11c56a585b6e922351  grpc-server-stagenet_1.3.1_all.deb
02b30d0316612776022eb1f89b032897806c2adaf35fdaff0fccd4cb8b86c997  waves-all-1.3.1.jar
1bce131015342bf74e64994f54160ef7e74a11bd641d7f8c76684cf4690d6c58  waves-stagenet_1.3.1_all.deb

Version 1.2.20 (Mainnet + Testnet)

24 Mar 11:52
cba985f
Compare
Choose a tag to compare

In this release

This release includes the new and improved version of the Blockchain Updates extension. If you are not using the extension with your node, or if you prefer to continue using the previous version, you may skip this version.

  • The new updates stream enhances StateUpdate messages with the before values (e.g. BalanceUpdate message has a new amount_before field which contains the address balance preceding update application).
  • Additional TransactionMetadata is supplied for each transaction. This message contains resolved recipient addresses for transfers directed to aliases, function invocation details and some other data which can not be retrieved from the transaction itself.
  • Rollback messages are enhanced with state updates and transaction IDs which are being reverted. These fields contains the data which helps consumers more easily handle rollbacks.
    For more information on the new extension, see documentation.

Update notes

Please note that this Blockchain Updates extension version is incompatible with the previous versions (consumers working with previous extension versions will not be able to connect to this version). You will need to re-generate client stubs from schemas version 1.2.11 to use the new stream. We will be updating our Mainnet pool to the new version on Monday, March 29th.

Please also note that updating your extension from previous versions requires re-importing blockchain. This requirement is caused by redesigned extension data storage which no longer stores blocks in its own LevelDB, using the ones stored by the node itself. This greatly reduces storage space requirement for this extension (by as much as raw blockchain size — almost 43GB for Mainnet as of height 2515000). The extension itself consumes 32GB of storage space, in addition to the node's 55GB.

SHA256 Checksums

89377c7bdfbf8d35600be6c0fedacba5a4a53f0af5349ad72fb491fb893d4a64  grpc-server-1.2.20.tgz
16d5bb38d6e1c5c8203b5fa01a121428d2cbc2bd0de5b6b463206a06ceb11ac1  grpc-server-testnet-1.2.20.tgz
5700e689225d735d66d294f8e0c70256abedf1889a54e36fc84543713035c124  grpc-server-testnet_1.2.20_all.deb
27e41fee7bf79f6ad79a65051c09c90f68ac027a421acc7231786fd2dde025c3  grpc-server_1.2.20_all.deb
9d34f3a41932b070b48931219118d941c14e2d2052be415ec6dc4f0eba323611  waves-all-1.2.20.jar
d559ed4609a556691710955e36b4264bfdd813a699c6c4942709bf1a99bf97e2  waves-testnet_1.2.20_all.deb
0c67481f04a6c3a5106f0ad8c4ba86adaea8b581976738becfbee64aae3d1652  waves_1.2.20_all.deb

Version 1.2.19 (Mainnet + Testnet)

23 Mar 14:13
7f83b02
Compare
Choose a tag to compare

In this release

This release contains several bugfixes.

  • Fixed an issue with Blockchain Updates extension which resulted in intermittent connectivity issues.
  • Fixed /debug/validate method to respect priority pool when validating transactions.
  • Fixed an off-by-one error in blocks/delay method.
  • Changed the way docker images are built. See README for more info.

This is a maintenance release, you only need to update your node if any of the issues mentioned above affects you. There's no need to reimport state when updating from 1.2.18.

SHA256 Checksums

69b2b4c8271f0e550b030fc90d541e1c61976edf6c6cfa8fd8e958414b57596f  grpc-server-1.2.19.tgz
d925169d4b6891e8b33bc3218305a1bd0f2be306a8e02562d83ea0bacefcc3eb  grpc-server-testnet-1.2.19.tgz
203733e026ea471074404a1c9a8bd00c9779d40348816ee90964a8dc79b0de71  grpc-server-testnet_1.2.19_all.deb
3b51d34128a3a37d2eeac75149ba360d5b5efe9a9cddc28eed323b743beda95d  grpc-server_1.2.19_all.deb
9bbc8d82d138183ffe35cb337c536b526e1c554ab6ffcedef30b7ab9970bf39e  waves-all-1.2.19.jar
031000d228e8c2a3fba2396ed4347e312b045bba703a3036b2cb19693188e97e  waves-testnet_1.2.19_all.deb
3d1a61a21cdc4156d7ac1ac1fc9fc5561aa38b42fba73af9a22e5cb65c25ee38  waves_1.2.19_all.deb

Version 1.2.18 (Mainnet + Testnet)

25 Feb 19:25
2909f6d
Compare
Choose a tag to compare

In this release

This is a mandatory release for all miners on Mainnet and Testnet.

This release fixes a bug in transactions validation which was encountered on Testnet. The Mainnet is not affected.

Node Changes

  • Fixed error of not validating proofs' sizes in some cases.

There's no need to rebuild state when updating to this release.

SHA256 Checksums

b2b6ef8573f94371477f1b5c8642c28449d5812ab8ed1d6eb1da927832ea3fe6  grpc-server-1.2.18.tgz
a4bd6ac3c4e0fc6b901be2adeb8a0ce88e3194b42a1ab7891eeda3cae24d2d50  grpc-server-testnet-1.2.18.tgz
2d49ff51da872ed2b1039dba2dda46f035c6073280753bbcc76f2cfe0134717b  grpc-server-testnet_1.2.18_all.deb
16ca08f2680e5dd092beb812aad3c12efe50be49062b8d8864e9fa20105c6815  grpc-server_1.2.18_all.deb
360392e6f0b94babe0e8e6802dcdd0e99b78302f7fc4526eeacdaf83264bbc66  waves-all-1.2.18.jar
b83e4b4a6b1abe524f627b8ec5c9f23f115bd03da2356bce66249fe93b092cdc  waves-testnet_1.2.18_all.deb
1f3cc566dd7a0dff48729a44e9ed6eba254cbaa59ea154b2033141b327048561  waves_1.2.18_all.deb

Version 1.3.0 (Stagenet)

29 Dec 11:50
57d7dcc
Compare
Choose a tag to compare
Pre-release

Attention! This release is for stagenet only! Not for mainnet/testnet.

In this release

Protocol Enhancements

  • dApp-to-dApp invocation. A dApp callable function can invoke a callable function of another dApp, or another callable function of the same dApp, or even itself. All invoked functions are executed within a single Invoke Script transaction. The total complexity is limited. More about dApp-to-dApp invocation
  • Continued сomputations.
    • Added support for dApp scripts with complexity over 4000. The execution of such a script is split into several stages. The first stage of calculations is performed within the Invoke Script transaction. The further stages are performed within Continuation transactions. More about continued сomputations
    • Implemented the new transaction type: Continuation. A block generator creates the Continuation transaction if there is an incomplete calculation sequence. A user cannot send a Continuation transaction.
    • Added version 3 for the Invoke Script transaction that can invoke a script with complexity over 4000.

Ride

  • Issued version 5 of the Ride Standard library.

  • Added the Invoke function for dApp-to-dApp invocation.

  • Added strict variables that are evaluated before the next expression to ensure executing callable functions and applying their actions in the right order.

  • Modified the callable function result by adding a return value.

  • Added script actions that the callable function can perform:

    Using these actions, you can change the amount of the lease, in particular, withdraw a part of the leased funds. If you cancel a lease for a larger amount and create a new lease for a smaller amount with the same recipient in the same script invocation, the recipient's generating balance decreases by the difference. Otherwise, if you send two separate transactions: a Lease Cancel transaction and a Lease transaction, they can be added to a different blocks and therefore generating balance decreases by the amount of the canceled lease immediately and increases by the amount of the new lease after 1000 blocks.

  • Added the function calculateLeaseId that calculates ID of the lease formed by the Lease structure.

  • Added the following account data storage functions that allow the dApp script to read entries of its own data storage at any stage of the calculations:

    • getBinary(key: String): ByteVector|Unit
    • getBinaryValue(key: String): ByteVector
    • getBoolean(key: String): Boolean|Unit
    • getBooleanValue(key: String): Boolean
    • getInteger(key: String): Int|Unit
    • getIntegerValue(key: String): Int
    • getString(key: String): String|Unit
    • getStringValue(key: String): String
  • Added an arbitrary data type — Any.

Node REST API

Breaking Changes

  • Added the new transaction type: Continuation.

  • A lease can be created both as a result of a Lease transaction and as a result of an Invoke Script transaction via a Lease script action. Therefore, the response of the following endpoints has been changed:

    • In the response of /transactions/address/{address}/limit/{limit} and /transactions/info/{id} endpoints for Lease Cancel transaction, the lease structure now contains lease parameters instead of Lease transaction fields.
    • /leasing/active/{address} returns an array of structures containing lease parameters instead of array of Lease transactions.
    Format
    "lease":
       {
         "leaseId": "4AZU8XPATw3QTX3BLyyc1iAZeftSxs7MUcZaXgprnzjk",
         "originTransactionId": "4AZU8XPATw3QTX3BLyyc1iAZeftSxs7MUcZaXgprnzjk",
         "sender": "3PC9BfRwJWWiw9AREE2B3eWzCks3CYtg4yo",
         "recipient": "3PMj3yGPBEa1Sx9X4TSBFeJCMMaE3wvKR4N",
         "amount": 1000000000000,
         "height": 2253315
       }

Semantic Changes

  • For Invoke Script transaction version 3 the fields extraFeePerStep and continuationtransactionIds and the script_execution_in_progress value for the applicationStatus field added to the output of the endpoints providing transaction info.

  • dApp-to-dApp invocation results are added as the invokes array to the stateChanges structure returned by the following endpoints:

    • /transactions/info/{id}
    • /transactions/address/{address}/limit/{limit}

    Each element of invokes array, in turn, also contains stateChanges.

    Format
    "stateChanges": {
      "data": [],
      "transfers": [],
      "issues": [],
      "reissues": [],
      "burns": [],
      "invokes": [
        {
          "dApp": "3PC9BfRwJWWiw9AREE2B3eWzCks3CYtg4yo",
          "payment": [
            {
              "amount": 50000000,
              "assetId": "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"
            }
          ],
          "call": {
            "function": "swapNeutrinoToWaves",
            "args": [
              {
                "type": "string",
                "value": "EUR"
              },
              {
                "type": "integer",
                "value": 843699
              },
              {
                "type": "binary",
                "value": "base64:OK+armP11YmAyoQOwl8jLDLi2dK2sRc1Ue2QzZX1wgRmwGASLhllv1iKg2fRKS8cAlSDrfMYPb6374WMC9gFgA=="
              }
            ]
           },
          "stateChanges": {
             "data": [],
             "transfers": [],
             "issues": [],
             "reissues": [],
             "burns": [],
             "sponsorFees": [],
             "invokes": []
           }
        }
       ]
    }
  • Results of the Lease and LeaseCancel script actions are added to the The stateChanges structure.

    Format
    "stateChanges": {
       "leases": [
         {
           "leaseId": "5fmWxmtrqiMp7pQjkCZG96KhctFHm9rJkMbq2QbveAHR",
           "recipient": "3PLosK1gb6GpN5vV7ZyiCdwRWizpy2H31KR",
           "amount": 500000
         }
       ],
       "leaseCancels": [
          {
             "leaseId": "4iWxWZK9VMZMh98MqrkE8SQLm6K9sgxZdL4STW8CZBbX"
          }
       ]
    }
  • Results of Lease and LeaseCancel script actions are also added to the trace structure returned by the following endpoints:

    • /transactions/broadcast
    • /debug/validate
    Format
    "trace": [
       {
          "id": "3MosFNQAFGskNDnYzRBgMbfod6xXPdG96ME",
          "type": "dApp",
          "vars": [
             {
                "name": "amount",
                "type": "integer",
                "value": 12345
             }
         ],
         "result": {
             "leases": [
                {
                   "leaseId": "5fmWxmtrqiMp7pQjkCZG96KhctFHm9rJkMbq2QbveAHR",
                   "recipient": "3PLosK1gb6GpN5vV7ZyiCdwRWizpy2H31KR",
                   "amount": 500000
                }
             ],
             "leaseCancels": [
                {
                   "leaseId": "4iWxWZK9VMZMh98MqrkE8SQLm6K9sgxZdL4STW8CZBbX"
                }
             ]
          }
       }
    ]

SHA256 Checksums

69617f5ab0516957a4b75c3e59bbd7ed7f457418fe328d70becc0214ced80e57  grpc-server-stagenet-1.3.0.tgz
ae9c994f1a3adfab87b68e8ba2e406fb1292cc06edd0d0888975ea6b4ea93663  grpc-server-stagenet_1.3.0_all.deb
8dba1fc8b4cca59ebae68b46b2ad4e0ff471a2e7b2fd6d0bbf155fe8e66c6e8e  waves-all-1.3.0.jar
ef2f3e1de0af3927809d9d74970fb634c0d42000166545e9560d7c3b28e1d515  waves-stagenet_1.3.0_all.deb