| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| April Springs.tar.gz | 2018-04-25 | 39.9 kB | |
| April Springs.zip | 2018-04-25 | 66.2 kB | |
| README.md | 2018-04-25 | 1.8 kB | |
| Totals: 3 Items | 107.9 kB | 0 | |
This is one of the biggest releases of hs-web3. The aim of this release is make library more easy to use and understand. In this release library modules are separated for three parts: ABI operational modules, Contract abstraction and JSON-RPC generic communication interface (Web3 module).
Imports optimization is enabled for scenario:
- if you need TH, just only import
Network.Ethereum.Contract.THmodule - in other cases use
Network.Ethereum.Web3module
For using specified JSON-RPC method make qualified imports, like
:::haskell
import qualified Network.Ethereum.Web3.Eth as Eth
...
runWeb3 Eth.accounts
Added
- Descriptive types for all JSON-RPC method parameters and returned values (#15).
- Widely use of basement:Word256 type for encoding.
- Full list of ethereum abi encoding types:
- bool:
Bool - int256:
IntN - uint256:
UIntN - string:
Text - bytes:
Bytes - bytes32:
BytesN - dynamic array:
[] - static array:
ListN
Changed
- Rewriten encoding engine for best performance, it now based on cereal:Serialize instead of parsec:Parser.
- Renamed encoding type classes and methods:
ABIEncode->ABIPut,ABIDecode->ABIGet. - Encoding related modules moved to Network.Ethereum.ABI.
- Primitive abi encoding types are moved to separated modules in Network.Ethereum.ABI.Prim.
- Contract interation related modules moved to Network.Ethereum.Contract.
- Ethereum node communication modules stay in Network.Ethereum.Web3.
- JSON-RPC tiny client is independent now and can be used separately.
Removed
Eventtype class, currently TH createData.Defaultinstance forFilter e.- Custom setup for live testing (it replaced by travis script).