Cargo Features

[dependencies]
nut-shell = { version = "0.1.2", default-features = false, features = ["authentication", "completion", "history", "async", "credgen"] }
default = completion, history

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

authentication credgen?

Authentication feature - adds login/logout, password hashing, access control

Enables sha2 ^0.10 and subtle

sha2:

Optional dependencies for specific features

Affects auth::password, auth::providers, auth::User.password_hash, auth::User.salt, auth::CredentialProvider, auth::PasswordHasher

Required by the nut-shell-credgen binary

completion default

Tab completion feature - enables command/path completion

Affects completion::suggest_completions

history default

Command history feature - enables up/down arrow navigation

Affects response::Response.exclude_from_history

async

Async command support - enables async command execution

Affects handler::CommandHandler.execute_async

credgen = authentication

Credential generator binary (std-only, requires authentication)

Enables getrandom, serde, and toml

serde:

Dependencies for credgen binary (std-only, not used in no_std library)

Required by the nut-shell-credgen binary