Skip to main content

Ethereum RPC client library for Python asyncio (PEP 3156)

Project description

Latest version released on PyPi Travis CI status Test coverage Documentation status

aioethereum

Ethereum RPC client library for the PEP 3156 Python event loop.

Features

ujson support

Yes

uvloop support

Yes

High-level APIs

Yes

HTTP support

Yes

Unix domain socket (IPC) support

Yes

SSL/TLS support

Yes

Tested CPython versions

3.4, 3.5, 3.6

Tested Geth versions

1.7.0

Implemented RPC apis

admin, db, debug, eth, miner, net, personal, shh, txpool, web3

Documentation

http://aioethereum.readthedocs.io/

Usage examples

Simple high-level interface (through HTTP):

import asyncio
import aioethereum

loop = asyncio.get_event_loop()

async def go():
    client = await aioethereum.create_ethereum_client(
        'http://localhost:8545', loop=loop)
    val = await client.web3_clientVersion()
    print(val)

loop.run_until_complete(go())
# will print like 'Geth/v1.7.0-stable-6c6c7b2a/darwin-amd64/go1.9'

or via IPC

import asyncio
import aioethereum

loop = asyncio.get_event_loop()

async def go():
    client = await aioethereum.create_ethereum_client(
        'ipc://<path_to_unix_socket>', loop=loop)
    val = await client.web3_clientVersion()
    print(val)

loop.run_until_complete(go())
# will print like 'Geth/v1.7.0-stable-6c6c7b2a/darwin-amd64/go1.9'

Requirements

License

The aioethereum is offered under MIT license.

0.2.2 (2018-04-10)

0.2.1 (2017-10-08)

  • Add admin and debug management apis;

  • Add new tests;

  • Add uvloop support (python 3.5+ required);

0.2.0 (2017-10-05)

  • Add more docstrings to the code;

  • Add tests for all rpc methods;

  • Add admin and debug;

  • Fix error for unixsocket retring;

  • Fix unixsocket invalid loop for Python 3.4;

  • BaseAsyncIOClient._rpc marked as deprecated and will be removed in 0.3.0;

0.1.1 (2017-10-01)

  • Add sphinx docs;

0.1.0 (2017-09-30)

  • Initial release;

  • Ethereum client implemented;

  • WIP on RPC management.

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

aioethereum-0.2.2.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

aioethereum-0.2.2-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file aioethereum-0.2.2.tar.gz.

File metadata

  • Download URL: aioethereum-0.2.2.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aioethereum-0.2.2.tar.gz
Algorithm Hash digest
SHA256 5d673b5e0426fede5d03be950eeccc71b341e8801f300d70599c75d474720356
MD5 ce387f47c58f8fce15a40a98cfd5e41b
BLAKE2b-256 b87af3d763b3604284465c3a4f5ca51855b9059b1c02ac2bc398db83463f182a

See more details on using hashes here.

File details

Details for the file aioethereum-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for aioethereum-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d5d434e0f07fe408e7c7a704dd579a2082ff913310a660af6e023225a1d839f4
MD5 274e693ad0b90f2fbb3a183dc08f0b11
BLAKE2b-256 917fbaccd344674d2ea65c3a1759182e698aa08bb231726cf66f0aeeb2beadbe

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