zed-industries/zed · error
Found {} errors in docs
Error message
Found {} errors in docs What it means
After running all docs preprocessor passes, the accumulated PreprocessorError set is non-empty; the CLI prints the errors and exits reporting 'Found N errors in docs'. It is the aggregate failure signal for invalid keybindings, actions, or frontmatter discovered in the mdbook documentation.
Source
Thrown at crates/docs_preprocessor/src/main.rs:205
let mut input = String::new();
stdin.read_to_string(&mut input)?;
let (_ctx, mut book) = CmdPreprocessor::parse_input(input.as_bytes())?;
let mut errors = HashSet::<PreprocessorError>::new();
handle_frontmatter(&mut book, &mut errors);
template_big_table_of_actions(&mut book);
template_and_validate_keybindings(&mut book, &mut errors);
template_and_validate_actions(&mut book, &mut errors);
template_and_validate_json_snippets(&mut book, &mut errors)?;
if !errors.is_empty() {
const ANSI_RED: &str = "\x1b[31m";
const ANSI_RESET: &str = "\x1b[0m";
for error in &errors {
eprintln!("{ANSI_RED}ERROR{ANSI_RESET}: {}", error);
}
return Err(anyhow::anyhow!("Found {} errors in docs", errors.len()));
}
serde_json::to_writer(io::stdout(), &book)?;
Ok(())
}
fn handle_frontmatter(book: &mut Book, errors: &mut HashSet<PreprocessorError>) {
let frontmatter_regex = Regex::new(r"(?s)^\s*---(.*?)---").unwrap();
for_each_chapter_mut(book, |chapter| {
let new_content = frontmatter_regex.replace(&chapter.content, |caps: ®ex::Captures| {
let frontmatter = caps[1].trim();
let frontmatter = frontmatter.trim_matches(&[' ', '-', '\n']);
let mut metadata = HashMap::<String, String>::default();
for line in frontmatter.lines() {
let Some((name, value)) = line.split_once(':') else {
errors.insert(PreprocessorError::InvalidFrontmatterLine(format!(
"{}: {}",View on GitHub (pinned to f4178619ac)
Solutions
- Inspect the printed error list to see which docs pages/entries are invalid
- Fix the offending keybinding/action definitions or frontmatter and re-run the preprocessor
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/docs_preprocessor/src/main.rs:205 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20).
Data as JSON: /api/errors/478550d12fe27880.
Report an issue: GitHub.