The serve-mode watcher globs never matched quartz.config.yaml or
quartz.config.default.yaml, so config edits (theme colors, plugin
flags, footer links) silently required a server restart. This was a
regression from v4, where quartz.config.ts matched the **/*.ts glob.
Added repository, enabled, and required fields to the frontmatter of
all 44 plugin documentation files. Updated Plugins.base to include
these columns, matching the information previously in the manual tables.
Also filtered out internal plugins (Assets, Static, ComponentResources,
NotFoundPage) from the base query.
Plugin listings in plugins/index.md and getting-started/whats-new.md
are now generated from .base files that query plugin docs by their tags.
This prevents the tables from going out of sync when plugins are added
or updated. Added new-in-v5 frontmatter property to 8 plugin docs for
the what's-new page filter.
Covers the plugin ecosystem, YAML configuration, Obsidian compatibility,
page type system, layout system, performance, CLI, i18n, new plugins,
and plugin development changes. Also updates home page clone command
for v5 as default branch.
loadQuartzConfig() internally calls loadQuartzLayout() to build the
PageTypeDispatcher, which instantiates components. Plugin option overrides
must be registered before this happens. Updated quartz.ts and all doc
snippets that show the ExternalPlugin override pattern to place calls
before loadQuartzConfig(). Also updated OxHugo and Roam docs from stale
v4 plugins pattern to v5 override pattern.
layout.footer (and other optional layout slots) can be undefined
when disabled. Adding undefined to the seen Set caused a crash in
componentResources.ts when destructuring component properties.