v1.0.0-beta
Pre-release
Pre-release
This is the beta release of the IOTA Go library. All changes are breaking.
Changes:
- Splits functionalities into different packages.
- Removes
github.com/tildeleb/hashland/keccakpg
in favor of using a modifiedgolang.org/x/crypto/sha3
package for Kerl. - Makes the API composable so that the underlying transport protocol is abstracted away.
- Adds missing functionality from iota.js, such as: unit, ascii-tryte conversion, guards etc.
- Adds tests for all packages and integration tests for the API object.
- Removes licences from source files and uses a single LICENCE file for reference.
- Rewrites Proof-of-Work implementations to immediately return the nonce when one was found from a given spawned goroutine.
- Decouples concurrent access from the Proof-of-Work implementations, instead, use
Sync
prefixed functions for handling concurrent access. - Makes primitive types such as Trits, Trytes and so on alias types, so no explicit type conversion is needed.
- Reduces copying in a lot of for loops by extracting pointers.
- Return errors everywhere in the package where one might occur instead of panicking.
- Marks function which can panic with
Must
. - Adds proper CI configuration.
- Renames project to iota.go