Asyncio Ethereum Utilities
Project description
asynceth
An asyncio ethereum jsonrpc library
Install
pip install asynceth
Usage Example
import asyncio
from asynceth import JsonRPCClient
from asynceth import Contract
async def example_jsonrpc_request():
client = JsonRPCClient("http://localhost:8485")
balance = await client.eth_getBalance("0x0000000000000000000000000000000000000000")
print(balance)
asyncio.get_event_loop().run_until_complete(example_jsonrpc_request())
greeter_code = """
contract Greeter is Mortal {
/* Define variable greeting of the type string */
string greeting;
/* This runs when the contract is executed */
function Greeter(string _greeting) public {
greeting = _greeting;
}
/* Main function */
function greet() constant returns (string) {
return greeting;
}
}
"""
# NOTE: example requires `solc` to be installed, and private_key must be the private key to an
# account on the ethereum node pointed to by JsonRPCClient that has funds to deploy the contract
private_key = os.urandom(32)
async def example_contract_deployment():
client = JsonRPCClient("http://localhost:8485")
greeter = await Contract(client, greeter_code).set_signer(private_key).deploy("Hello World")
greeting = await greeter.greet()
assert greeting == "Hello World"
asyncio.get_event_loop().run_until_complete(example_contract_deployment())
Running tests
python setup.py test
OR
virtualenv -p python3 env
env/bin/pip install -r requirements.txt -r requirements-testing.txt
env/bin/py.test
History
0.0.1
- Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
asynceth-0.0.12.tar.gz
(14.1 kB
view details)
Built Distribution
asynceth-0.0.12-py3-none-any.whl
(17.2 kB
view details)
File details
Details for the file asynceth-0.0.12.tar.gz
.
File metadata
- Download URL: asynceth-0.0.12.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28c1f90c8702205bbef0ccf2087f2ea3c3446015c1f3489d5e59d395d2010b9b |
|
MD5 | 0cc0d4229250bea2b333475aab88276d |
|
BLAKE2b-256 | 73234176a7874f980a8118ba0be31f1b49cc310dd97e822da72769ae6c8efc7a |
File details
Details for the file asynceth-0.0.12-py3-none-any.whl
.
File metadata
- Download URL: asynceth-0.0.12-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4ce91a3fa5555820dc2ec0c96790f4ef11de50932dcb83f2aa4e2dc645b5415 |
|
MD5 | 1488c05f5b73c1909ec6941b5d6085a0 |
|
BLAKE2b-256 | 5b5f4079f1a52e0a89bb5bee61b529adc79c0c4254e6700e79c5970a72aa93bf |