Cargo Features

[dependencies]
revm-precompile = { version = "6.0.0", default-features = false, features = ["std", "asm-keccak", "optimism", "optimism-default-handler", "negate-optimism-default-handler", "c-kzg", "portable", "secp256k1"] }
default = c-kzg, portable, secp256k1, std

These default features are set whenever revm-precompile is added without default-features = false somewhere in the dependency tree.

std default

Enables std of optional c-kzg

Optional KZG point evaluation precompile

and std of k256, once_cell, revm-primitives, ripemd, sha2, and optional secp256k1 ^0.28.2

k256:

ecRecover precompile

asm-keccak

Enables asm-keccak of revm-primitives

optimism optimism-default-handler?

Enables optimism of revm-primitives

optimism-default-handler = optimism

Optimism default handler enabled Optimism handler register by default in EvmBuilder.

Enables optimism-default-handler of revm-primitives

negate-optimism-default-handler

Enables negate-optimism-default-handler of revm-primitives

c-kzg default

These libraries may not work on all no_std platforms as they depend on C.

Enables the KZG point evaluation precompile.

Enables c-kzg, c-kzg of revm-primitives

Affects revm-precompile::kzg_point_evaluation

portable default

Enables portable of optional c-kzg and revm-primitives

secp256k1 default

Use secp256k1 as a faster alternative to k256. The problem that secp256k1 has is it fails to build for wasm target on Windows and Mac as it is c lib. In Linux it passes. If you don't require to build wasm on win/mac, it is safe to use it and it is enabled by default.

Enables secp256k1 ^0.28.2