1.6 KiB
1.6 KiB
To begin fuzzing, run: cargo fuzz run <fuzz target name>
The source code for a fuzz target by default lives in fuzz/fuzz_targets/<fuzz target name>.rs.
Each fuzz target is a Rust program that is given random data and tests a crate (in this case, json-archive). Use cargo fuzz list to view the list of all existing fuzz targets:
Documentation Style Guidelines
When writing command documentation, follow the Dutch engineer approach:
Structure and Content
- Lead with what the command actually does (one clear sentence)
- Show real examples using actual demo files from the project
- Include both human-readable and machine-readable output modes
- Include practical use cases with actual bash/jq examples for scripting
- Be upfront about performance characteristics and limitations
- Document known bugs/issues directly instead of hiding them
Tone and Communication
- Be direct and practical, not promotional
- Don't apologize for limitations. Just state them clearly so engineers can make informed decisions
- Use real scenarios, not toy examples
- Focus on what engineers actually need to know to use the tool effectively
- Include error cases and what they mean
- Provide concrete examples that can be copy-pasted and run
Example sections to include
- Purpose: One sentence explaining what it does
- Basic usage: Simple examples first
- Output modes: When to use human vs JSON output
- Practical use cases: Real scenarios with working code
- Performance characteristics: Memory/CPU usage expectations
- Error cases: Common failures and what they mean
- Known issues: Bugs or limitations stated directly