waddling-errors 0.5.0

Ultra-minimal error code standard for the Waddling ecosystem
Documentation
[package]

name = "waddling-errors"

version.workspace = true

edition.workspace = true

authors.workspace = true

license.workspace = true

repository.workspace = true

description = "Ultra-minimal error code standard for the Waddling ecosystem"

documentation = "https://docs.rs/waddling-errors"

readme = "README.md"

keywords = ["errors", "diagnostics", "error-codes", "waddling"]

categories = ["development-tools"]



[dependencies]

# Hash computation utilities (shared with proc macros)

waddling-errors-hash = { version = "0.5.0", path = "../waddling-errors-hash", optional = true }



# Optional serde for serialization

serde = { version = "1.0", default-features = false, features = ["derive", "alloc"], optional = true }



# Optional serde_json for doc generation

serde_json = { version = "1.0", optional = true }



# Paste for token concatenation (will be removed when proc macros fully replace declarative)

paste = { version = "1.0", optional = true }



# Optional ctor for automatic registration at initialization time

ctor = { version = "0.2", optional = true }



[dev-dependencies]

# For testing

serde_json = "1.0"



[features]

std = []

hash = ["dep:waddling-errors-hash"]

emoji = []

ansi-colors = []

metadata = ["dep:paste"]

doc-gen = ["std", "serde", "serde_json", "metadata"]

serde = ["dep:serde"]

auto-register = ["dep:ctor", "metadata", "std"]



[lib]

name = "waddling_errors"

path = "src/lib.rs"



# Examples with feature requirements

[[example]]

name = "complete_system"

path = "examples/complete_system/main.rs"

required-features = ["doc-gen", "metadata", "hash"]



# Other examples use default features