[package] authors = ["Andre-Philippe Paquet "] categories = [ "database-implementations", "command-line-interface", "wasm", "web-programming", ] description = "Distributed applications framework" edition = "2021" exclude = ["examples", "tools"] keywords = ["networking", "mobile", "webassembly", "storage", "database"] license = "Apache-2.0" name = "exocore" repository = "https://github.com/appaquet/exocore" version = "0.1.26" [features] default = ["apps-sdk", "client", "logger", "web"] # Top level features apps-sdk = ["exocore-apps-sdk", "exocore-store", "protos"] client = ["core-runtime", "transport-p2p", "store-remote", "protos", "anyhow"] logger = ["core-logger"] tests-utils = [ "exocore-core/tests-utils", "exocore-transport/tests-utils", "exocore-store/tests-utils", ] web = ["transport-p2p-web", "protos", "exocore-core/web"] # Underlying crates features chain-directory-chain = ["exocore-chain/directory-chain"] chain-engine = ["exocore-chain/engine"] chain-memory-pending = ["exocore-chain/memory-pending"] core-logger = ["exocore-core/logger"] core-runtime = ["exocore-core/runtime"] discovery-server = ["exocore-discovery/server"] protos = ["exocore-protos"] store-local = ["exocore-store/local"] store-remote = ["exocore-store/remote"] transport-http-server = ["exocore-transport/http-server"] transport-p2p = ["exocore-transport/p2p-full"] transport-p2p-web = ["exocore-transport/p2p-web"] [dependencies] anyhow = { version = "1.0.86", optional = true } exocore-apps-sdk = { version = "0.1.26", path = "./apps/sdk", default-features = false, optional = true } exocore-chain = { version = "0.1.26", path = "./chain", default-features = false, optional = true } exocore-core = { version = "0.1.26", path = "./core", default-features = false, optional = true } exocore-discovery = { version = "0.1.26", path = "./discovery", default-features = false, optional = true } exocore-protos = { version = "0.1.26", path = "./protos", default-features = false, optional = true } exocore-store = { version = "0.1.26", path = "./store", default-features = false, optional = true } exocore-transport = { version = "0.1.26", path = "./transport", default-features = false, optional = true } log = "0.4.22" [dev-dependencies] exocore-core = { version = "0.1.26", path = "./core", features = [ "tests-utils", ] } [workspace] exclude = ["3rd"] members = [ "core", "protos", "transport", "store", "chain", "apps/host", "apps/macros", "apps/sdk", "apps/example", "discovery", "exo", "clients/web", "clients/android", "clients/c", "3rd/if-watch", ] [profile.production] inherits = "release" codegen-units = 1 lto = "thin" [profile.release] debug = true [patch.crates-io] # Unmaintained... Will have to get rid of libp2p anyway if-watch = { path = "./3rd/if-watch" }