{"record":{"id":"0b827d1cc478c342","repo":"squidfunk/mkdocs-material","slug":"aborted-with-len-errors-configuration-errors","errorCode":null,"errorMessage":"Aborted with {len(errors)} configuration errors","messagePattern":"Aborted with (.+?) configuration errors","errorType":"exception","errorClass":"Abort","httpStatus":null,"severity":"error","filePath":"src/plugins/projects/builder/__init__.py","lineNumber":320,"sourceCode":"            log.removeHandler(handler)\n\n    # Return slug, errors and warnings\n    return project.slug, errors, warnings\n\n# Print errors and warnings resulting from building a project\ndef _print(log: Logger, errors: ConfigErrors, warnings: ConfigWarnings):\n\n    # Print warnings\n    for value, message in warnings:\n        log.warning(f\"Config value '{value}': {message}\")\n\n    # Print errors\n    for value, message in errors:\n        log.error(f\"Config value '{value}': {message}\")\n\n    # Abort if there were errors\n    if errors:\n        raise Abort(f\"Aborted with {len(errors)} configuration errors\")\n","sourceCodeStart":302,"sourceCodeEnd":321,"githubUrl":"https://github.com/squidfunk/mkdocs-material/blob/e2136532f40aed98af1f6497c0cc6a3cff9f759b/src/plugins/projects/builder/__init__.py#L302-L321","documentation":"The projects plugin's builder collects configuration validation errors across projects during build. If any project (or the root config) produced config errors, each is logged via log.error and then the build is aborted by raising MkDocs' Abort exception with a count of the errors. This is a deliberate aggregation point: the individual problems were already printed above as 'Config value ...' error lines.","triggerScenarios":"Running mkdocs build with the projects plugin when one or more project configs fail validation; build() calls _print, which raises Abort(f\"Aborted with {len(errors)} configuration errors\") whenever the errors list is non-empty.","commonSituations":"A nested project's mkdocs.yml has an invalid option, wrong type, or deprecated setting; a typo in a config key; schema changes after upgrading mkdocs or the theme; YAML indentation mistakes in sub-project configs.","solutions":["Read the 'Config value X: ...' error lines logged directly above this message and fix each reported config value","Run mkdocs build with -v / --strict on individual sub-projects to isolate which project's config is invalid","Update mkdocs and mkdocs-material and re-check the config schema for deprecated/renamed options"],"exampleFix":"# before\nsite_name: My Site\ntheme:\n  name: materiell\n# after\nsite_name: My Site\ntheme:\n  name: material","handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try:\n    mkdocs build\nexcept SystemExit:\n    # scan earlier 'Config value X: ...' error lines and fix each value\n    pass","preventionTips":["Validate every sub-project's mkdocs.yml with mkdocs build --strict in CI per project","Keep configs schema-checked (mkdocs>=1.5 config validation) and avoid undocumented keys","After upgrades, run builds locally before CI to catch renamed/deprecated options"],"tags":["configuration","validation","mkdocs","projects-plugin","aborted-build"],"backgroundTag":"config-validation-failed","analyzedSha":"e2136532f40aed98af1f6497c0cc6a3cff9f759b","analyzedAt":"2026-08-29T11:20:04.299Z","schemaVersion":2},"datasetVersion":"2026-08-29T12:17:43.993Z"}