Cargo Features

[dependencies]
holochain = { version = "0.3.0-beta-dev.48", default-features = false, features = ["tx2", "tx5", "metrics_influxive", "test_utils", "slow_tests", "glacial_tests", "build_wasms", "only_check_wasms", "sqlite-encrypted", "sqlite", "wasmer_debug_memory", "chc", "dpki", "sweetest"] }
default = metrics_influxive, sqlite-encrypted, tx2, tx5

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

tx2 default

Enables tx2 of kitsune_p2p

tx5 default = tx5-go-pion-turn, tx5-signal-srv

Enables tx5 of kitsune_p2p

Affects sweet_conductor_config_rendezvous::SweetRendezvous.sig_addr

metrics_influxive default

Use the "Influxive" opentelemetry metrics binding to write metrics to an InfluxDB time series database.

Enables influxive of holochain_metrics

test_utils sweetest? = arbitrary, contrafact, diff, holochain_test_wasm_common, kitsune_p2p_bootstrap, matches, unwrap_to

Exposes additional functionality only needed for integration tests.
This feature should be turned off for production builds.

Enables mock_network of holochain_p2p, fixt of kitsune_p2p_bin_data, fixt and test_utils of kitsune_p2p_types, test_utils of ghost_actor ^0.3.0-alpha.6, hdk, and holochain_cascade, test_utils of holochain_sqlite, holochain_state, holochain_types, holochain_zome_types, and kitsune_p2p

Affects holochain::fixt

slow_tests

Wasm ribosome tests take > 60 seconds - let's only run them in CI

glacial_tests

What's slower than slow? We may choose to not run these tests in CI to speed things up.

build_wasms

Includes the wasm build script, which we don't need when not building wasms

Enables build of holochain_wasm_test_utils

only_check_wasms

Enables only_check of holochain_wasm_test_utils

sqlite-encrypted default

Enables at-rest encryption of the SQLite database.
Incompatible with "sqlite".

Enables bundled-sqlcipher-vendored-openssl of rusqlite ^0.29, sqlite-encrypted of holo_hash, holochain_cascade, holochain_conductor_api, holochain_keystore, holochain_p2p, holochain_sqlite, holochain_state, holochain_types, holochain_zome_types, kitsune_p2p, kitsune_p2p_block, kitsune_p2p_bootstrap, and kitsune_p2p_types

sqlite sweetest?

Compile SQLite from source rather than depending on a library.
Incompatible with "sqlite-encrypted"

Enables bundled of rusqlite ^0.29, sqlite of holo_hash, holochain_cascade, holochain_conductor_api, holochain_keystore, holochain_p2p, holochain_sqlite, holochain_state, holochain_types, holochain_zome_types, kitsune_p2p, kitsune_p2p_block, kitsune_p2p_bootstrap, and kitsune_p2p_types

wasmer_debug_memory

Extremely verbose wasm memory read/write logging

Enables debug_memory of holochain_wasmer_host =0.0.92

chc = bytes, reqwest

Enable chain head coordination

Enables chc of holochain_conductor_api and holochain_types

Affects conductor::chc

dpki

Transitional feature flag for code that is only ready when DPKI integration lands.

sweetest = sqlite, test_utils

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.

reminder - do not use workspace deps

contrafact test_utils?
diff test_utils?
hdk test_utils?
matches test_utils?
holochain_test_wasm_common test_utils?
kitsune_p2p_bootstrap sqlite? sqlite-encrypted test_utils?
unwrap_to test_utils?
tx5-go-pion-turn tx5
tx5-signal-srv tx5
bytes chc?

Enables bytes

chc deps

reqwest chc?
arbitrary test_utils?

Enables arbitrary

Dependencies for test_utils