Neow3j has been up to date to v3.18.0. The most recent spherical of modifications from AxLabs consists of new streamlined contract interfaces and modifications to the dealing with of iterator values returned from RPC calls.
All of the modifications within the new launch heart on the devpack, largely implementing performance added in the latest Neo core updates. Instance consists of assist for the MODPOW and MODMUL opcodes, the brand new technique for fetching transaction signers within the LedgerContract, and strategies for fetching candidate knowledge from the NeoToken contract.
Three breaking modifications may be discovered within the new model, so Java contracts written for earlier variations of the compiler will must be adjusted earlier than compilation. These contain the best way builders will interface with contracts, how iterators are dealt with when returned from RPC, and string concatenation respectively.
The brand new contract interfaces are designed to offer a smoother expertise for builders when calling different good contracts on the community. An up to date instance has been offered to display the brand new strategy, changing utilization of the Contract.name technique with contract interface initialization.
Modifications within the Neo core modified how iterators are returned from the RPC strategies invokefunction and invokescript. Fairly than instantly returning a node-limited listing of values, an iterator ID is returned together with a session ID. Whereas the session is energetic, the traverseiterator technique can be utilized to retrieve all values. A brand new Iterator class has been added to Neow3j’s contract module to grant extra handy entry to those values.
The ultimate breaking change is to string concatenation, which is now restricted to make use of with solely string values. To concatenate a string with one other kind, corresponding to a quantity, conversion strategies offered within the native StdLib contract corresponding to itoa needs to be used.
The complete launch notes for the brand new model may be learn on the following hyperlink:
Replace this in order to.