Skip to main content

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


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)

Uploaded Source

Built Distribution

asynceth-0.0.12-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

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

Hashes for asynceth-0.0.12.tar.gz
Algorithm Hash digest
SHA256 28c1f90c8702205bbef0ccf2087f2ea3c3446015c1f3489d5e59d395d2010b9b
MD5 0cc0d4229250bea2b333475aab88276d
BLAKE2b-256 73234176a7874f980a8118ba0be31f1b49cc310dd97e822da72769ae6c8efc7a

See more details on using hashes here.

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

Hashes for asynceth-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 f4ce91a3fa5555820dc2ec0c96790f4ef11de50932dcb83f2aa4e2dc645b5415
MD5 1488c05f5b73c1909ec6941b5d6085a0
BLAKE2b-256 5b5f4079f1a52e0a89bb5bee61b529adc79c0c4254e6700e79c5970a72aa93bf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page