COZ has rolled out a new release of Mamba, its Python SDK for Neo developers. A major milestone featuring over 8,000 new lines of code, the latest version most notably includes the interoperability layer, which is used alongside a virtual machine to process smart contracts.
V0.4 expands the Blockchain helper class to support basic node functionality in the SDK, allowing complete interaction with Neo networks based on the current Preview3 build.
To test its efficacy, an audit was performed to assess Mamba’s capability to correctly process every block and transaction on the Preview3 TestNet. Project lead Erik van den Brink (@ixje) commented:
“The audit validated the processing of every block and transaction looking at the system fees, network fees, virtual machine gas consumption, final execution state per transaction, result stack contents and every single storage modification made. We’re proud to say that for all 562380 blocks available at the time of performing the audit we produce identical results as the official client.”
The implementation saw almost all interops implemented, enabling interaction with important components such as contract storage. Currently only callback syscalls are absent, though they are not expected to be used prior to the upcoming Preview4 release.
Other notable new additions to the code include the addition of all the current native contracts, JSON serialization logic, and contract manifest support.
Other various changes specifically targeted Preview3 compatibility, such as the merging of sender and cosigners in transaction attributes, implementation of the new index-based mechanism for fetching block data, and modifications to the protocol payload.
Mamba will be updated with Preview4 compatibility in its next iteration, at which time the project’s documentation will be updated with any missing information.