Cargo Features

[dependencies]
wmark = { version = "0.1.4", default-features = false, features = ["std", "core", "future", "smol", "async-std", "tokio", "wasm", "tracing"] }
default = std

The std feature is set by default whenever wmark is added without default-features = false somewhere in the dependency tree.

std default = crossbeam-channel, parking_lot, thiserror, wg

Enables crossbeam-utils, optional async-channel, and optional futures-channel, use_std of scopeguard

core = event-listener

Enables allocator-api2 of hashbrown ^0.14 and alloc of crossbeam-queue

crossbeam-queue:

Enable to use APIs that require alloc. This is enabled by default and also enabled if the std feature is enabled.

NOTE: Disabling both std and alloc features is not supported yet.

future async-std? smol? = async-channel, futures-channel, futures-util

Enables event-listener

Affects watermark::future

smol = future

Enables smol of agnostic-lite

async-std = future

Enables async-std of agnostic-lite

tokio = futures-util

Enables tokio of agnostic-lite

wasm = futures-util

Enables wasm of agnostic-lite

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.

agnostic-lite async-std? smol? tokio? wasm?
thiserror std

Enables thiserror ^1

crossbeam-queue core?
hashbrown core?

Enables hashbrown ^0.14

crossbeam-channel std
parking_lot std
wg std
async-channel future?
event-listener core? future?
futures-util future? tokio? wasm?
futures-channel future?
tracing implicit feature

Enables tracing

tracing:

Application-level tracing for Rust