Cargo Features

[dependencies]
syd = { version = "3.23.17", default-features = false, features = ["log", "mimalloc", "oci", "uring", "utils", "perf"] }
default = mimalloc, utils

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

log

Enables debug logging.
Include SYD_LOG=debug,trace

Affects proc::proc_cmdline

mimalloc default = mimalloc2-rust

Enables mimalloc with the secure option.
Adds ~2% overhead but makes your heap secure.

oci = clap, libcgroups, libcontainer, liboci-cli, oci-spec, tabwriter, tracing, tracing-subscriber

Build OCI runtime helper "syd-oci"

Required by the syd-oci binary

uring = io-uring

Enables io-uring based integration tests.
This is not used by the main Syd binary.

utils default

Build helper utilities.
No reason to disable this unless you want fast build cycles.

Required by syd-cat, syd-cpu, syd-env, syd-err, syd-fork, syd-hex, syd-key, syd-ldd, syd-load, syd-lock, syd-log, syd-ls, syd-mdwe, syd-mem, syd-open, syd-path, syd-poc, syd-read, syd-run, syd-sha, syd-size, syd-stat, syd-sys, syd-tick and syd-tty binaries

perf

Makes profiling practical by disabling some hardenings.
SAFETY: Do not enable this unless you're profiling Syd.

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.

mimalloc2-rust mimalloc
io-uring uring?
clap oci?

Enables clap

syd-oci deps.

libcgroups oci?
libcontainer oci?
liboci-cli oci?
oci-spec oci?

Enables oci-spec =0.6.5

tabwriter oci?
tracing oci?
tracing-subscriber oci?