Cargo Features

[dependencies]
ckb-std = { version = "0.15.3", default-features = false, features = ["calc-hash", "allocator", "simulator", "dlopen-c", "build-with-clang", "libc", "ckb2023"] }
default = allocator, calc-hash, ckb-types, libc

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

calc-hash default

Enables calc-hash of ckb-gen-types ^0.112

ckb-gen-types:

Enable the calc-hash extension for CKB contract development in no-std env

allocator default = buddy-alloc
simulator = ckb-x64-simulator
dlopen-c = libc

Affects ckb-std::dynamic_loading_c_impl

build-with-clang
libc default dlopen-c?
ckb2023

Affects ckb_constants::SYS_SPAWN, ckb_constants::SYS_GET_MEMORY_LIMIT, ckb_constants::SYS_SET_CONTENT, ckb_constants::SYS_LOAD_BLOCK_EXTENSION, ckb_constants::SYS_CURRENT_MEMORY, high_level::spawn_cell, native::SpawnArgs, native::spawn, native::get_memory_limit, native::set_content, native::current_memory, native::load_block_extension

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

ckb-types default calc-hash

Enables ckb-gen-types ^0.112

Affects ckb-std::high_level, ckb-std::dynamic_loading

buddy-alloc allocator
ckb-x64-simulator simulator?