Neo SPCC has released a Neo3 Preview5-compatible version of NeoGo, bringing with it numerous important protocol changes and a range of new features. The release has been tested on Preview5 TestNet as one of the consensus nodes, succesfully processing over 50k blocks with no storage state abnormalities.
Dubbed Hyperproduction, NeoGo’s latest iteration provides full support for the latest Neo3 features. The oracle module and Neo Name Service native contract provide new tools for developers and normal users alike, and an improved native contract interop interface will make them much easier to access.
As they had done previously in the Neo2 implementations, Neo SPCC also continues to experiment with new functionality that goes beyond the C# reference implementation. A P2P notary module, proposed by Neo SPCC developer Roman Khimov, has been included for use on private networks.
This new module is intended to provide assistance to distributed individuals coordinating on a multisignature transaction. Together, a notary module and native contract provide a P2P signature collection and verification service for sending multisig transactions. After topping up the notary contract with GAS, a user can submit a partial transaction to trigger the notary service, which will collect signature transactions sent by other participants in order to help complete and broadcast the transaction. This mechanism could also be leveraged to provide free “sponsored” transactions for some contracts.
The team also corrected several core bugs in the new version, including an incorrect witness check and method parameter names/output types in native contracts. On the network side, an edge case where a node with zero peers would not re-initiate connections to seed nodes was resolved.
On the tooling front, the Go NEP-17 token contract example was updated with a missing invocation of the onNEP17Payment method, and a change in the compiler fixed potential execution failures, stemming from incorrect optimization of init and deploy methods.
A download link for the new update can be found alongside the full changelog at the following link: