#evm #compression #ethereum #data #compressor #abi #encoded

calldata-compressor

A Compression algorithm for EVM abi.encoded data, especially for EVM calldata

8 releases

0.2.3 Apr 1, 2024
0.2.2 Feb 29, 2024
0.2.1 Jan 22, 2024
0.1.4 Jan 22, 2024
0.1.2 Dec 13, 2023

#2260 in Magic Beans

Download history 7/week @ 2024-01-13 40/week @ 2024-01-20 6/week @ 2024-02-17 116/week @ 2024-02-24 22/week @ 2024-03-02 23/week @ 2024-03-09 3/week @ 2024-03-16 155/week @ 2024-03-30 13/week @ 2024-04-06

175 downloads per month

Apache-2.0

38KB
721 lines

calldata-compressor-rs

A Compression algorithm for EVM abi.encoded data, especially for EVM calldata.

This project is a Rust implementation of the Calldata Compressor, based on 1inch/calldata-compressor

Features

Test & Benchmark

Test

cargo nextest run -r

Benchmarks

# valgrind check
cargo valgrind test
valgrind --tool=dhat ./target/debug/deps/calldata_compressor-92413ab13fccdd8f
# generate flamegraph
cargo flamegraph --unit-test -- test_compress_big

Dependencies

~27–45MB
~825K SLoC