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.3.0-cp311-none-win_amd64.whl (110.6 kB view details)

Uploaded CPython 3.11 Windows x86-64

rusty_rlp-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl (205.4 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.34+ x86-64

rusty_rlp-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl (181.6 kB view details)

Uploaded CPython 3.11 macOS 10.12+ x86-64

rusty_rlp-0.3.0-cp310-none-win_amd64.whl (110.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

rusty_rlp-0.3.0-cp310-cp310-manylinux_2_34_x86_64.whl (205.4 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.34+ x86-64

rusty_rlp-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl (181.6 kB view details)

Uploaded CPython 3.10 macOS 10.12+ x86-64

rusty_rlp-0.3.0-cp39-none-win_amd64.whl (110.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

rusty_rlp-0.3.0-cp39-cp39-manylinux_2_34_x86_64.whl (205.4 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.34+ x86-64

rusty_rlp-0.3.0-cp39-cp39-macosx_10_12_x86_64.whl (181.6 kB view details)

Uploaded CPython 3.9 macOS 10.12+ x86-64

rusty_rlp-0.3.0-cp38-none-win_amd64.whl (110.6 kB view details)

Uploaded CPython 3.8 Windows x86-64

rusty_rlp-0.3.0-cp38-cp38-manylinux_2_34_x86_64.whl (205.4 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.34+ x86-64

rusty_rlp-0.3.0-cp38-cp38-macosx_10_12_x86_64.whl (181.6 kB view details)

Uploaded CPython 3.8 macOS 10.12+ x86-64

File details

Details for the file rusty_rlp-0.3.0-cp311-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 00d058365934db5d2e98d335be72cff4d2a89375304c4f6e6d86f3932863600d
MD5 54e0066e59dbabacb19376138364dd50
BLAKE2b-256 d00e847e4d4618a5c027a6c9bf12fa29080ae1140278af229be97d5506a397f3

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 c34336f37c7ad26a006a1a4a8c3886a3b571047e65e48a02355cc4b0aa727933
MD5 a86cea43f4f301230a5cc9abaaca1433
BLAKE2b-256 91e2bcaf5f68c79dda091cd0dbcfd9af2a81d3228f822e2dca0660b14ff6995b

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f4c7c1ee957b09c6160ff93f37f481086f647a310ddcb937d03b1195e5c60c34
MD5 df6d29345d3c88ee29283c9c91350c0e
BLAKE2b-256 b5dceb89d964f4e7f022730f0659579d077666df40fa7da705ffdb925519580a

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp310-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 0a9ab175739a799a7a9048ee3f3a3394bec4e231dc13d2b01e9bc1588fe121f6
MD5 df64fbfa4890c6c7f5c5f2f1544a85b5
BLAKE2b-256 48e9f60a15fcd5e057475bb3d7cab9338e8ef3c056be65fce0bc29b8fcc1d70c

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1b7d272b626309bb181c755a0ee9ee33a94a8b129497b2580c230368a6218dcc
MD5 fc439386e5495e9477ee2c128b1a8445
BLAKE2b-256 24b2bddcdff8533351ba3a1cf56a1493c188e5c07dcfdbaf8ad2db9841b2e28f

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8538b04abf97e54f2a46e5037a92a15a366ff3f2acc02b86b1f90a45fb79ad42
MD5 c5bd5d53cb9bd14c66f577f36f4913c1
BLAKE2b-256 e9257e9cf11960f16f758a14f7f1621cb4638fce9b2c65fbaf5e3e830cd69b7d

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp39-none-win_amd64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 e766b6c56e08a04217960f1c93b98aff55bc0b987f4077367e2f41641ac5043f
MD5 2e4644c3b64d3c30587c0128b8f7efde
BLAKE2b-256 e5eaa3f284314f038edbe82e5d0b37b0086cf6e07516420896cade92f4be0616

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 6e261e7ffa59ed6aadb178e19819c75d78fcf036f5fd0d1eac0aad259b8bf363
MD5 327257fc64102073dbd7c50f846728fc
BLAKE2b-256 983d7aa5611e644479989b53f3d77468ab2b75db0cc3c841a1e47caae969b2df

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a81eff4259996077ea166c0d226f074b9b91d8ef94a1ec1eb7af2c822244a59b
MD5 e6af4b6fa9500e6ce077d458d35a98fa
BLAKE2b-256 df68d042af2fef8cb93b85d0f01701c6256da6c83ca095be147eac5a45abc70f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp38-none-win_amd64.whl
Algorithm Hash digest
SHA256 ef7e75358127d7417fc55c7141108a6c570a2012cf7a485548b86dccf668753a
MD5 932cdda35e4322ae126ec5d97cc20162
BLAKE2b-256 89af9794f157769467dd6e44d96bc25ba1f703ad390537c68af83316313ec36f

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp38-cp38-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp38-cp38-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 7917d7a1aa4067d6a68e3292b7e690f04933ea08e057d08addf222fe8a26b467
MD5 9d059833dbfffcc9c5c5ea501c432cb4
BLAKE2b-256 a2aa7e929dad45fe5498de0c093711445cba5bb5f6b322b2b7a4484355de5460

See more details on using hashes here.

File details

Details for the file rusty_rlp-0.3.0-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for rusty_rlp-0.3.0-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 662c3a9c135acc75884282bd398858fbcbe4b9d776374a6d2ed619bff9903bb6
MD5 5fb46213d8346d11d0b2d31698aeb917
BLAKE2b-256 4ed9e9586f84a7ecf83e8b4d1bb876a9b85be111296e38b3a4f41b63aacbb589

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