Listen to the article
COZ has released v1.4.0 of Boa, its Python compiler for the Neo N3 blockchain. The update introduces missing native contract methods, expanded conversion utilities, and support for Python 3.13.
New functionality
The release incorporates the StringSplit and StrLen methods from Neo’s standard library native contract, and adds RecoverSecp256K1 from the CryptoLib native contract. The update also modifies the behavior of the SHA256 and RIPEMD160 hash functions to only accept byte parameters.
The to_bytes and to_int methods now accept additional arguments for endianness and signedness, improving flexibility when handling data conversions.
Boa v1.4.0 also introduces constructors and validation for Neo enum types, including new case-sensitive checks during contract compilation. Additionally, developers can now access deployed contracts directly using the GetContractById method from the ContractManagement native contract.
Fixes and maintenance
Several compiler issues were resolved, including a TypeHintMissing error when defining functions within classes, incorrect behavior of the Sequence.insert function, and errors encountered when returning collections.
The update also allows exceptions to be used as valid function return values and fixes problems when multiple contract-decorated classes are included in the same file.
The release updates Boa’s documentation to reference boa3.sc instead of the deprecated boa3.builtin package. Other maintenance changes include an upgrade to Python 3.13, updates to CircleCI configuration, and the removal of setuptools deprecation warnings.
The full changelog can be read at the following link:
https://github.com/CityOfZion/neo3-boa/releases/tag/v1.4.0

