On the 21st of June 2019 the latest Odyssey version 3.6 was released. This introduces new TVM instructions, API, protocol data check as well as optimizations.
- #2070 Add create2 instruction for TVM, which returns a predictable contract address before deploy. TIP #26
- #2069 Add bitwise shifting instructions for TVM to reduce energy consumption of shift. TIP #29
- #2075 Add extcodehash instruction for TVM which returns the keccak256 hash of a contract’s code. TIP#30
- #2125 Add triggerConstantContract API to support contracts which have no ABI. TIP #31
- #2125 Add clearABI API including http and grpc, contract’s deployer can use this to clear his contract’s existed ABI. TIP #32
- #2093 Add built-in message queue for event subscribe. TIP #28
- #2047 Add protocol data check
- #2154 Add the Permission_id field when returning the created transaction, compatible with multi-signature transactions
- #2142 Support event subscription without abi
- #2173 Optimize erengy deduction strategy in TVM when transfer 、sendor transferToken failed
- #2141 Optimize the HTTP interface by adding the visible parameter to support the convenience type of addresses and strings, and add the AccountID related interface
- #2182 Optimize http/grpc broadcast transaction interface
- #2155 Optimize the process of block broadcasting
- #2219 Fix the problem that the http interface parses the long type value for a long time.
- Add built-in message queue config. See here
use event.subscribe.native.useNativeQueue to control whether using built-in message queue . If true, use native message queue, else use event plugin.
use event.subscribe.native.bindport to control bind port.
use event.subscribe.native.sendqueuelength to control max length of send queue.
- For smart contact without ABI (after clear ABI or deploy without ABI)
If you want to call the constant method, you must use the triggerConstantContract interface instead of triggerContract . More details: TIP #31
If you need event subscription, you need to subscribe to and upload ABI using version 3.6+. More details: tron-eventquery.md
After clearABI, it is not possible to re-add ABI to the same contract address.
- For create2 instruction
If you want to use create2 to genertate a new address . More details: TIP #31
After suicide, the storage of create2 addresses will be reset.
If deployed on a normal address (created by transfer trx), the address will be modified to the contract address. The resources (bandwidth and energy) previously delegated to this address are cleared, and do not affect the unfreeze operation of the client.