Skip to content

aepp-sdk-go v4.0.0

Compare
Choose a tag to compare
@randomshinichi randomshinichi released this 05 Jul 12:26
· 330 commits to develop since this release

Breaking Changes

HTTP client to the node is now named Node instead of Client. Its methods have dropped the API prefix, e.g. Client.APIGetStatus() -> Client.GetStatus()

The helper structs are gone, replaced with a Context{}, which holds the connection to the node Node{} and an Address (string).
e.g.

before
aens := Aens{Client: nodeConnection, Account: alice}
oracle := Oracle{Client: nodeConnection, Account: alice}
tx, err := aens.NameRevokeTx('fdsa.test')
tx2, err := oracle.OracleRegister(...)

after
c := Context{Client: nodeConnection, Address: aliceAddress}
tx, err := c.NameRevokeTx('fdsa.test')
tx2, err := c.OracleRegister(...)

NameRevokeTx() helper does not need an address, so its signature changed.

Features

Preliminary smart contract support: Supports the compiler v3.1.x, you can call its HTTP endpoints via the SDK.

CLI now supports a few contract subcommands: aecli contract compile/decodeCalldata/encodeCalldata.
You can change which compiler to connect to with the flag --compiler-url.

Known Issues

Cannot parse ContractTxs from the node because the node returns VMVersion, ABIVersion as a string instead of an integer

decodeCalldata/Compiler.DecodeCalldata() does not work because the swagger description file was missing a required function (will be fixed with the next compiler release)

Fixes

aecli chain top does not crash anymore
Use custom fork of RLP library