Cargo Features

exocore = { version = "0.1.25", default-features = false, features = ["apps-sdk", "client", "logger", "tests-utils", "web", "chain-directory-chain", "chain-engine", "chain-memory-pending", "core-logger", "core-runtime", "discovery-server", "protos", "store-local", "store-remote", "transport-http-server", "transport-p2p", "transport-p2p-web"] }
default = apps-sdk, client, logger, web

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

apps-sdk default = exocore-apps-sdk, exocore-store, protos

Top level features

client default = anyhow, core-runtime, protos, store-remote, transport-p2p

Affects exocore::client

logger default = core-logger

Enables tests-utils of exocore-core, exocore-store, and exocore-transport

web default = protos, transport-p2p-web

Enables web of exocore-core


Underlying crates features

Enables directory-chain of exocore-chain


Enables engine of exocore-chain


Enables memory-pending of exocore-chain

core-logger logger

Enables logger of exocore-core

core-runtime client

Enables runtime of exocore-core


Enables server of exocore-discovery

protos apps-sdk client web = exocore-protos

Enables local of exocore-store

store-remote client

Enables remote of exocore-store


Enables http-server of exocore-transport

transport-p2p client

Enables p2p-full of exocore-transport

transport-p2p-web web

Enables p2p-web of exocore-transport

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features.

anyhow client
exocore-apps-sdk apps-sdk

Affects exocore::apps

exocore-chain chain-directory-chain? chain-engine? chain-memory-pending?
exocore-core core-logger? core-runtime? tests-utils? web
exocore-discovery discovery-server?
exocore-protos protos?
exocore-store apps-sdk store-local? store-remote? tests-utils?
exocore-transport tests-utils? transport-http-server? transport-p2p? transport-p2p-web?