securefmt

![Build Status] ![Latest Version] ![Docs]

Drop-in replacement for the Debug derive macro that hides fields marked as sensitive.

Example

The following code snippet ```rust

[derive(Debug)]

struct SensitiveData { id: u8, #[sensitive] secret: u8 }

fn main() { println!("{:?}", SensitiveData { id: 1, secret: 42 }) } will print: SensitiveData { id: 1, secret: } ```

If the [debug_mode] feature is active, the same code will print: WARN - WARNING: securefmt debug_mode feature is active. Sensitive data may be leaked. It is strongly recommended to disable debug_mode in production releases. SensitiveData { id: 1, secret: 42 }