NeoSPCC upgrades NeoGo to v0.106.0 in preparation for Cockatrice hard fork

NeoSPCC has recently released NeoGo v0.106.0, a significant update that is in line with the Neo v3.7.4 protocol. This update brings numerous new features and bug fixes, with specific enhancements to native contracts that are preparing for the upcoming Cockatrice hard fork.

One of the major changes in this update is the introduction of the ability to update native contracts, which is made possible through hard forks. As part of this update, changes have been made to the NeoToken and CryptoLib native contracts. The NeoToken contract now includes the getCommitteeAddress method and the CommitteeChanged event. On the other hand, the CryptoLib contract has been improved with a keccak256 hash function and an extension to the verifyWithECDsa method, allowing for Koblitz- and Keccak256-based transaction witness verification.

Aside from the protocol changes, NeoGo also continues to improve in terms of stability and developer experience. The software now supports the import of multisignature accounts into wallets without requiring a WIF and password. The unwrap package has also been enhanced with a new type for handling exceptions on RPC invocation results. Additionally, the RPC responses have been updated, with getversion now returning RPC server settings and getnativecontracts providing an update counter field for each item.

In addition to these updates, the release includes a collection of minor bug fixes that have accumulated over time. Issues such as a potential re-entrancy bug on Notary deposit withdrawal and the null response problem in the findstorage RPC when storage items are missing have been addressed. Problems with the genesis block record and application logs caused by the improper processing of the Conflicts transaction attribute have also been resolved. Furthermore, the update ensures smoother node service shutdowns.

For developers who wish to build a NeoGo binary from source, it is important to have at least Go 1.20+ installed. Node operators planning to upgrade will need to perform a resync, and config files will also need to be updated. The Cockatrice hard fork is scheduled for block height 3967000 on the TestNet and 5450000 on the MainNet.

For more detailed information on the changes, please refer to the release notes available at the following link: [release notes](