Skip to main content

Python RLP serialization/deserialization based on a rapid fast Rust implementation.

Project description

Rusty-RLP

Rapid fast RLP serialization / deserialization for Python.

As the name suggest, rusty-rlp is written in Rust and based on the battle-tested, MIT-licensed rlp implementation that is also used by OpenEthereum.

Usage

from rusty_rlp import decode_raw, encode_raw

encoded = encode_raw(b'some_string')
decoded = decode_raw(encoded)

Running the tests

The library exposes a pure Python API and all tests are implemented in python_tests.py

Run the tests:

make test

Note: There do exists some tests implemented in Rust that can be run with cargo tests but those do not test this library but the underlying rlp library instead. They exist merely to prove some assumptions about the underlying library.

Benchmarks

We provide some benchmarks against pyrlp.

Encoding (msec/loop) Decoding (msec/loop)
PyRLP 0.016 0.014
rusty-rlp 0.00173 (~9x) 0.00595 (~2.35x)

Running the benchmarks

make benchmark

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

rusty_rlp-0.1.12-cp38-none-win_amd64.whl (106.6 kB view details)

Uploaded CPython 3.8 Windows x86-64

rusty_rlp-0.1.12-cp38-cp38-manylinux1_x86_64.whl (143.2 kB view details)

Uploaded CPython 3.8

rusty_rlp-0.1.12-cp38-cp38-macosx_10_7_x86_64.whl (117.0 kB view details)

Uploaded CPython 3.8 macOS 10.7+ x86-64

rusty_rlp-0.1.12-cp37-none-win_amd64.whl (106.6 kB view details)

Uploaded CPython 3.7 Windows x86-64

rusty_rlp-0.1.12-cp37-cp37m-manylinux1_x86_64.whl (143.2 kB view details)

Uploaded CPython 3.7m

rusty_rlp-0.1.12-cp37-cp37m-macosx_10_7_x86_64.whl (117.0 kB view details)

Uploaded CPython 3.7m macOS 10.7+ x86-64

rusty_rlp-0.1.12-cp36-none-win_amd64.whl (106.9 kB view details)

Uploaded CPython 3.6 Windows x86-64

rusty_rlp-0.1.12-cp36-cp36m-manylinux1_x86_64.whl (143.4 kB view details)

Uploaded CPython 3.6m

rusty_rlp-0.1.12-cp36-cp36m-macosx_10_7_x86_64.whl (117.2 kB view details)

Uploaded CPython 3.6m macOS 10.7+ x86-64

rusty_rlp-0.1.12-cp35-none-win_amd64.whl (106.6 kB view details)

Uploaded CPython 3.5 Windows x86-64

rusty_rlp-0.1.12-cp35-cp35m-manylinux1_x86_64.whl (143.0 kB view details)

Uploaded CPython 3.5m

rusty_rlp-0.1.12-cp35-cp35m-macosx_10_7_x86_64.whl (116.8 kB view details)

Uploaded CPython 3.5m macOS 10.7+ x86-64

File details

Details for the file rusty_rlp-0.1.12-cp38-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp38-none-win_amd64.whl
Algorithm Hash digest
SHA256 63e791ce2441e943f7820d4782b542e978003768c34c7c2b79c207bb5182a4a8
MD5 2b2751c868a7eb70a66165ab113716ac
BLAKE2b-256 a38f5ca131362353a71c5c647db2248f8c388da42c1b7e2ae32034f2f4ea1c4c

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp38-cp38-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 87b869192cee00cc7f86baa5d41c19774d737e843a4d07d43b7f8546e52c7b89
MD5 3a404873b8baa1aaeabe1dc9399f4ebf
BLAKE2b-256 f61b8ec3733dc358d52b991416589b2cae682f516fa98b266a28aba137fef23d

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp38-cp38-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 88becb303b0c2a5eee38f5d1e762462c7788bf1e2fcd564b7fe8d5d42aea7904
MD5 b72f602b74464887c7c2e24330766bc3
BLAKE2b-256 d403cf8e7b35f93ec68b3b72d65240ada0630a57e5359556c06160339da7317a

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp37-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp37-none-win_amd64.whl
Algorithm Hash digest
SHA256 511c22483a70cd11dd4a06da75a0e3d3ec501f924a295a473a29f5f3a4745da5
MD5 b705a8a8db7dd746d43a71a01f418884
BLAKE2b-256 764712b166c1e6df7289a1ed4106c8b65bc705bb4e71e4e3241249aa3894e373

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 96fe632ab71d39b190fc8b5ce12fc170bccb6c347c5e58bb4eb0bdb9446631db
MD5 753f2ee7a4716cd2badea25b1a649a08
BLAKE2b-256 2f40703e7be8111fd2eede60b210b1ab10519cc6b2d08d40e0918abcdc5c7236

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp37-cp37m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 8bce0d53018be6ccf88568d97afa3827c3f88e1e8e2375b9972f6af003ef2da5
MD5 5f400de83e9ba6019b4d83f45e149960
BLAKE2b-256 62dfc42c09772eaf956da0ea413bf7f6474a2fe0b9501a5696125f23e815d852

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp36-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp36-none-win_amd64.whl
Algorithm Hash digest
SHA256 4acbf518be3a83230cf5a98032669025303470aebf18057ad203f9500c2a5112
MD5 cee9d362880190ab181a99d47c97b531
BLAKE2b-256 6983fb1de3755a97183b85e24db6b7935919e76b2890d337513e0a9f02abd689

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 48764f3090bc734b58d11d40f6f5b51df15d3ddce7d7d0d7c49598a38214cd34
MD5 6f021ab12acd5874a45122bb265724c2
BLAKE2b-256 8ded77d67b2b3497a45873ac7e22b10ae1bd84d0a9dfd7b952cf0d7a3e6351b7

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp36-cp36m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp36-cp36m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 4013f28bf7601d7f77db6d77413e398d29d6e9a4fd3b4d0557c9fb131c8d6a1f
MD5 ada46a76add8a0abb9f7b80d66df8414
BLAKE2b-256 8bbe9463dd98d8f42322f0c411dabf1685ef9018e8387c865de4d4d1840572a7

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp35-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp35-none-win_amd64.whl
Algorithm Hash digest
SHA256 107b4bcc4071ddbd1a8bd915654101d112b56fb4f5e53456b6d55cd317125449
MD5 ec52f11fc5597cc2b39a886740379337
BLAKE2b-256 e099a0f8e38d5ed91632a1374c60fc7b122eb227960f33efcd50972cfe149781

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 4e4220c4bf04a1b4a8202b0b254783f3dc35663188506a3f700b0622874ebcf9
MD5 e22a1ccdd79c7e2471b61365972ef1d0
BLAKE2b-256 a8ddeb1b9a35c833b7dca8c5bc7fefe507be5ac3f839deca85d7e7e4a371e817

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.1.12-cp35-cp35m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.1.12-cp35-cp35m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 f73ca25df1e574a4ea5dc376653376730eb40872e3cda488cd2b5d8dd4dde451
MD5 7466ff89f891c6b14581e26c7487b1d6
BLAKE2b-256 3097078ade6ec502594062051de1ce60aebdf8a4060d2d57f2431fe12738e89c

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